1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 02:52:53 +02:00
Go to file
Tim Northover e0dc000a0d GlobalISel: move type information to MachineRegisterInfo.
We want each register to have a canonical type, which means the best place to
store this is in MachineRegisterInfo rather than on every MachineInstr that
happens to use or define that register.

Most changes following from this are pretty simple (you need an MRI anyway if
you're going to be doing any transformations, so just check the type there).
But legalization doesn't really want to check redundant operands (when, for
example, a G_ADD only ever has one type) so I've made use of MCInstrDesc's
operand type field to encode these constraints and limit legalization's work.

As an added bonus, more validation is possible, both in MachineVerifier and
MachineIRBuilder (coming soon).

llvm-svn: 281035
2016-09-09 11:46:34 +00:00
bindings Formatting with clang-format patch r280700 2016-09-06 17:03:02 +00:00
cmake [CMake] Cleanup LLVM_OPTIMIZED_TABLEGEN 2016-09-06 20:27:07 +00:00
docs [libFuzzer] remove use_traces=1 since use_value_profile seems to be strictly better 2016-09-09 01:17:03 +00:00
examples Fix singlton -> singleton typo. 2016-08-26 02:00:21 +00:00
include GlobalISel: move type information to MachineRegisterInfo. 2016-09-09 11:46:34 +00:00
lib GlobalISel: move type information to MachineRegisterInfo. 2016-09-09 11:46:34 +00:00
projects Remove autoconf support 2016-01-26 21:29:08 +00:00
resources
runtimes [CMake] Connecting check-all and test-depends targets correctly 2016-09-01 18:26:01 +00:00
test GlobalISel: move type information to MachineRegisterInfo. 2016-09-09 11:46:34 +00:00
tools [llvm-cov] Emit a summary in the report directory's index 2016-09-09 01:32:55 +00:00
unittests [YAMLIO] Add the ability to map with context. 2016-09-08 18:22:44 +00:00
utils [TableGen] AsmMatcher: Add AsmVariantName to Instruction class. 2016-09-08 15:50:52 +00:00
.arcconfig Upgrade all the .arcconfigs to https. 2016-07-14 13:15:37 +00:00
.clang-format
.clang-tidy .clang-tidy: parameters and members should be CamelCased. 2016-09-08 23:29:37 +00:00
.gitignore gitignore: ignore VS Code editor files 2016-09-02 22:54:26 +00:00
CMakeLists.txt Try to fix a circular dependency in the modules build. 2016-09-06 20:16:19 +00:00
CODE_OWNERS.TXT CODE_OWNERS: bring my entry up to date 2016-09-05 17:42:46 +00:00
configure Remove autoconf support 2016-01-26 21:29:08 +00:00
CREDITS.TXT Shamelessly add myself to CREDITS.TXT 2016-08-04 16:28:22 +00:00
LICENSE.TXT Remove autoconf references from LICENSE.TXT 2016-08-12 20:11:03 +00:00
llvm.spec.in [Sparc] Implement i64 load/store support for 32-bit sparc. 2015-08-10 19:11:39 +00:00
LLVMBuild.txt
README.txt Revert rL277454 2016-08-02 13:26:07 +00:00
RELEASE_TESTERS.TXT Adding RELEASE_TESTERS.TXT 2016-07-21 16:46:44 +00:00

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

This directory and its subdirectories contain source code for LLVM,
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 are writing a package for LLVM, see docs/Packaging.rst for our
suggestions.