1*072a4ba8SAndrew TurnerMIT OR Apache-2.0 WITH LLVM-exception 2*072a4ba8SAndrew Turner===================================== 331914882SAlex Richardson 4*072a4ba8SAndrew Turner 5*072a4ba8SAndrew TurnerMIT License 6*072a4ba8SAndrew Turner----------- 7*072a4ba8SAndrew Turner 8*072a4ba8SAndrew TurnerCopyright (c) 1999-2022, Arm Limited. 931914882SAlex Richardson 1031914882SAlex RichardsonPermission is hereby granted, free of charge, to any person obtaining a copy 1131914882SAlex Richardsonof this software and associated documentation files (the "Software"), to deal 1231914882SAlex Richardsonin the Software without restriction, including without limitation the rights 1331914882SAlex Richardsonto use, copy, modify, merge, publish, distribute, sublicense, and/or sell 1431914882SAlex Richardsoncopies of the Software, and to permit persons to whom the Software is 1531914882SAlex Richardsonfurnished to do so, subject to the following conditions: 1631914882SAlex Richardson 1731914882SAlex RichardsonThe above copyright notice and this permission notice shall be included in all 1831914882SAlex Richardsoncopies or substantial portions of the Software. 1931914882SAlex Richardson 2031914882SAlex RichardsonTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 2131914882SAlex RichardsonIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 2231914882SAlex RichardsonFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 2331914882SAlex RichardsonAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 2431914882SAlex RichardsonLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 2531914882SAlex RichardsonOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 2631914882SAlex RichardsonSOFTWARE. 27*072a4ba8SAndrew Turner 28*072a4ba8SAndrew Turner 29*072a4ba8SAndrew TurnerApache-2.0 WITH LLVM-exception 30*072a4ba8SAndrew Turner------------------------------ 31*072a4ba8SAndrew Turner 32*072a4ba8SAndrew Turner Apache License 33*072a4ba8SAndrew Turner Version 2.0, January 2004 34*072a4ba8SAndrew Turner http://www.apache.org/licenses/ 35*072a4ba8SAndrew Turner 36*072a4ba8SAndrew Turner TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 37*072a4ba8SAndrew Turner 38*072a4ba8SAndrew Turner 1. Definitions. 39*072a4ba8SAndrew Turner 40*072a4ba8SAndrew Turner "License" shall mean the terms and conditions for use, reproduction, 41*072a4ba8SAndrew Turner and distribution as defined by Sections 1 through 9 of this document. 42*072a4ba8SAndrew Turner 43*072a4ba8SAndrew Turner "Licensor" shall mean the copyright owner or entity authorized by 44*072a4ba8SAndrew Turner the copyright owner that is granting the License. 45*072a4ba8SAndrew Turner 46*072a4ba8SAndrew Turner "Legal Entity" shall mean the union of the acting entity and all 47*072a4ba8SAndrew Turner other entities that control, are controlled by, or are under common 48*072a4ba8SAndrew Turner control with that entity. For the purposes of this definition, 49*072a4ba8SAndrew Turner "control" means (i) the power, direct or indirect, to cause the 50*072a4ba8SAndrew Turner direction or management of such entity, whether by contract or 51*072a4ba8SAndrew Turner otherwise, or (ii) ownership of fifty percent (50%) or more of the 52*072a4ba8SAndrew Turner outstanding shares, or (iii) beneficial ownership of such entity. 53*072a4ba8SAndrew Turner 54*072a4ba8SAndrew Turner "You" (or "Your") shall mean an individual or Legal Entity 55*072a4ba8SAndrew Turner exercising permissions granted by this License. 56*072a4ba8SAndrew Turner 57*072a4ba8SAndrew Turner "Source" form shall mean the preferred form for making modifications, 58*072a4ba8SAndrew Turner including but not limited to software source code, documentation 59*072a4ba8SAndrew Turner source, and configuration files. 60*072a4ba8SAndrew Turner 61*072a4ba8SAndrew Turner "Object" form shall mean any form resulting from mechanical 62*072a4ba8SAndrew Turner transformation or translation of a Source form, including but 63*072a4ba8SAndrew Turner not limited to compiled object code, generated documentation, 64*072a4ba8SAndrew Turner and conversions to other media types. 65*072a4ba8SAndrew Turner 66*072a4ba8SAndrew Turner "Work" shall mean the work of authorship, whether in Source or 67*072a4ba8SAndrew Turner Object form, made available under the License, as indicated by a 68*072a4ba8SAndrew Turner copyright notice that is included in or attached to the work 69*072a4ba8SAndrew Turner (an example is provided in the Appendix below). 70*072a4ba8SAndrew Turner 71*072a4ba8SAndrew Turner "Derivative Works" shall mean any work, whether in Source or Object 72*072a4ba8SAndrew Turner form, that is based on (or derived from) the Work and for which the 73*072a4ba8SAndrew Turner editorial revisions, annotations, elaborations, or other modifications 74*072a4ba8SAndrew Turner represent, as a whole, an original work of authorship. For the purposes 75*072a4ba8SAndrew Turner of this License, Derivative Works shall not include works that remain 76*072a4ba8SAndrew Turner separable from, or merely link (or bind by name) to the interfaces of, 77*072a4ba8SAndrew Turner the Work and Derivative Works thereof. 78*072a4ba8SAndrew Turner 79*072a4ba8SAndrew Turner "Contribution" shall mean any work of authorship, including 80*072a4ba8SAndrew Turner the original version of the Work and any modifications or additions 81*072a4ba8SAndrew Turner to that Work or Derivative Works thereof, that is intentionally 82*072a4ba8SAndrew Turner submitted to Licensor for inclusion in the Work by the copyright owner 83*072a4ba8SAndrew Turner or by an individual or Legal Entity authorized to submit on behalf of 84*072a4ba8SAndrew Turner the copyright owner. For the purposes of this definition, "submitted" 85*072a4ba8SAndrew Turner means any form of electronic, verbal, or written communication sent 86*072a4ba8SAndrew Turner to the Licensor or its representatives, including but not limited to 87*072a4ba8SAndrew Turner communication on electronic mailing lists, source code control systems, 88*072a4ba8SAndrew Turner and issue tracking systems that are managed by, or on behalf of, the 89*072a4ba8SAndrew Turner Licensor for the purpose of discussing and improving the Work, but 90*072a4ba8SAndrew Turner excluding communication that is conspicuously marked or otherwise 91*072a4ba8SAndrew Turner designated in writing by the copyright owner as "Not a Contribution." 92*072a4ba8SAndrew Turner 93*072a4ba8SAndrew Turner "Contributor" shall mean Licensor and any individual or Legal Entity 94*072a4ba8SAndrew Turner on behalf of whom a Contribution has been received by Licensor and 95*072a4ba8SAndrew Turner subsequently incorporated within the Work. 96*072a4ba8SAndrew Turner 97*072a4ba8SAndrew Turner 2. Grant of Copyright License. Subject to the terms and conditions of 98*072a4ba8SAndrew Turner this License, each Contributor hereby grants to You a perpetual, 99*072a4ba8SAndrew Turner worldwide, non-exclusive, no-charge, royalty-free, irrevocable 100*072a4ba8SAndrew Turner copyright license to reproduce, prepare Derivative Works of, 101*072a4ba8SAndrew Turner publicly display, publicly perform, sublicense, and distribute the 102*072a4ba8SAndrew Turner Work and such Derivative Works in Source or Object form. 103*072a4ba8SAndrew Turner 104*072a4ba8SAndrew Turner 3. Grant of Patent License. Subject to the terms and conditions of 105*072a4ba8SAndrew Turner this License, each Contributor hereby grants to You a perpetual, 106*072a4ba8SAndrew Turner worldwide, non-exclusive, no-charge, royalty-free, irrevocable 107*072a4ba8SAndrew Turner (except as stated in this section) patent license to make, have made, 108*072a4ba8SAndrew Turner use, offer to sell, sell, import, and otherwise transfer the Work, 109*072a4ba8SAndrew Turner where such license applies only to those patent claims licensable 110*072a4ba8SAndrew Turner by such Contributor that are necessarily infringed by their 111*072a4ba8SAndrew Turner Contribution(s) alone or by combination of their Contribution(s) 112*072a4ba8SAndrew Turner with the Work to which such Contribution(s) was submitted. If You 113*072a4ba8SAndrew Turner institute patent litigation against any entity (including a 114*072a4ba8SAndrew Turner cross-claim or counterclaim in a lawsuit) alleging that the Work 115*072a4ba8SAndrew Turner or a Contribution incorporated within the Work constitutes direct 116*072a4ba8SAndrew Turner or contributory patent infringement, then any patent licenses 117*072a4ba8SAndrew Turner granted to You under this License for that Work shall terminate 118*072a4ba8SAndrew Turner as of the date such litigation is filed. 119*072a4ba8SAndrew Turner 120*072a4ba8SAndrew Turner 4. Redistribution. You may reproduce and distribute copies of the 121*072a4ba8SAndrew Turner Work or Derivative Works thereof in any medium, with or without 122*072a4ba8SAndrew Turner modifications, and in Source or Object form, provided that You 123*072a4ba8SAndrew Turner meet the following conditions: 124*072a4ba8SAndrew Turner 125*072a4ba8SAndrew Turner (a) You must give any other recipients of the Work or 126*072a4ba8SAndrew Turner Derivative Works a copy of this License; and 127*072a4ba8SAndrew Turner 128*072a4ba8SAndrew Turner (b) You must cause any modified files to carry prominent notices 129*072a4ba8SAndrew Turner stating that You changed the files; and 130*072a4ba8SAndrew Turner 131*072a4ba8SAndrew Turner (c) You must retain, in the Source form of any Derivative Works 132*072a4ba8SAndrew Turner that You distribute, all copyright, patent, trademark, and 133*072a4ba8SAndrew Turner attribution notices from the Source form of the Work, 134*072a4ba8SAndrew Turner excluding those notices that do not pertain to any part of 135*072a4ba8SAndrew Turner the Derivative Works; and 136*072a4ba8SAndrew Turner 137*072a4ba8SAndrew Turner (d) If the Work includes a "NOTICE" text file as part of its 138*072a4ba8SAndrew Turner distribution, then any Derivative Works that You distribute must 139*072a4ba8SAndrew Turner include a readable copy of the attribution notices contained 140*072a4ba8SAndrew Turner within such NOTICE file, excluding those notices that do not 141*072a4ba8SAndrew Turner pertain to any part of the Derivative Works, in at least one 142*072a4ba8SAndrew Turner of the following places: within a NOTICE text file distributed 143*072a4ba8SAndrew Turner as part of the Derivative Works; within the Source form or 144*072a4ba8SAndrew Turner documentation, if provided along with the Derivative Works; or, 145*072a4ba8SAndrew Turner within a display generated by the Derivative Works, if and 146*072a4ba8SAndrew Turner wherever such third-party notices normally appear. The contents 147*072a4ba8SAndrew Turner of the NOTICE file are for informational purposes only and 148*072a4ba8SAndrew Turner do not modify the License. You may add Your own attribution 149*072a4ba8SAndrew Turner notices within Derivative Works that You distribute, alongside 150*072a4ba8SAndrew Turner or as an addendum to the NOTICE text from the Work, provided 151*072a4ba8SAndrew Turner that such additional attribution notices cannot be construed 152*072a4ba8SAndrew Turner as modifying the License. 153*072a4ba8SAndrew Turner 154*072a4ba8SAndrew Turner You may add Your own copyright statement to Your modifications and 155*072a4ba8SAndrew Turner may provide additional or different license terms and conditions 156*072a4ba8SAndrew Turner for use, reproduction, or distribution of Your modifications, or 157*072a4ba8SAndrew Turner for any such Derivative Works as a whole, provided Your use, 158*072a4ba8SAndrew Turner reproduction, and distribution of the Work otherwise complies with 159*072a4ba8SAndrew Turner the conditions stated in this License. 160*072a4ba8SAndrew Turner 161*072a4ba8SAndrew Turner 5. Submission of Contributions. Unless You explicitly state otherwise, 162*072a4ba8SAndrew Turner any Contribution intentionally submitted for inclusion in the Work 163*072a4ba8SAndrew Turner by You to the Licensor shall be under the terms and conditions of 164*072a4ba8SAndrew Turner this License, without any additional terms or conditions. 165*072a4ba8SAndrew Turner Notwithstanding the above, nothing herein shall supersede or modify 166*072a4ba8SAndrew Turner the terms of any separate license agreement you may have executed 167*072a4ba8SAndrew Turner with Licensor regarding such Contributions. 168*072a4ba8SAndrew Turner 169*072a4ba8SAndrew Turner 6. Trademarks. This License does not grant permission to use the trade 170*072a4ba8SAndrew Turner names, trademarks, service marks, or product names of the Licensor, 171*072a4ba8SAndrew Turner except as required for reasonable and customary use in describing the 172*072a4ba8SAndrew Turner origin of the Work and reproducing the content of the NOTICE file. 173*072a4ba8SAndrew Turner 174*072a4ba8SAndrew Turner 7. Disclaimer of Warranty. Unless required by applicable law or 175*072a4ba8SAndrew Turner agreed to in writing, Licensor provides the Work (and each 176*072a4ba8SAndrew Turner Contributor provides its Contributions) on an "AS IS" BASIS, 177*072a4ba8SAndrew Turner WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 178*072a4ba8SAndrew Turner implied, including, without limitation, any warranties or conditions 179*072a4ba8SAndrew Turner of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 180*072a4ba8SAndrew Turner PARTICULAR PURPOSE. You are solely responsible for determining the 181*072a4ba8SAndrew Turner appropriateness of using or redistributing the Work and assume any 182*072a4ba8SAndrew Turner risks associated with Your exercise of permissions under this License. 183*072a4ba8SAndrew Turner 184*072a4ba8SAndrew Turner 8. Limitation of Liability. In no event and under no legal theory, 185*072a4ba8SAndrew Turner whether in tort (including negligence), contract, or otherwise, 186*072a4ba8SAndrew Turner unless required by applicable law (such as deliberate and grossly 187*072a4ba8SAndrew Turner negligent acts) or agreed to in writing, shall any Contributor be 188*072a4ba8SAndrew Turner liable to You for damages, including any direct, indirect, special, 189*072a4ba8SAndrew Turner incidental, or consequential damages of any character arising as a 190*072a4ba8SAndrew Turner result of this License or out of the use or inability to use the 191*072a4ba8SAndrew Turner Work (including but not limited to damages for loss of goodwill, 192*072a4ba8SAndrew Turner work stoppage, computer failure or malfunction, or any and all 193*072a4ba8SAndrew Turner other commercial damages or losses), even if such Contributor 194*072a4ba8SAndrew Turner has been advised of the possibility of such damages. 195*072a4ba8SAndrew Turner 196*072a4ba8SAndrew Turner 9. Accepting Warranty or Additional Liability. While redistributing 197*072a4ba8SAndrew Turner the Work or Derivative Works thereof, You may choose to offer, 198*072a4ba8SAndrew Turner and charge a fee for, acceptance of support, warranty, indemnity, 199*072a4ba8SAndrew Turner or other liability obligations and/or rights consistent with this 200*072a4ba8SAndrew Turner License. However, in accepting such obligations, You may act only 201*072a4ba8SAndrew Turner on Your own behalf and on Your sole responsibility, not on behalf 202*072a4ba8SAndrew Turner of any other Contributor, and only if You agree to indemnify, 203*072a4ba8SAndrew Turner defend, and hold each Contributor harmless for any liability 204*072a4ba8SAndrew Turner incurred by, or claims asserted against, such Contributor by reason 205*072a4ba8SAndrew Turner of your accepting any such warranty or additional liability. 206*072a4ba8SAndrew Turner 207*072a4ba8SAndrew Turner END OF TERMS AND CONDITIONS 208*072a4ba8SAndrew Turner 209*072a4ba8SAndrew Turner APPENDIX: How to apply the Apache License to your work. 210*072a4ba8SAndrew Turner 211*072a4ba8SAndrew Turner To apply the Apache License to your work, attach the following 212*072a4ba8SAndrew Turner boilerplate notice, with the fields enclosed by brackets "[]" 213*072a4ba8SAndrew Turner replaced with your own identifying information. (Don't include 214*072a4ba8SAndrew Turner the brackets!) The text should be enclosed in the appropriate 215*072a4ba8SAndrew Turner comment syntax for the file format. We also recommend that a 216*072a4ba8SAndrew Turner file or class name and description of purpose be included on the 217*072a4ba8SAndrew Turner same "printed page" as the copyright notice for easier 218*072a4ba8SAndrew Turner identification within third-party archives. 219*072a4ba8SAndrew Turner 220*072a4ba8SAndrew Turner Copyright [yyyy] [name of copyright owner] 221*072a4ba8SAndrew Turner 222*072a4ba8SAndrew Turner Licensed under the Apache License, Version 2.0 (the "License"); 223*072a4ba8SAndrew Turner you may not use this file except in compliance with the License. 224*072a4ba8SAndrew Turner You may obtain a copy of the License at 225*072a4ba8SAndrew Turner 226*072a4ba8SAndrew Turner http://www.apache.org/licenses/LICENSE-2.0 227*072a4ba8SAndrew Turner 228*072a4ba8SAndrew Turner Unless required by applicable law or agreed to in writing, software 229*072a4ba8SAndrew Turner distributed under the License is distributed on an "AS IS" BASIS, 230*072a4ba8SAndrew Turner WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 231*072a4ba8SAndrew Turner See the License for the specific language governing permissions and 232*072a4ba8SAndrew Turner limitations under the License. 233*072a4ba8SAndrew Turner 234*072a4ba8SAndrew Turner 235*072a4ba8SAndrew Turner--- LLVM Exceptions to the Apache 2.0 License ---- 236*072a4ba8SAndrew Turner 237*072a4ba8SAndrew TurnerAs an exception, if, as a result of your compiling your source code, portions 238*072a4ba8SAndrew Turnerof this Software are embedded into an Object form of such source code, you 239*072a4ba8SAndrew Turnermay redistribute such embedded portions in such Object form without complying 240*072a4ba8SAndrew Turnerwith the conditions of Sections 4(a), 4(b) and 4(d) of the License. 241*072a4ba8SAndrew Turner 242*072a4ba8SAndrew TurnerIn addition, if you combine or link compiled forms of this Software with 243*072a4ba8SAndrew Turnersoftware that is licensed under the GPLv2 ("Combined Software") and if a 244*072a4ba8SAndrew Turnercourt of competent jurisdiction determines that the patent provision (Section 245*072a4ba8SAndrew Turner3), the indemnity provision (Section 9) or other Section of the License 246*072a4ba8SAndrew Turnerconflicts with the conditions of the GPLv2, you may retroactively and 247*072a4ba8SAndrew Turnerprospectively choose to deem waived or otherwise exclude such Section(s) of 248*072a4ba8SAndrew Turnerthe License, but only in their entirety and only with respect to the Combined 249*072a4ba8SAndrew TurnerSoftware. 250