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

Copyright (c) 2003, 2004, 2005 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-test/autoconf
Burg:               llvm-test/MultiSource/Applications/Burg
Aha:                llvm-test/MultiSource/Applications/aha
SGEFA:              llvm-test/MultiSource/Applications/sgefa
SIOD:               llvm-test/MultiSource/Applications/siod
Spiff:              llvm-test/MultiSource/Applications/spiff
D:                  llvm-test/MultiSource/Applications/d
Lambda:             llvm-test/MultiSource/Applications/lambda-0.1.3
hbd:                llvm-test/MultiSource/Applications/hbd
treecc:             llvm-test/MultiSource/Applications/treecc
kimwitu++:          llvm-test/MultiSource/Applications/kimwitu++
obsequi:            llvm-test/MultiSource/Applications/obsequi
Hexxagon:           llvm-test/MultiSource/Applications/hexxagon
SPASS:              llvm-test/MultiSource/Applications/SPASS
smg2000:            llvm-test/MultiSource/Benchmarks/ASCI_Purple/SMG2000
Fhourstones:        llvm-test/MultiSource/Benchmarks/Fhourstones
McCat:              llvm-test/MultiSource/Benchmarks/McCat
Olden:              llvm-test/MultiSource/Benchmarks/Olden
OptimizerEval:      llvm-test/MultiSource/Benchmarks/OptimizerEval
Ptrdist:            llvm-test/MultiSource/Benchmarks/Ptrdist
LLUBenchmark:       llvm-test/MultiSource/Benchmarks/llubenchmark
SIM:                llvm-test/MultiSource/Benchmarks/sim
cfrac:              llvm-test/MultiSource/Benchmarks/MallocBench/cfrac
espresso:           llvm-test/MultiSource/Benchmarks/MallocBench/espresso
gs:                 llvm-test/MultiSource/Benchmarks/MallocBench/gs
p2c:                llvm-test/MultiSource/Benchmarks/MallocBench/p2c
gawk:               llvm-test/MultiSource/Benchmarks/MallocBench/gawk
make:               llvm-test/MultiSource/Benchmarks/MallocBench/make
perl:               llvm-test/MultiSource/Benchmarks/MallocBench/perl
adpcm:              llvm-test/MultiSource/Benchmarks/mediabench/adpcm
g721:               llvm-test/MultiSource/Benchmarks/mediabench/g721
gsm:                llvm-test/MultiSource/Benchmarks/mediabench/gsm
jpeg:               llvm-test/MultiSource/Benchmarks/mediabench/jpeg
mpeg2:              llvm-test/MultiSource/Benchmarks/mediabench/mpeg2
Dhrystone:          llvm-test/SingleSource/Benchmarks/Dhrystone
SingleSource Tests: llvm-test/SingleSource/Benchmarks/Misc
                    llvm-test/SingleSource/CustomChecked
                    llvm-test/SingleSource/Gizmos
