==============================================================================
LLVM Release License
==============================================================================
University of Illinois/NCSA
Open Source License

Copyright (c) 2003, University of Illinois at Urbana-Champaign.  All rights
reserved.

Developed by:

    LLVM Team

    University of Illinois at Urbana-Champaign

    http://llvm.cs.uiuc.edu

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal with
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do
so, subject to the following conditions:

    * Redistributions of source code must retain the above copyright notice,
      this list of conditions and the following disclaimers.

    * Redistributions in binary form must reproduce the above copyright notice,
      this list of conditions and the following disclaimers in the
      documentation and/or other materials provided with the distribution.

    * Neither the names of the LLVM Team, University of Illinois at
      Urbana-Champaign, nor the names of its contributors may be used to
      endorse or promote products derived from this Software without specific
      prior written permission.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
SOFTWARE.

==============================================================================
Copyrights and Licenses for Third Party Software Distributed with LLVM:
==============================================================================
The LLVM software contains code written by third parties.  Such software will
have its own individual LICENSE.TXT file in the directory in which it appears.
This file will describe the copyrights, license, and restrictions which apply
to that code.

The disclaimer of warranty in the University of Illinois Open Source License
applies to all code in the LLVM Distribution, and nothing in any of the
other licenses gives permission to use the names of the LLVM Team or the
University of Illinois to endorse or promote products derived from this
Software.

The following pieces of software have additional or alternate copyrights,
licenses, and/or restrictions:

Program             Directory
-------             ---------
Autoconf:           llvm/autoconf
                    llvm/projects/ModuleMaker/autoconf
                    llvm/projects/sample/autoconf
Burg:               llvm/utils/Burg
                    llvm/test/Programs/MultiSource/Applications/Burg
Aha:                llvm/test/Programs/MultiSource/Applications/aha
SGEFA:              llvm/test/Programs/MultiSource/Applications/sgefa
SIOD:               llvm/test/Programs/MultiSource/Applications/siod
Lambda:             llvm/test/Programs/MultiSource/Applications/lambda-0.1.3
Fhourstones:        llvm/test/Programs/MultiSource/Benchmarks/Fhourstones
McCat:              llvm/test/Programs/MultiSource/Benchmarks/McCat
Olden:              llvm/test/Programs/MultiSource/Benchmarks/Olden
OptimizerEval:      llvm/test/Programs/MultiSource/Benchmarks/OptimizerEval
Ptrdist:            llvm/test/Programs/MultiSource/Benchmarks/Ptrdist
LLUBenchmark:       llvm/test/Programs/MultiSource/Benchmarks/llubenchmark
SIM:                llvm/test/Programs/MultiSource/Benchmarks/sim
cfrac:               llvm/test/Programs/MultiSource/Benchmarks/MallocBench/cfrac
espresso:           llvm/test/Programs/MultiSource/Benchmarks/MallocBench/espresso
gs:                 llvm/test/Programs/MultiSource/Benchmarks/MallocBench/gs
p2c:                llvm/test/Programs/MultiSource/Benchmarks/MallocBench/p2c
gawk:               llvm/test/Programs/MultiSource/Benchmarks/MallocBench/gawk
make:               llvm/test/Programs/MultiSource/Benchmarks/MallocBench/make
perl:               llvm/test/Programs/MultiSource/Benchmarks/MallocBench/perl
Dhrystone:          llvm/test/Programs/SingleSource/Benchmarks/Dhrystone
SingleSource Tests: llvm/test/Programs/SingleSource/Benchmarks/Misc
                    llvm/test/Programs/SingleSource/CustomChecked
                    llvm/test/Programs/SingleSource/Gizmos
Boost:              llvm/include/boost
GNU Libc:           llvm/runtime/GCCLibraries/libc
Zlib Library:       llvm/runtime/zlib
PNG Library:        llvm/runtime/libpng

