llvm-project/llvm
Rafael Espindola 339430f993 Use DataLayout from the module when easily available.
Eventually DataLayoutPass should go away, but for now that is the only easy
way to get a DataLayout in some APIs. This patch only changes the ones that
have easy access to a Module.

One interesting issue with sometimes using DataLayoutPass and sometimes
fetching it from the Module is that we have to make sure they are equivalent.
We can get most of the way there by always constructing the pass with a Module.
In fact, the pass could be changed to point to an external DataLayout instead
of owning one to make this stricter.

Unfortunately, the C api passes a DataLayout, so it has to be up to the caller
to make sure the pass and the module are in sync.

llvm-svn: 202204
2014-02-25 23:25:17 +00:00
..
autoconf Add aarch64 to config.guess 2014-02-25 09:30:54 +00:00
bindings [python-bindings] Remove some cruft that snuck in. 2014-02-23 04:43:26 +00:00
cmake TableGen.cmake: Functionalize and reformat. 2014-02-23 12:54:15 +00:00
docs Make DisableIntegratedAS a TargetOption. 2014-02-21 03:13:54 +00:00
examples Use DataLayout from the module when easily available. 2014-02-25 23:25:17 +00:00
include Use DataLayout from the module when easily available. 2014-02-25 23:25:17 +00:00
lib Use DataLayout from the module when easily available. 2014-02-25 23:25:17 +00:00
projects Remove dead code, we already require cmake 2.8.8. 2014-02-16 14:36:26 +00:00
test Attempt to unbreak an MSVC buildbot by switching to %llc_dwarf. 2014-02-25 23:03:00 +00:00
tools Use DataLayout from the module when easily available. 2014-02-25 23:25:17 +00:00
unittests Fix resetting the DataLayout in a Module. 2014-02-25 22:23:04 +00:00
utils Replace the F_Binary flag with a F_Text one. 2014-02-24 18:20:12 +00:00
.arcconfig
.clang-format
.gitignore Added .DS_Store entry in .gitignore for ignoring .DS_Store files in the source 2014-01-25 15:15:16 +00:00
CMakeLists.txt Permit CMAKE_INSTALL_RPATH to be set on command line 2014-02-24 22:23:43 +00:00
CODE_OWNERS.TXT Add myself as owner for libc++ 2014-02-18 14:03:17 +00:00
CREDITS.TXT Fix documentation typos 2013-12-20 00:33:39 +00:00
LICENSE.TXT Update the copyright credits -- Happy new year 2014! 2014-01-01 08:27:31 +00:00
LLVMBuild.txt
Makefile Provide CMake package modules in install tree 2014-02-09 16:37:02 +00:00
Makefile.common
Makefile.config.in Add version, arch, system libs, and targets to Makefile.config 2014-02-09 16:36:42 +00:00
Makefile.rules Provide CMake package modules in install tree 2014-02-09 16:37:02 +00:00
README.txt
configure Add version, arch, system libs, and targets to Makefile.config 2014-02-09 16:36:42 +00:00
llvm.spec.in

README.txt

Low Level Virtual Machine (LLVM)
================================

This directory and its subdirectories contain source code for the Low Level
Virtual Machine, a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments.

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the documentation provided in docs/ for further
assistance with LLVM, and in particular docs/GettingStarted.rst for getting
started with LLVM and docs/README.txt for an overview of LLVM's
documentation setup.

If you're writing a package for LLVM, see docs/Packaging.rst for our
suggestions.