Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | r70270 isn't ready yet. Back this out. Sorry for the noise. | Bill Wendling | 2009-04-28 | 1 | -16/+12 | |
| | | | | llvm-svn: 70275 | |||||
* | Massive check in. This changes the "-fast" flag to "-O#" in llc. If you want to | Bill Wendling | 2009-04-28 | 1 | -12/+16 | |
| | | | | | | | | | | | 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'm not 100% sure if it's necessary to change it there... llvm-svn: 70270 | |||||
* | CodeGen still defaults to non-verbose asm, but llc now overrides it and ↵ | Evan Cheng | 2009-03-25 | 1 | -4/+4 | |
| | | | | | | default to verbose. llvm-svn: 67668 | |||||
* | ARM target now also recognize triplets like thumbv6-apple-darwin and set ↵ | Evan Cheng | 2009-03-09 | 1 | -2/+5 | |
| | | | | | | thumb mode and arch subversion. Eventually thumb triplets will go way and replaced with function notes. llvm-svn: 66435 | |||||
* | Overhaul my earlier submission due to feedback. It's a large patch, but most of | Bill Wendling | 2009-02-24 | 1 | -3/+3 | |
| | | | | | | | | | | | | them are generic changes. - Use the "fast" flag that's already being passed into the asm printers instead of shoving it into the DwarfWriter. - Instead of calling "MI->getParent()->getParent()" for every MI, set the machine function when calling "runOnMachineFunction" in the asm printers. llvm-svn: 65379 | |||||
* | Adds extern "C" ints to the .cpp files that use RegisterTarget, as | Oscar Fuentes | 2008-11-15 | 1 | -0/+7 | |
| | | | | | | | | | | | well as 2 files that use "Registrator"s. These are to be used by the MSVC builds, as the Win32 linker does not include libs that are otherwise unreferenced, even if global constructors in the lib have side-effects. Patch by Scott Graham! llvm-svn: 59378 | |||||
* | Tell ARMJITInfo if codegen relocation is PIC. It changes how function stubs ↵ | Evan Cheng | 2008-11-08 | 1 | -1/+1 | |
| | | | | | | are generated. llvm-svn: 58896 | |||||
* | ARM JIT should observe -relocation-model command line option. | Evan Cheng | 2008-10-30 | 1 | -2/+5 | |
| | | | | llvm-svn: 58433 | |||||
* | Fix command-line option printing to print two spaces where needed, | Dan Gohman | 2008-10-14 | 1 | -2/+2 | |
| | | | | | | | | | instead of requiring all "short description" strings to begin with two spaces. This makes these strings less mysterious, and it fixes some cases where short description strings mistakenly did not begin with two spaces. llvm-svn: 57521 | |||||
* | Reapply 56585:56589 with proper fix for some gcc versions | Anton Korobeynikov | 2008-09-25 | 1 | -1/+1 | |
| | | | | llvm-svn: 56621 | |||||
* | Temporarily backing out 56585:56589 to unbreak the build. | Evan Cheng | 2008-09-25 | 1 | -1/+1 | |
| | | | | llvm-svn: 56607 | |||||
* | Get rid of virtual inheritance for ARM TAI | Anton Korobeynikov | 2008-09-24 | 1 | -1/+1 | |
| | | | | llvm-svn: 56587 | |||||
* | Use raw_ostream throughout the AsmPrinter. | Owen Anderson | 2008-08-21 | 1 | -3/+4 | |
| | | | | llvm-svn: 55092 | |||||
* | Move ARM to pluggable asmprinter | Anton Korobeynikov | 2008-08-17 | 1 | -5/+19 | |
| | | | | llvm-svn: 54889 | |||||
* | Switch ARM to new section handling stuff | Anton Korobeynikov | 2008-08-07 | 1 | -4/+11 | |
| | | | | llvm-svn: 54458 | |||||
* | Clean up the use of static and anonymous namespaces. This turned up | Dan Gohman | 2008-05-13 | 1 | -5/+3 | |
| | | | | | | | several things that were neither in an anonymous namespace nor static but not intended to be global. llvm-svn: 51017 | |||||
* | Match things like 'armv5tejl-unknown-linux-gnu' for PR2290 | Chris Lattner | 2008-05-06 | 1 | -1/+2 | |
| | | | | llvm-svn: 50698 | |||||
* | Use PassManagerBase instead of FunctionPassManager for functions | Dan Gohman | 2008-03-11 | 1 | -5/+5 | |
| | | | | | | | | that merely add passes. This allows them to be used with either FunctionPassManager or PassManager, or even with a custom new kind of pass manager. llvm-svn: 48256 | |||||
* | Remove attribution from file headers, per discussion on llvmdev. | Chris Lattner | 2007-12-29 | 1 | -2/+1 | |
| | | | | llvm-svn: 45418 | |||||
* | Enable if-conversion for ARM by default. | Evan Cheng | 2007-09-20 | 1 | -3/+3 | |
| | | | | llvm-svn: 42156 | |||||
* | Initial JIT support for ARM by Raul Fernandes Herbster. | Evan Cheng | 2007-08-07 | 1 | -2/+2 | |
| | | | | llvm-svn: 40887 | |||||
* | Added -print-emitted-asm to print out JIT generated asm to cerr. | Evan Cheng | 2007-07-20 | 1 | -2/+6 | |
| | | | | llvm-svn: 40123 | |||||
* | The various "getModuleMatchQuality" implementations should return | Chris Lattner | 2007-07-09 | 1 | -0/+5 | |
| | | | | | | zero if they see a target triple they don't understand. llvm-svn: 38463 | |||||
* | Initial ARM JIT support by Raul Fernandes Herbster. | Evan Cheng | 2007-07-05 | 1 | -2/+49 | |
| | | | | llvm-svn: 37926 | |||||
* | Move if-conversion after all passes that may use register scavenger. | Evan Cheng | 2007-05-16 | 1 | -8/+3 | |
| | | | | llvm-svn: 37120 | |||||
* | Hooks for predication support. | Evan Cheng | 2007-05-16 | 1 | -0/+11 | |
| | | | | llvm-svn: 37093 | |||||
* | Implement getTargetLowering() or else LSR won't be using ARM specific hooks. | Evan Cheng | 2007-03-13 | 1 | -1/+2 | |
| | | | | llvm-svn: 35077 | |||||
* | Added -march=thumb; removed -enable-thumb. | Evan Cheng | 2007-02-23 | 1 | -10/+23 | |
| | | | | llvm-svn: 34521 | |||||
* | Generalize TargetData strings, to support more interesting forms of data. | Chris Lattner | 2007-02-14 | 1 | -4/+6 | |
| | | | | | | Patch by Scott Michel. llvm-svn: 34266 | |||||
* | Add space between // and the comment. | Lauro Ramos Venancio | 2007-02-13 | 1 | -2/+2 | |
| | | | | llvm-svn: 34246 | |||||
* | Add ABI information to ARM subtarget. | Lauro Ramos Venancio | 2007-02-13 | 1 | -3/+5 | |
| | | | | llvm-svn: 34245 | |||||
* | According to ARM EABI, 8-bytes function arguments must be 8-bytes aligned. | Lauro Ramos Venancio | 2007-02-13 | 1 | -2/+2 | |
| | | | | llvm-svn: 34241 | |||||
* | Also set alignment of stack-based structs to 4 in thumb mode. | Evan Cheng | 2007-02-01 | 1 | -6/+6 | |
| | | | | llvm-svn: 33741 | |||||
* | Thumb add sp, #imm requires the immediate value be multiple of 4. For now, | Evan Cheng | 2007-01-31 | 1 | -2/+6 | |
| | | | | | | change preferred alignment of short, byte, bool to 4. llvm-svn: 33722 | |||||
* | ARM AAPCS abi (Linux, etc.) requires 8-byte double / long alignment; Mac | Evan Cheng | 2007-01-22 | 1 | -2/+2 | |
| | | | | | | requires 4-bytes alignment. llvm-svn: 33448 | |||||
* | Double and Long preferred alignment is 4 for Darwin, 8 for Linux. | Evan Cheng | 2007-01-22 | 1 | -1/+5 | |
| | | | | llvm-svn: 33440 | |||||
* | Clean up ARM PEI code. | Evan Cheng | 2007-01-20 | 1 | -4/+1 | |
| | | | | llvm-svn: 33389 | |||||
* | isDarwin -> isTargetDarwin | Evan Cheng | 2007-01-19 | 1 | -1/+1 | |
| | | | | llvm-svn: 33366 | |||||
* | ARM backend contribution from Apple. | Evan Cheng | 2007-01-19 | 1 | -10/+21 | |
| | | | | llvm-svn: 33353 | |||||
* | revert previous patch | Rafael Espindola | 2006-11-03 | 1 | -2/+0 | |
| | | | | llvm-svn: 31411 | |||||
* | add createCFGSimplificationPass to ARMTargetMachine::addInstSelector | Rafael Espindola | 2006-11-03 | 1 | -0/+2 | |
| | | | | llvm-svn: 31400 | |||||
* | most ARM targets are little endian | Rafael Espindola | 2006-10-09 | 1 | -1/+1 | |
| | | | | llvm-svn: 30826 | |||||
* | Implement a MachineFunctionPass to fix the mul instruction | Rafael Espindola | 2006-09-19 | 1 | -1/+6 | |
| | | | | llvm-svn: 30485 | |||||
* | 1. Remove condition on delete. | Jim Laskey | 2006-09-07 | 1 | -0/+7 | |
| | | | | | | | | 2. Protect and outline createTargetAsmInfo. 3. Misc. kruft. llvm-svn: 30169 | |||||
* | Completely rearchitect the interface between targets and the pass manager. | Chris Lattner | 2006-09-04 | 1 | -50/+6 | |
| | | | | | | | | | | | | | | | | | | | | | | | | This pass: 1. Splits TargetMachine into TargetMachine (generic targets, can be implemented any way, like the CBE) and LLVMTargetMachine (subclass of TM that is used by things using libcodegen and other support). 2. Instead of having each target fully populate the passmgr for file or JIT output, move all this to common code, and give targets hooks they can implement. 3. Commonalize the target population stuff between file emission and JIT emission. 4. All (native code) codegen stuff now happens in a FunctionPassManager, which paves the way for "fast -O0" stuff in the CFE later, and now LLC could lazily stream .bc files from disk to use less memory. 5. There are now many fewer #includes and the targets don't depend on the scalar xforms or libanalysis anymore (but codegen does). 6. Changing common code generator pass ordering stuff no longer requires touching all targets. 7. The JIT now has the option of "-fast" codegen or normal optimized codegen, which is now orthogonal to the fact that JIT'ing is being done. llvm-svn: 30081 | |||||
* | Simplify target construction. | Chris Lattner | 2006-09-03 | 1 | -2/+1 | |
| | | | | llvm-svn: 30070 | |||||
* | initial support for select | Rafael Espindola | 2006-08-21 | 1 | -0/+3 | |
| | | | | llvm-svn: 29802 | |||||
* | Declare the callee saved regs | Rafael Espindola | 2006-08-16 | 1 | -1/+2 | |
| | | | | | | | Remove the hard coded store and load of the link register Implement ARMFrameInfo llvm-svn: 29727 | |||||
* | correctly set LocalAreaOffset of TargetFrameInfo | Rafael Espindola | 2006-08-09 | 1 | -1/+1 | |
| | | | | llvm-svn: 29589 | |||||
* | Don't pass target name into TargetData anymore, it is never used or needed. | Chris Lattner | 2006-06-16 | 1 | -3/+1 | |
| | | | | | | | Remove explicit casts to std::string now that there is no overload resolution issues in the TargetData ctors. llvm-svn: 28830 |