- Sep 03, 2009
-
-
Chris Lattner authored
olden programs working. llvm-svn: 80881
-
Sean Callanan authored
instruction tables to support segmented addressing (and other objects of obscure type). Modified the X86 assembly printers to handle these new operand types. Added JMP and CALL instructions that use segmented addresses. llvm-svn: 80857
-
- Sep 02, 2009
-
-
Chris Lattner authored
llvm-svn: 80806
-
- Aug 31, 2009
-
-
Daniel Dunbar authored
- Down to 7 failures on 403.gcc. llvm-svn: 80605
-
- Aug 22, 2009
-
-
Chris Lattner authored
llvm-svn: 79763
-
- Aug 16, 2009
-
-
Chris Lattner authored
llvm-svn: 79175
-
Chris Lattner authored
can asmprint: NEW: movl "L___stack_chk_guard$non_lazy_ptr", %eax OLD: movl L___stack_chk_guard$non_lazy_ptr, %eax where 'new' is coming out of the MCInst version of the printer. llvm-svn: 79170
-
- Aug 14, 2009
-
-
Daniel Dunbar authored
to print one instruction. llvm-svn: 78985
-
- Aug 08, 2009
-
-
Chris Lattner authored
error condition get trapped with an assert. llvm-svn: 78449
-
- Jul 27, 2009
-
-
Chris Lattner authored
MCSections soon instead of Section for all targets, and we need something to own them. llvm-svn: 77252
-
- Jul 21, 2009
-
-
Chris Lattner authored
and call PrintGlobalVariable, allowing elimination and simplification of various targets. llvm-svn: 76604
-
- Jul 15, 2009
-
-
Daniel Dunbar authored
--- Reverse-merging r75799 into '.': U test/Analysis/PointerTracking U include/llvm/Target/TargetMachineRegistry.h U include/llvm/Target/TargetMachine.h U include/llvm/Target/TargetRegistry.h U include/llvm/Target/TargetSelect.h U tools/lto/LTOCodeGenerator.cpp U tools/lto/LTOModule.cpp U tools/llc/llc.cpp U lib/Target/PowerPC/PPCTargetMachine.h U lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp U lib/Target/PowerPC/PPCTargetMachine.cpp U lib/Target/PowerPC/PPC.h U lib/Target/ARM/ARMTargetMachine.cpp U lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp U lib/Target/ARM/ARMTargetMachine.h U lib/Target/ARM/ARM.h U lib/Target/XCore/XCoreTargetMachine.cpp U lib/Target/XCore/XCoreTargetMachine.h U lib/Target/PIC16/PIC16TargetMachine.cpp U lib/Target/PIC16/PIC16TargetMachine.h U lib/Target/Alpha/AsmPrinter/AlphaAsmPrinter.cpp U lib/Target/Alpha/AlphaTargetMachine.cpp U lib/Target/Alpha/AlphaTargetMachine.h U lib/Target/X86/X86TargetMachine.h U lib/Target/X86/X86.h U lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.h U lib/Target/X86/AsmPrinter/X86AsmPrinter.cpp U lib/Target/X86/AsmPrinter/X86IntelAsmPrinter.h U lib/Target/X86/X86TargetMachine.cpp U lib/Target/MSP430/MSP430TargetMachine.cpp U lib/Target/MSP430/MSP430TargetMachine.h U lib/Target/CppBackend/CPPTargetMachine.h U lib/Target/CppBackend/CPPBackend.cpp U lib/Target/CBackend/CTargetMachine.h U lib/Target/CBackend/CBackend.cpp U lib/Target/TargetMachine.cpp U lib/Target/IA64/IA64TargetMachine.cpp U lib/Target/IA64/AsmPrinter/IA64AsmPrinter.cpp U lib/Target/IA64/IA64TargetMachine.h U lib/Target/IA64/IA64.h U lib/Target/MSIL/MSILWriter.cpp U lib/Target/CellSPU/SPUTargetMachine.h U lib/Target/CellSPU/SPU.h U lib/Target/CellSPU/AsmPrinter/SPUAsmPrinter.cpp U lib/Target/CellSPU/SPUTargetMachine.cpp U lib/Target/Mips/AsmPrinter/MipsAsmPrinter.cpp U lib/Target/Mips/MipsTargetMachine.cpp U lib/Target/Mips/MipsTargetMachine.h U lib/Target/Mips/Mips.h U lib/Target/Sparc/AsmPrinter/SparcAsmPrinter.cpp U lib/Target/Sparc/SparcTargetMachine.cpp U lib/Target/Sparc/SparcTargetMachine.h U lib/ExecutionEngine/JIT/TargetSelect.cpp U lib/Support/TargetRegistry.cpp llvm-svn: 75820
-
Stuart Hastings authored
Revert 75762, 75763, 75766..75769, 75772..75775, 75778, 75780, 75782 to repair broken LLVM-GCC build. Will revert 75770 in the llvm-gcc trunk. llvm-svn: 75799
-
Daniel Dunbar authored
- This abuses TargetMachineRegistry's constructor for now, this will get cleaned up in time. llvm-svn: 75762
-
Chris Lattner authored
cygming, make the two callers only call it if cygming. Other minor cleanups. llvm-svn: 75744
-
- Jul 14, 2009
-
-
David Greene authored
Have asm printers use formatted_raw_ostream directly to avoid a dynamic_cast<>. llvm-svn: 75670
-
Chris Lattner authored
additional bug fixes: 1. The bug that everyone hit was a problem in the asmprinter where it would remove $stub but keep the L prefix on a name when emitting the indirect symbol. This is easy to fix by keeping the name of the stub and the name of the symbol in a StringMap instead of just keeping a StringSet and trying to reconstruct it late. 2. There was a problem printing the personality function. The current logic to print out the personality function from the DWARF information is a bit of a cesspool right now that duplicates a bunch of other logic in the asm printer. The short version of it is that it depends on emitting both the L and _ prefix for symbols (at least on darwin) and until I can untangle it, it is best to switch the mangler back to emitting both prefixes. llvm-svn: 75646
-
- Jul 13, 2009
-
-
Chris Lattner authored
llvm-svn: 75512
-
- Jul 09, 2009
-
-
Chris Lattner authored
llvm-svn: 75105
-
- Jul 01, 2009
-
-
Daniel Dunbar authored
- This more or less amounts to a revert of r65379. I'm curious to know what happened that caused this variable to become unused. llvm-svn: 74579
-
- Jun 30, 2009
-
-
David Greene authored
Add 256-bit memory operand support. llvm-svn: 74548
-
- Jun 27, 2009
-
-
Chris Lattner authored
implementation primarily differs from the former in that the asmprinter doesn't make a zillion decisions about whether or not something will be RIP relative or not. Instead, those decisions are made by isel lowering and propagated through to the asm printer. To achieve this, we: 1. Represent RIP relative addresses by setting the base of the X86 addr mode to X86::RIP. 2. When ISel Lowering decides that it is safe to use RIP, it lowers to X86ISD::WrapperRIP. When it is unsafe to use RIP, it lowers to X86ISD::Wrapper as before. 3. This removes isRIPRel from X86ISelAddressMode, representing it with a basereg of RIP instead. 4. The addressing mode matching logic in isel is greatly simplified. 5. The asmprinter is greatly simplified, notably the "NotRIPRel" predicate passed through various printoperand routines is gone now. 6. The various symbol printing routines in asmprinter now no longer infer when to emit (%rip), they just print the symbol. I think this is a big improvement over the previous situation. It does have two small caveats though: 1. I implemented a horrible "no-rip" modifier for the inline asm "P" constraint modifier. This is a short term hack, there is a much better, but more involved, solution. 2. I had to xfail an -aggressive-remat testcase because it isn't handling the use of RIP in the constant-pool reading instruction. This specific test is easy to fix without -aggressive-remat, which I intend to do next. llvm-svn: 74372
-
- Jun 24, 2009
-
-
Chris Lattner authored
llvm-svn: 74105
-
Chris Lattner authored
llvm-svn: 74101
-
Chris Lattner authored
gv and hiddengv stub printing. llvm-svn: 74093
-
Chris Lattner authored
llvm-svn: 74091
-
Chris Lattner authored
llvm-svn: 74089
-
Chris Lattner authored
llvm-svn: 74066
-
- Jun 20, 2009
-
-
Chris Lattner authored
it as a pcrel immediate instead. This gets pc-rel weirdness out of the main printoperand codepath. llvm-svn: 73829
-
Chris Lattner authored
LEA64_32r, eliminating a bunch of modifier logic stuff on addr modes. Implement support for printing mbb labels as operands. llvm-svn: 73817
-
Devang Patel authored
llvm-svn: 73813
-
Chris Lattner authored
on X86. Not useful yet. llvm-svn: 73799
-
- Jun 19, 2009
-
-
Devang Patel authored
llvm-svn: 73784
-
Chris Lattner authored
implementation. The idea is that we want asmprinting to work by converting MachineInstrs into a new MCInst class, then the per-instruction asmprinter works on MCInst. MCInst and the new asmprinters will not depend on most of the llvm code generators. This allows building diassemblers that don't link in the whole llvm code generator. This is step #1 of many. llvm-svn: 73743
-
- Jun 15, 2009
-
-
Chris Lattner authored
llvm-svn: 73373
-
- May 12, 2009
-
-
Bill Wendling authored
llvm-svn: 71601
-
- Apr 30, 2009
-
-
Bill Wendling authored
which better identifies what the optimization is doing. And is more flexible for future uses. llvm-svn: 70440
-
- Apr 29, 2009
-
-
Bill Wendling authored
Massive check in. This changes the "-fast" flag to "-O#" in llc. If you want to use the old behavior, the flag is -O0. This change allows for finer-grained control over which optimizations are run at different -O levels. Most of this work was pretty mechanical. The majority of the fixes came from verifying that a "fast" variable wasn't used anymore. The JIT still uses a "Fast" flag. I'll change the JIT with a follow-up patch. llvm-svn: 70343
-
- Apr 28, 2009
-
-
Anton Korobeynikov authored
This should fix PR3379 and PR4064. Patch inspired by Edwin Török! llvm-svn: 70328
-
Bill Wendling authored
llvm-svn: 70275
-