summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
Commit message (Collapse)AuthorAgeFilesLines
* Implement cond ? -1 : 0 with sbb.Evan Cheng2010-01-261-2/+25
| | | | llvm-svn: 94490
* Accept immediate as value of a dbg_value.Dale Johannesen2010-01-261-2/+3
| | | | llvm-svn: 94489
* Added the implementation of the Intel-specificSean Callanan2010-01-261-1/+27
| | | | | | TargetAsmLexer. llvm-svn: 94482
* Generate DEBUG_VALUE comments on x86. The (limited)Dale Johannesen2010-01-261-0/+10
| | | | | | | dbg.declare's we currently generate go through both register allocators without perturbing the results. llvm-svn: 94480
* Added the TargetAsmLexer implementation for AT&T syntax.Sean Callanan2010-01-261-5/+70
| | | | llvm-svn: 94479
* use findDebugLoc in more places.Dale Johannesen2010-01-261-10/+5
| | | | llvm-svn: 94477
* Minor jump table cleanup.Jim Grosbach2010-01-251-2/+2
| | | | llvm-svn: 94475
* in 32-bit pic mode for targets with a GOT, x86 emits jump tableChris Lattner2010-01-252-0/+17
| | | | | | entries with @GOTOFF whih is EK_GPRel32BlockAddress. llvm-svn: 94474
* fix quoting problem jim noticed!Chris Lattner2010-01-251-1/+1
| | | | llvm-svn: 94472
* Rearrange handling of jump tables. Highlights:Chris Lattner2010-01-251-1/+1
| | | | | | | | | | | | | | | | | | 1. MachineJumpTableInfo is now created lazily for a function the first time it actually makes a jump table instead of for every function. 2. The encoding of jump table entries is now described by the MachineJumpTableInfo::JTEntryKind enum. This enum is determined by the TLI::getJumpTableEncoding() hook, instead of by lots of code scattered throughout the compiler that "knows" that jump table entries are always 32-bits in pic mode (for example). 3. The size and alignment of jump table entries is now calculated based on their kind, instead of at machinefunction creation time. Future work includes using the EntryKind in more places in the compiler, eliminating other logic that "knows" the layout of jump tables in various situations. llvm-svn: 94470
* prep work to support a future where getJumpTableInfo will returnChris Lattner2010-01-253-1/+7
| | | | | | | a null pointer for functions with no jump tables. No functionality change. llvm-svn: 94469
* add a method to get the alignment of an integer type even Chris Lattner2010-01-251-0/+7
| | | | | | | when we don't have one laying around. Useful if you don't have an llvmcontext handy. llvm-svn: 94468
* Make it SP, LR, PC for GPR Register Class instead of LR, SP, PC.Johnny Chen2010-01-251-1/+1
| | | | llvm-svn: 94465
* eliminate redundant argument to EmitJumpTableInfoChris Lattner2010-01-258-9/+9
| | | | llvm-svn: 94464
* Implemented ARMInstPrinter::printThumbS4ImmOperand().Johnny Chen2010-01-251-2/+1
| | | | llvm-svn: 94457
* Implemented the dialect decision logic for the X86Sean Callanan2010-01-251-2/+20
| | | | | | | | TargetAsmLexer. Dialect-specific lexing code will be placed in the functions LexTokenATT() and LexTokenIntel(). llvm-svn: 94456
* Fixed the order of GPR RegisterClass regs to be: ..., R10, R11, R12, ...Johnny Chen2010-01-251-1/+1
| | | | llvm-svn: 94455
* handle the _set_ symbol with an MCSymbol.Chris Lattner2010-01-251-2/+1
| | | | llvm-svn: 94449
* rename MAI::PICJumpTableDirective to MAI::GPRel32Directive toChris Lattner2010-01-252-2/+2
| | | | | | make it clear what it is, instead of how it is used. llvm-svn: 94448
* pull the non-pic jump table case out of printPICJumpTableEntryChris Lattner2010-01-251-1/+2
| | | | | | | and MCize the non-pic case. Now printPICJumpTableEntry really is just about printing PIC entries. llvm-svn: 94446
* remove JumpTableDirective, it is always null.Chris Lattner2010-01-251-1/+1
| | | | llvm-svn: 94445
* mcize jump table symbol manipulation.Chris Lattner2010-01-251-33/+38
| | | | llvm-svn: 94441
* sink an arm specific method out of asmprinter into the ARMAsmPrinter andChris Lattner2010-01-252-5/+17
| | | | | | rename it to avoid shadowing. llvm-svn: 94440
* remove dead code: the x86 target never sets usesGlobalOffsetTable, Chris Lattner2010-01-251-2/+0
| | | | | | even on x86-32/elf which uses a GOT. llvm-svn: 94439
* mcstreamerize .file and .file. This also fixes an issue where theChris Lattner2010-01-251-1/+4
| | | | | | | normal form of .file would fail if the filename had a weird character in it. llvm-svn: 94437
* emit ELF .type directives through MCStreamer instead of doing it textually.Chris Lattner2010-01-251-1/+1
| | | | llvm-svn: 94436
* Remove support for i386 tiger tools for aligned common symbols.Chris Lattner2010-01-251-3/+0
| | | | | | | | | Previously we would just silently miscompile code that used aligned common's, now at least you'll get a build error. tiger-ppc already triggered the build error because it didn't have a version of this logic. llvm-svn: 94412
* don't set value to its default.Chris Lattner2010-01-252-2/+0
| | | | llvm-svn: 94411
* ARM does accept the .comm directive alignment.Jim Grosbach2010-01-251-1/+0
| | | | llvm-svn: 94408
* Fix PR6134.Rafael Espindola2010-01-251-3/+1
| | | | | | | We are not emitting alignments on Darwin for "bar". Not sure what is the correct way to do it. llvm-svn: 94400
* linux/ppc does use alignment in bytes, not pow-2. This fixes PR6129.Chris Lattner2010-01-241-1/+0
| | | | | | | | It looks like linux/arm and linux/mips have the same setting, which are probably wrong. Someone who cares about ARM and MIPS should investigate with the testcase in PR6129. llvm-svn: 94381
* don't reset the default.Chris Lattner2010-01-241-2/+0
| | | | llvm-svn: 94380
* make -fno-rtti the default unless a directory builds with REQUIRES_RTTI.Chris Lattner2010-01-2447-52/+0
| | | | llvm-svn: 94378
* reassociate should do this.Chris Lattner2010-01-241-1/+1
| | | | llvm-svn: 94374
* add a note.Chris Lattner2010-01-241-0/+39
| | | | llvm-svn: 94373
* move PR5945 here.Chris Lattner2010-01-241-0/+29
| | | | llvm-svn: 94350
* fix a parsing problem on instructions like:Chris Lattner2010-01-241-2/+2
| | | | | | | | movw $8, (_cost_table_-L97$pb)+66(%eax) After the parens, we could still have a binop. llvm-svn: 94345
* change the canonical form of "cond ? -1 : 0" to be Chris Lattner2010-01-241-8/+5
| | | | | | | | "sext cond" instead of a select. This simplifies some instcombine code, matches the policy for zext (cond ? 1 : 0 -> zext), and allows us to generate better code for a testcase on ppc. llvm-svn: 94339
* Improved widening loads by adding support for wider loads ifMon P Wang2010-01-243-0/+54
| | | | | | | the alignment allows. Fixed a bug where we didn't use a vector load/store for PR5626. llvm-svn: 94338
* implement a simple instcombine xform that has been in theChris Lattner2010-01-231-18/+2
| | | | | | readme forever. llvm-svn: 94318
* add a noteChris Lattner2010-01-231-0/+29
| | | | llvm-svn: 94317
* add some notes, making posix-memalign be nocapture would be an easy improvement.Chris Lattner2010-01-231-0/+31
| | | | llvm-svn: 94312
* Remove the '-disable-scheduling' flag and replace it with the 'source' option ofBill Wendling2010-01-231-6/+0
| | | | | | | | | the '-pre-RA-sched' flag. It actually makes more sense to do it this way. Also, keep track of the SDNode ordering by default. Eventually, we would like to make this ordering a way to break a "tie" in the scheduler. However, doing that now breaks the "CodeGen/X86/abi-isel.ll" test for 32-bit Linux. llvm-svn: 94308
* mcize lcomm, simplify .comm, extend both to support 64-bit sizes.Chris Lattner2010-01-233-3/+3
| | | | llvm-svn: 94299
* resolve a fixme: the "nonexecutable stack directive" is actuallyChris Lattner2010-01-234-5/+13
| | | | | | | | | a .section. Switch to it with SwitchSection. However, I think that this directive should be safe on any ELF target. If so, we should hoist it up out of the X86 and SystemZ targets. llvm-svn: 94298
* use helpers.Chris Lattner2010-01-231-12/+5
| | | | llvm-svn: 94296
* move the various directive enums out of the MCStreamer classChris Lattner2010-01-233-6/+6
| | | | | | into a new MCDirectives.h file. llvm-svn: 94294
* Don't lower splat vector load to relative to the esp if theEric Christopher2010-01-231-11/+4
| | | | | | | | | | stack may be misaligned. Update test accordingly. Patch by Evan Cheng! llvm-svn: 94291
* remove unneeded directive set.Chris Lattner2010-01-231-1/+0
| | | | llvm-svn: 94286
* use some helpers instead of duplicating logic.Chris Lattner2010-01-232-6/+7
| | | | llvm-svn: 94285
OpenPOWER on IntegriCloud