summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix formatting of output .s codeJim Grosbach2010-09-231-1/+1
| | | | llvm-svn: 114705
* Add isConditionalMove bits to X86 and ARM instructions.Owen Anderson2010-09-235-10/+10
| | | | llvm-svn: 114703
* Set alignment operand for NEON VLD instructions.Bob Wilson2010-09-231-0/+16
| | | | llvm-svn: 114696
* Correctly handle weak undefined symbols. Before we would get a invalid bindingRafael Espindola2010-09-231-5/+20
| | | | | | (2 == STB_WEAK | STB_GLOBAL). llvm-svn: 114690
* never mind. I can't read, apparentlyJim Grosbach2010-09-231-1/+1
| | | | llvm-svn: 114689
* Fix r114632. Return if the only terminator is an unconditional branch after ↵Evan Cheng2010-09-231-3/+5
| | | | | | the redundant ones are deleted. llvm-svn: 114688
* Fix opcode value for the 'trap' instruction, keeping the type suffix on theJim Grosbach2010-09-231-1/+1
| | | | | | constant. Hopefully the non-Darwin bots will like it... llvm-svn: 114687
* explicit 'unsigned long' on constant value. Hopefully make bots happier.Jim Grosbach2010-09-231-1/+1
| | | | llvm-svn: 114686
* Unbreak build. Jim, please review.Benjamin Kramer2010-09-231-4/+4
| | | | llvm-svn: 114684
* Revert 114634 for now since buildbot claim it broke Clang self-hosting. I ↵Evan Cheng2010-09-231-4/+6
| | | | | | doubt it but it's possible it's exposing another bug somewhere. llvm-svn: 114681
* Clean up the 'trap' instruction printing a bit. Non-Darwin assemblers don'tJim Grosbach2010-09-233-6/+36
| | | | | | | | | | | | (yet) recognize the 'trap' mnemonic, so we use .short/.long to emit the opcode directly. On Darwin, however, we do want the mnemonic for more readable assembly code and better disassembly. Adjust the .td file to use the 'trap' mnemonic and handle using the binutils workaround in the assembly printer. Also tweak the formatting of the opcode values to make them consistent between the MC printer and the old printer. llvm-svn: 114679
* Correctly compute the offset of the symbol. Forgot these bits from theRafael Espindola2010-09-231-1/+4
| | | | | | last commit. llvm-svn: 114678
* nuke unused varJim Grosbach2010-09-231-1/+0
| | | | llvm-svn: 114676
* Represent relocations against local symbols as relocations against the sectionRafael Espindola2010-09-231-1/+1
| | | | | | | | | they are in. Both ways should be equivalent, but gas produces relocations against the section. Roman wrote the patch, I added the test. llvm-svn: 114667
* Fix llvm-extract so that it changes the linkage of all GlobalValues toBob Wilson2010-09-231-16/+14
| | | | | | | "external" even when doing lazy bitcode loading. This was broken because a function that is not materialized fails the !isDeclaration() test. llvm-svn: 114666
* Fix VS 2010 build.Oscar Fuentes2010-09-231-4/+4
| | | | | | Patch by Nathan Jeffords! llvm-svn: 114661
* Fix the FIXME.Rafael Espindola2010-09-231-1/+1
| | | | llvm-svn: 114639
* Follow up to r114630. Do not optimize away unconditional branch following a ↵Evan Cheng2010-09-231-6/+4
| | | | | | conditional one. llvm-svn: 114634
* Disable codegen prepare critical edge splitting. Machine instruction passes nowEvan Cheng2010-09-231-1/+5
| | | | | | break critical edges on demand. llvm-svn: 114633
* If there are multiple unconditional branches terminating a block, eliminate allEvan Cheng2010-09-231-1/+17
| | | | | | | but the first one. Those will never be executed. There was logic to do this but it was faulty. llvm-svn: 114632
* Don't sink insert_subreg, subreg_to_reg, reg_sequence. They are meant to beEvan Cheng2010-09-231-1/+10
| | | | | | close to their sources to facilitate coalescing. llvm-svn: 114631
* SDISel should not optimize a unconditional branch following a conditional branchEvan Cheng2010-09-231-4/+5
| | | | | | | | | | | | when the unconditional branch destination is the fallthrough block. The canonicalization makes it easier to allow optimizations on DAGs to invert conditional branches. The branch folding pass (and AnalyzeBranch) will clean up the unnecessary unconditional branches later. This is one of the patches leading up to disabling codegen prepare critical edge splitting. llvm-svn: 114630
* Moved the PBQP allocator class out of the header and back in to the cpp file ↵Lang Hames2010-09-231-60/+190
| | | | | | | | | | | | | | to hide the gory details. Allocator instances can now be created by calling createPBQPRegisterAllocator. Tidied up use of CoalescerPair as per Jakob's suggestions. Made the new PBQPBuilder based construction process the default. The internal construction process remains in-place and available via -pbqp-builder=false for now. It will be removed shortly if the new process doesn't cause any regressions. llvm-svn: 114626
* Fixed a crash in the enhanced disassembler whereSean Callanan2010-09-231-0/+2
| | | | | | | because of the lack of a newline, AsmToken::Eof was being found instead of AsmToken::EndOfStatement. llvm-svn: 114621
* Add support for ELF PLT references for ARM MC asm printing. Adding aJim Grosbach2010-09-225-18/+51
| | | | | | | | new VariantKind to the MCSymbolExpr seems like overkill, but I'm not sure there's a more straightforward way to get the printing difference captured. (i.e., x86 uses @PLT, ARM uses (PLT)). llvm-svn: 114613
* Enable a few additional asserts in MC instruction lowering.Jim Grosbach2010-09-221-9/+6
| | | | llvm-svn: 114601
* A select between a constant and zero, when fed by a bit test, can be efficientlyOwen Anderson2010-09-221-0/+29
| | | | | | | lowered using a series of shifts. Fixes <rdar://problem/8285015>. llvm-svn: 114599
* Fix PR8201: Update the code to call via X86::CALL64pcrel32 in the 64-bit case.Cameron Esfahani2010-09-221-2/+3
| | | | llvm-svn: 114597
* Change VDUPLANE DAG combiner to just return the result instead of callingBob Wilson2010-09-221-5/+3
| | | | | | | | CombineTo to avoid putting the result on the worklist. I don't think it makes much difference for now, but it might help someday as we add more DAG combine optimizations. llvm-svn: 114595
* Avoid some Mach-O specific alignment being done on ELF.Rafael Espindola2010-09-225-23/+28
| | | | llvm-svn: 114594
* allow target-specific label suffixes, patch by Yuri Gribov!Chris Lattner2010-09-222-1/+2
| | | | llvm-svn: 114592
* Combine both VMOVDRR(VMOVRRD) and VMOVRRD(VMOVDRR), instead of just doing oneBob Wilson2010-09-221-28/+35
| | | | | | | | of those. Refactor to share code for handling BUILD_VECTOR(VMOVRRD). I don't have a testcase that exercises this, but it seems like an obvious good thing to do. llvm-svn: 114589
* Teach memdep about TBAA tags.Dan Gohman2010-09-221-71/+95
| | | | llvm-svn: 114588
* Use DW_OP_fbreg when offset is based on frame register.Devang Patel2010-09-221-0/+10
| | | | llvm-svn: 114585
* add FIXMEJim Grosbach2010-09-221-0/+1
| | | | llvm-svn: 114578
* Temporarily work around new address lowering while I figure out whatEric Christopher2010-09-221-1/+2
| | | | | | needs to happen for darwin. llvm-svn: 114577
* Remove a few commented out bitsJim Grosbach2010-09-221-14/+0
| | | | llvm-svn: 114576
* Fix typo and add a FIXME.Rafael Espindola2010-09-221-1/+2
| | | | llvm-svn: 114570
* When moving zext/sext to be folded with a load, ignore the issue of whetherBob Wilson2010-09-221-1/+2
| | | | | | | | truncates are free only in the case where the extended type is legal but the load type is not. If both types are illegal, such as when they are too big, the load may not be legalized into an extended load. llvm-svn: 114568
* Add PrintSpecial() handling for in ARM MC instruction printer.Jim Grosbach2010-09-222-2/+9
| | | | llvm-svn: 114563
* grammar tweakageJim Grosbach2010-09-221-2/+2
| | | | llvm-svn: 114561
* remove trailing whitespaceJim Grosbach2010-09-221-31/+31
| | | | llvm-svn: 114560
* CrashRecovery/Darwin: Override raise() as well so that crash recovery doesn'tDaniel Dunbar2010-09-221-1/+5
| | | | | | | end up altering the thread on which crashes are done because of its use of Darwin's broken raise() implementation. llvm-svn: 114558
* Correctly align bss.Rafael Espindola2010-09-221-0/+6
| | | | llvm-svn: 114556
* Add MC instruction printer support for ARM and Thumb1 jump tables.Jim Grosbach2010-09-221-3/+49
| | | | llvm-svn: 114555
* Attempt to fix llvm-gcc build. It was crashing when building gcov.o for anBob Wilson2010-09-221-2/+3
| | | | | | | | ARM cross-compiler on x86, because the MMO size did not match the type size. This fixes the MMO size and also the size of the stack object to match the type size. llvm-svn: 114554
* Add MC instruction printer support for TB[BH] style thumb2 jump tables.Jim Grosbach2010-09-221-24/+27
| | | | llvm-svn: 114553
* Clean up comment.Jim Grosbach2010-09-221-4/+4
| | | | llvm-svn: 114550
* fix rdar://8456371 - Handle commutable instructions written backward.Chris Lattner2010-09-221-0/+10
| | | | llvm-svn: 114536
* Fix an inconsistency in the x86 backend that led it to reject "calll foo" onChris Lattner2010-09-223-5/+15
| | | | | | | | | | | | x86-32: 32-bit calls were named "call" not "calll". 64-bit calls were correctly named "callq", so this only impacted x86-32. This fixes rdar://8456370 - llvm-mc rejects 'calll' This also exposes that mingw/64 is generating a 32-bit call instead of a 64-bit call, I will file a bugzilla. llvm-svn: 114534
OpenPOWER on IntegriCloud