- Oct 05, 2013
-
-
Craig Topper authored
llvm-svn: 192040
-
Craig Topper authored
llvm-svn: 192039
-
Craig Topper authored
llvm-svn: 192037
-
Rafael Espindola authored
When MC was first added, targets could use hasRawTextSupport to keep features working before they were added to the MC interface. The design goal of MC is to provide an uniform api for printing assembly and object files. Short of relaxations and other corner cases, a object file is just another representation of the assembly. It was never the intention that targets would keep doing things like if (hasRawTextSupport()) Set flags in one way. else Set flags in another way. When they do that they create two code paths and the object file is no longer just another representation of the assembly. This also then requires testing with llc -filetype=obj, which is extremelly brittle. This patch removes some of these hacks by replacing them with smaller ones. The ARM flag setting is trivial, so I just moved it to the constructor. For Mips, the patch adds two temporary hack directives that allow the assembly to represent the same things as the object file was already able to. The hope is that the mips developers will replace the hack directives with the same ones that gas uses and drop the -print-hack-directives flag. I will also try to implement a target streamer interface, so that we can move this out of the common code. In summary, for any new work, two rules of the thumb are * Don't use "llc -filetype=obj" in tests. * Don't add calls to hasRawTextSupport. llvm-svn: 192035
-
Jiangning Liu authored
llvm-svn: 192028
-
Venkatraman Govindaraju authored
llvm-svn: 192023
-
Venkatraman Govindaraju authored
llvm-svn: 192015
-
Venkatraman Govindaraju authored
llvm-svn: 192006
-
Jack Carter authored
llvm-svn: 191993
-
Jack Carter authored
llvm-svn: 191992
-
Reed Kotler authored
llvm-svn: 191986
-
- Oct 04, 2013
-
-
Jack Carter authored
This patch handles LLVM standalone assembler (llvm-mc) ELF flag setting based on input file directive processing. Mips assembly requires processing inline directives that directly and indirectly affect the output ELF header flags. This patch handles one ".abicalls". To process these directives we are following the model the code generator uses by storing state in a container as we go through processing and when we detect the end of input file processing, AsmParser is notified and we update the ELF header flags through a MipsELFStreamer method with a call from MCTargetAsmParser::emitEndOfAsmFile(MCStreamer &OutStreamer). This patch will allow other targets the same functionality. Jack llvm-svn: 191982
-
Akira Hatanaka authored
instructions in delay slots along with the original branch instructions. llvm-svn: 191978
-
Matthias Braun authored
optimizeSelect folds (predicated) copy instructions, it must not ignore the original register class of the operand when replacing the register with the copies dest register. llvm-svn: 191963
-
Matthias Braun authored
The jump doesn't really kill the registers, the following call does but we never get back anyway. This avoids some verify-machineinstrs problems when TAILJUMPs are if-converted. llvm-svn: 191962
-
Matthias Braun authored
Copy over the whole register machine operand instead of creating a new one with an incomplete set of flags. llvm-svn: 191961
-
Jiangning Liu authored
llvm-svn: 191944
-
- Oct 03, 2013
-
-
Elena Demikhovsky authored
llvm-svn: 191889
-
Amara Emerson authored
Patch by Artyom Skrobov. llvm-svn: 191885
-
Craig Topper authored
llvm-svn: 191880
-
Craig Topper authored
llvm-svn: 191877
-
Craig Topper authored
llvm-svn: 191874
-
Craig Topper authored
llvm-svn: 191871
-
- Oct 02, 2013
-
-
Vincent Lejeune authored
llvm-svn: 191838
-
Elena Demikhovsky authored
llvm-svn: 191818
-
Elena Demikhovsky authored
otherwise encoding fails after the last change in X86MCCodeEmitter.cpp. llvm-svn: 191812
-
- Oct 01, 2013
-
-
Vincent Lejeune authored
llvm-svn: 191790
-
Vincent Lejeune authored
llvm-svn: 191789
-
Vincent Lejeune authored
llvm-svn: 191788
-
Richard Sandiford authored
llvm-svn: 191777
-
Richard Sandiford authored
There are no corresponding patterns for small immediates because they would prevent the use of fused compare-and-branch instructions. llvm-svn: 191775
-
Richard Sandiford authored
llvm-svn: 191774
-
Richard Sandiford authored
llvm-svn: 191773
-
Richard Sandiford authored
This involves using RISB[LH]G, whereas the equivalent z10 optimization uses RISBG. llvm-svn: 191770
-
Richard Sandiford authored
As the comment says, we always want to use STOC for 32-bit stores. llvm-svn: 191767
-
Tim Northover authored
This function-attribute modifies the callee-saved register list and function epilogue (specifically the return instruction) so that a routine is suitable for use as an interrupt-handler of the specified type without disrupting user-mode applications. rdar://problem/14207019 llvm-svn: 191766
-
Richard Sandiford authored
Floats are stored in the high 32 bits of an FPR, and the only GPR<->FPR transfers are full-register transfers. This patch optimizes GPR<->FPR float transfers when the high word of a GPR is directly accessible. llvm-svn: 191764
-
Richard Sandiford authored
llvm-svn: 191762
-
Richard Sandiford authored
llvm-svn: 191759
-
Rafael Espindola authored
Patch by Alp Toker. llvm-svn: 191757
-