1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00
llvm-mirror/utils/TableGen
Dan Gohman 268cfea6bc Fun x86 encoding tricks: when adding an immediate value of 128,
use a SUB instruction instead of an ADD, because -128 can be
encoded in an 8-bit signed immediate field, while +128 can't be.
This avoids the need for a 32-bit immediate field in this case.

A similar optimization applies to 64-bit adds with 0x80000000,
with the 32-bit signed immediate field.

To support this, teach tablegen how to handle 64-bit constants.

llvm-svn: 57663
2008-10-17 01:33:43 +00:00
..
AsmWriterEmitter.cpp Split ISD::LABEL into ISD::DBG_LABEL and ISD::EH_LABEL, eliminating 2008-07-01 00:05:16 +00:00
AsmWriterEmitter.h remove attributions from utils. 2007-12-29 20:37:13 +00:00
CallingConvEmitter.cpp Wrap MVT::ValueType in a struct to get type safety 2008-06-06 12:08:01 +00:00
CallingConvEmitter.h remove attributions from utils. 2007-12-29 20:37:13 +00:00
CMakeLists.txt Initial support for the CMake build system. 2008-09-22 01:08:49 +00:00
CodeEmitterGen.cpp Fix shift overflow bug that would occur when a field was a full 32-bits 2008-10-05 18:31:58 +00:00
CodeEmitterGen.h remove attributions from utils. 2007-12-29 20:37:13 +00:00
CodeGenDAGPatterns.cpp Add support for having multiple predicates on a TreePatternNode. 2008-10-15 06:17:21 +00:00
CodeGenDAGPatterns.h Add support for having multiple predicates on a TreePatternNode. 2008-10-15 06:17:21 +00:00
CodeGenInstruction.cpp Handle some 64-bit atomics on x86-32, some of the time. 2008-10-02 18:53:47 +00:00
CodeGenInstruction.h Add a flag to indicate that an instruction is as cheap (or cheaper) than a move 2008-05-28 22:54:52 +00:00
CodeGenIntrinsics.h - Add "Commutative" property to intrinsics. This allows tblgen to generate the commuted variants for dagisel matching code. 2008-06-16 20:29:38 +00:00
CodeGenRegisters.h Wrap MVT::ValueType in a struct to get type safety 2008-06-06 12:08:01 +00:00
CodeGenTarget.cpp Factor the code for determining the target-specific instruction 2008-08-20 21:45:57 +00:00
CodeGenTarget.h Factor the code for determining the target-specific instruction 2008-08-20 21:45:57 +00:00
DAGISelEmitter.cpp Fun x86 encoding tricks: when adding an immediate value of 128, 2008-10-17 01:33:43 +00:00
DAGISelEmitter.h Teach the DAGISelEmitter to not compute the variable_ops operand 2008-05-31 02:11:25 +00:00
FastISelEmitter.cpp Add support for having multiple predicates on a TreePatternNode. 2008-10-15 06:17:21 +00:00
FastISelEmitter.h Refactor a bunch of FastISelEmitter code into a helper class, and 2008-08-26 21:21:20 +00:00
InstrEnumEmitter.cpp Add <cstdio> include where needed by gcc-4.4. 2008-10-08 07:23:46 +00:00
InstrEnumEmitter.h split enum emission out from InstrInfoEmitter into it's own tblgen backend. 2008-01-06 00:49:05 +00:00
InstrInfoEmitter.cpp Split ISD::LABEL into ISD::DBG_LABEL and ISD::EH_LABEL, eliminating 2008-07-01 00:05:16 +00:00
InstrInfoEmitter.h Move instruction flag inference out of InstrInfoEmitter and into 2008-04-03 00:02:49 +00:00
IntrinsicEmitter.cpp Large mechanical patch. 2008-09-25 21:00:45 +00:00
IntrinsicEmitter.h remove attributions from utils. 2007-12-29 20:37:13 +00:00
LLVMCConfigurationEmitter.cpp Move llvmc2 header files under include/llvm/CompilerDriver 2008-09-22 20:50:40 +00:00
LLVMCConfigurationEmitter.h Fix some headers. 2008-05-30 06:20:54 +00:00
Makefile remove attributions from tools/utils makefiles. 2007-12-29 20:07:17 +00:00
Record.cpp Fun x86 encoding tricks: when adding an immediate value of 128, 2008-10-17 01:33:43 +00:00
Record.h Fun x86 encoding tricks: when adding an immediate value of 128, 2008-10-17 01:33:43 +00:00
RegisterInfoEmitter.cpp Fun x86 encoding tricks: when adding an immediate value of 128, 2008-10-17 01:33:43 +00:00
RegisterInfoEmitter.h remove attributions from utils. 2007-12-29 20:37:13 +00:00
SubtargetEmitter.cpp lib/Target/SubtargetFeature.cpp asserts that the FeatureKV[] table be sorted 2008-09-11 17:05:32 +00:00
SubtargetEmitter.h remove attributions from utils. 2007-12-29 20:37:13 +00:00
TableGen.cpp Initial checkin of the new "fast" instruction selection support. See 2008-08-13 20:19:35 +00:00
TableGenBackend.cpp change getQualifiedName to be a global function. 2008-01-05 22:25:12 +00:00
TableGenBackend.h change getQualifiedName to be a global function. 2008-01-05 22:25:12 +00:00
TGLexer.cpp Fun x86 encoding tricks: when adding an immediate value of 128, 2008-10-17 01:33:43 +00:00
TGLexer.h Fun x86 encoding tricks: when adding an immediate value of 128, 2008-10-17 01:33:43 +00:00
TGParser.cpp Fun x86 encoding tricks: when adding an immediate value of 128, 2008-10-17 01:33:43 +00:00
TGParser.h remove attributions from utils. 2007-12-29 20:37:13 +00:00