- Jun 29, 2011
-
-
Eric Christopher authored
Part of rdar://9643582 llvm-svn: 134095
-
Eric Christopher authored
llvm-svn: 134094
-
Rafael Espindola authored
llvm-svn: 134093
-
Jim Grosbach authored
The tSpill and tRestore instructions are just copies of the tSTRspi and tLDRspi instructions, respectively. Just use those directly instead. llvm-svn: 134092
-
Eric Christopher authored
llvm-svn: 134089
-
Eric Christopher authored
getRegForInlineAsmConstraint. Part of rdar://9643582 llvm-svn: 134088
-
Eric Christopher authored
llvm-svn: 134087
-
Eric Christopher authored
creating a few specific register classes. Part of rdar://9643582 llvm-svn: 134086
-
Eric Christopher authored
for the port. Part of rdar://9643582 llvm-svn: 134085
-
Eric Christopher authored
Part of rdar://9643582 llvm-svn: 134084
-
Eric Christopher authored
Part of rdar://9643582 llvm-svn: 134083
-
Eric Christopher authored
getRegForInlineAsmConstraint. Part of rdar://9643582 llvm-svn: 134080
-
Eric Christopher authored
via vectors. Part of rdar://9643582 llvm-svn: 134079
-
Chad Rosier authored
lifetime intrinsics" due to buildbot failures. llvm-svn: 134071
-
Jim Grosbach authored
For example, ".byte 256" would previously assert() when emitting an object file. Now it generates a diagnostic that the literal value is out of range. rdar://9686950 llvm-svn: 134069
-
Benjamin Kramer authored
llvm-svn: 134067
-
Rafael Espindola authored
llvm-svn: 134057
-
NAKAMURA Takumi authored
llvm-svn: 134055
-
Andrew Trick authored
mean they can be removed. llvm-svn: 134054
-
Jakob Stoklund Olesen authored
miscompile. llvm-svn: 134053
-
Evan Cheng authored
llvm-svn: 134049
-
Jakob Stoklund Olesen authored
This function has to deal with a lot of special cases, and the old version got it wrong sometimes. In particular, it would sometimes leave multiple uses in the stack interval in a single block. That causes bad code with multiple reloads in the same basic block. The new version handles block entry and exit in a single pass. It first eliminates all the easy cases, and then goes on to create a local interval for the blocks with difficult interference. Previously, we would only create the local interval for completely isolated blocks. It can happen that the stack interval becomes completely empty because we could allocate a register in all edge bundles, and the new local intervals deal with the interference. The empty stack interval is harmless, but we need to remove a SplitKit assertion that checks for empty intervals. llvm-svn: 134047
-
- Jun 28, 2011
-
-
Evan Cheng authored
llvm-svn: 134030
-
Evan Cheng authored
llvm-svn: 134027
-
Evan Cheng authored
llvm-svn: 134026
-
Evan Cheng authored
llvm-svn: 134024
-
Evan Cheng authored
sink them into MC layer. - Added MCInstrInfo, which captures the tablegen generated static data. Chang TargetInstrInfo so it's based off MCInstrInfo. llvm-svn: 134021
-
Jakob Stoklund Olesen authored
Drop the FpMov instructions, use plain COPY instead. Drop the FpSET/GET instruction for accessing fixed stack positions. Instead use normal COPY to/from ST registers around inline assembly, and provide a single new FpPOP_RETVAL instruction that can access the return value(s) from a call. This is still necessary since you cannot tell from the CALL instruction alone if it returns anything on the FP stack. Teach fast isel to use this. This provides a much more robust way of handling fixed stack registers - we can tolerate arbitrary FP stack instructions inserted around calls and inline assembly. Live range splitting could sometimes break x87 code by inserting spill code in unfortunate places. As a bonus we handle floating point inline assembly correctly now. llvm-svn: 134018
-
Chad Rosier authored
llvm-svn: 134014
-
Jakob Stoklund Olesen authored
llvm-svn: 134013
-
Andrew Trick authored
llvm-svn: 134010
-
Roman Divacky authored
llvm-svn: 134005
-
Jay Foad authored
avoid getting embedded trailing null bytes in std::strings. llvm-svn: 133999
-
Andrew Trick authored
llvm-svn: 133995
-
Andrew Trick authored
llvm-svn: 133992
-
Andrew Trick authored
llvm-svn: 133991
-
Nick Lewycky authored
llvm-svn: 133990
-
Rafael Espindola authored
llvm-svn: 133989
-
Andrew Trick authored
llvm-svn: 133988
-
Andrew Trick authored
evaluates all other IV exprs. llvm-svn: 133982
-