summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* the apple "ld_classic" linker doesn't support .literal16 in 32-bitChris Lattner2009-07-284-8/+15
| | | | | | | mode, and "ld64" (the default linker) falls back to it in -static mode. llvm-svn: 77334
* Add Thumb-2 patterns for ARMsrl_flag and ARMsra_flag.David Goodwin2009-07-281-1/+10
| | | | llvm-svn: 77329
* Add reload and remat backscheduling. This is disabled by default. UseDavid Greene2009-07-281-26/+150
| | | | | | -schedule-spills=true to enable. llvm-svn: 77327
* fix unused variable warningChris Lattner2009-07-281-1/+1
| | | | llvm-svn: 77326
* tADDrSPI doesn't have a predicate operand, but tADDhirr and tADDi3 have.Evan Cheng2009-07-281-0/+5
| | | | llvm-svn: 77305
* Code clean up. No functionality changes.Evan Cheng2009-07-281-21/+32
| | | | llvm-svn: 77301
* - More refactoring. This gets rid of all of the getOpcode calls.Evan Cheng2009-07-2816-566/+607
| | | | | | | | | | | - This change also makes it possible to switch between ARM / Thumb on a per-function basis. - Fixed thumb2 routine which expand reg + arbitrary immediate. It was using using ARM so_imm logic. - Use movw and movt to do reg + imm when profitable. - Other code clean ups and minor optimizations. llvm-svn: 77300
* fix a casting problem on the llvm-x86_64-linux testerChris Lattner2009-07-281-1/+1
| | | | llvm-svn: 77295
* Rip all of the global variable lowering logic out of TargetAsmInfo. SinceChris Lattner2009-07-2857-1255/+1452
| | | | | | | | | | | | | | | | | | | | it is highly specific to the object file that will be generated in the end, this introduces a new TargetLoweringObjectFile interface that is implemented for each of ELF/MachO/COFF/Alpha/PIC16 and XCore. Though still is still a brutal and ugly refactoring, this is a major step towards goodness. This patch also: 1. fixes a bunch of dangling pointer problems in the PIC16 backend. 2. disables the TargetLowering copy ctor which PIC16 was accidentally using. 3. gets us closer to xcore having its own crazy target section flags and pic16 not having to shadow sections with its own objects. 4. fixes wierdness where ELF targets would set CStringSection but not CStringSection_. Factor the code better. 5. fixes some bugs in string lowering on ELF targets. llvm-svn: 77294
* don't copy TargetLowering.Chris Lattner2009-07-281-1/+1
| | | | llvm-svn: 77293
* Teach instcombine to respect and preserve inbounds. Add inboundsDan Gohman2009-07-282-22/+56
| | | | | | to a few tests where it is required for the expected transformation. llvm-svn: 77290
* Fix a small little typo.Mike Stump2009-07-281-1/+1
| | | | llvm-svn: 77289
* Replace dyn_castGetElementPtr with dyn_cast<GEPOperator>.Dan Gohman2009-07-281-15/+5
| | | | llvm-svn: 77286
* Grab the LLVMContext and parent Module of SI ahead of theDan Gohman2009-07-281-3/+4
| | | | | | | point where SI can get deleted. This fixes a use of free'd memory. This fixes Externals/Povray. llvm-svn: 77285
* ORN does not require (and can not have) the ".w" suffix. "Orthogonality" is ↵David Goodwin2009-07-271-7/+13
| | | | | | a dirty word at ARM. llvm-svn: 77275
* Fix a release-asserts warning. Debug functions should be marked used,Mike Stump2009-07-271-0/+2
| | | | | | | if there are no other uses. If people don't need this routine anymore, if should be deleted. llvm-svn: 77274
* llvm-mc: Implement .abort fully in the front endDaniel Dunbar2009-07-271-10/+0
| | | | llvm-svn: 77272
* Avoid build warnings.Mike Stump2009-07-273-0/+3
| | | | llvm-svn: 77271
* Move ConstantStruct back to 2.5 API.Owen Anderson2009-07-2713-166/+121
| | | | llvm-svn: 77266
* Add a comment about the "getelementptr null" trick.Dan Gohman2009-07-271-0/+1
| | | | llvm-svn: 77262
* Add a new keyword 'inbounds' for use with getelementptr. See theDan Gohman2009-07-276-2/+30
| | | | | | LangRef.html changes for details. llvm-svn: 77259
* llvm-mc: Move AsmLexer::getCurStrVal to StringRef based API.Daniel Dunbar2009-07-272-7/+7
| | | | | | - My DFS traversal of LLVM is, at least for now, nearly complete! :) llvm-svn: 77258
* Unbreak build.Daniel Dunbar2009-07-271-2/+0
| | | | llvm-svn: 77256
* Make raw_null_ostream flush its buffer in its destructor, so thatDan Gohman2009-07-271-0/+9
| | | | | | | it conforms to the assertion added in r77245. This fixes a failure in qa_override.c in clang's testsuite. llvm-svn: 77255
* hoist MCContext/MCStreamer up to AsmPrinter since we're going to start creatingChris Lattner2009-07-273-30/+12
| | | | | | | MCSections soon instead of Section for all targets, and we need something to own them. llvm-svn: 77252
* Move MCContext and friends to StringRef based APIs.Daniel Dunbar2009-07-271-6/+6
| | | | llvm-svn: 77251
* Move ConstantFP construction back to the 2.5-ish API.Owen Anderson2009-07-2717-164/+147
| | | | llvm-svn: 77247
* Add an assertion check to raw_ostream's destructor to verifyDan Gohman2009-07-271-0/+5
| | | | | | that the subclass hasn't left any pending data in the buffer. llvm-svn: 77245
* Remove TPat. No patterns depend on just isThumb(). Must use either T1Pat ↵David Goodwin2009-07-272-30/+26
| | | | | | (isThumb1Only()) or T2Pat (is Thumb2). llvm-svn: 77242
* fix commentBruno Cardoso Lopes2009-07-271-1/+1
| | | | llvm-svn: 77239
* add module identifier to the elf object fileBruno Cardoso Lopes2009-07-273-9/+26
| | | | llvm-svn: 77238
* Sink getSectionPrefixForUniqueGlobal down into the TAI Chris Lattner2009-07-273-111/+148
| | | | | | implementations that need it, rearrange ELFTAI. llvm-svn: 77236
* remove dead code.Chris Lattner2009-07-272-6/+3
| | | | llvm-svn: 77233
* Handle external symbols for ELF and add some static methods to ELFSymBruno Cardoso Lopes2009-07-274-46/+155
| | | | llvm-svn: 77232
* More DCE.Evan Cheng2009-07-274-17/+1
| | | | llvm-svn: 77231
* convertToThreeAddress can't handle Thumb2 instructions (which don't have ↵Evan Cheng2009-07-271-10/+7
| | | | | | same address mode as ARM instructions). llvm-svn: 77230
* Initialize mdnNext.Devang Patel2009-07-271-1/+1
| | | | llvm-svn: 77229
* Get rid of more dead code.Evan Cheng2009-07-275-9/+1
| | | | llvm-svn: 77227
* Cosmetic change.Evan Cheng2009-07-271-2/+4
| | | | llvm-svn: 77222
* Clean up.Evan Cheng2009-07-272-5/+6
| | | | llvm-svn: 77221
* Get rid of some more getOpcode calls.Evan Cheng2009-07-276-33/+46
| | | | | | This also fixes potential problems in ARMBaseInstrInfo routines not recognizing thumb1 instructions when 32-bit and 16-bit instructions mix. llvm-svn: 77218
* Fix build.Mike Stump2009-07-271-0/+1
| | | | llvm-svn: 77217
* Remove duplicate entries while printing decls for external symbols.Sanjiv Gupta2009-07-271-2/+23
| | | | | | Some libcall names are same, so they were getting printed twice. llvm-svn: 77215
* CMake: make sure that the *.inc files for libSystem show up in the resulting Douglas Gregor2009-07-271-0/+23
| | | | | | project. llvm-svn: 77213
* add an explanatory comment about why we drop these in readonly andChris Lattner2009-07-271-2/+6
| | | | | | not in mergable llvm-svn: 77210
* Do not seed mstadata into the value map.Devang Patel2009-07-271-25/+4
| | | | llvm-svn: 77208
* make COFF work like ELF and macho, by splitting out into its ownChris Lattner2009-07-273-67/+83
| | | | | | header even though there is only one COFF target. llvm-svn: 77204
* don't create default text/data sections for all targets.Chris Lattner2009-07-271-2/+0
| | | | llvm-svn: 77203
* Apparently alpha doesn't use ElfTargetAsmInfo (?)Chris Lattner2009-07-271-0/+3
| | | | llvm-svn: 77202
* Thumb-2 does not have RSC.David Goodwin2009-07-271-34/+1
| | | | llvm-svn: 77201
OpenPOWER on IntegriCloud