summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Extend Clang's TableGen emitter for attributes to support bool arguments.Douglas Gregor2011-03-261-0/+2
| | | | llvm-svn: 128330
* Collect and coalesce DBG_VALUE instructions before emitting the function.Jakob Stoklund Olesen2011-03-264-111/+192
| | | | | | | | | | | Correctly terminate the range of register DBG_VALUEs when the register is clobbered or when the basic block ends. The code is now ready to deal with variables that are sometimes in a register and sometimes on the stack. We just need to teach emitDebugLoc to say 'stack slot'. llvm-svn: 128327
* Fixed the t2PLD and friends disassembly and add two test cases.Johnny Chen2011-03-263-10/+45
| | | | llvm-svn: 128322
* Fix the bfi handling for or (and a mask) (and b mask). We need the twoEric Christopher2011-03-262-9/+21
| | | | | | | | | | | | | | masks to match inversely for the code as is to work. For the example given we actually want: bfi r0, r2, #1, #1 not #0, however, given the way the pattern is written it's not possible at the moment. Fixes rdar://9177502 llvm-svn: 128320
* PR9561: A store with a negative offset (via GEP) could erroniously say that itBill Wendling2011-03-262-0/+24
| | | | | | | completely overlaps a previous store, thus mistakenly deleting that store. Check for this condition. llvm-svn: 128319
* Remove the files for r128308 as it is causing a buildbot failure.Kevin Enderby2011-03-263-365/+0
| | | | llvm-svn: 128309
* Adding a C API to the disassembler for use by such tools as Darwin's otool(1).Kevin Enderby2011-03-263-0/+365
| | | | | | | | | | This is a work in progress as the interface for producing symbolic operands is not done. But a hacked prototype using information from the object file's relocation entiries and replacing immediate operands with MCExpr's has been shown to work with no changes to the instrucion printer. These APIs will be moved into a dynamic library at some point. llvm-svn: 128308
* Add test for A8.6.246 UMULL to both arm-tests.txt amd thumb-tests.txt.Johnny Chen2011-03-252-0/+6
| | | | llvm-svn: 128306
* Add two test cases t2SMLABT and t2SMMULR for DisassembleThumb2Mul().Johnny Chen2011-03-251-0/+6
| | | | llvm-svn: 128305
* Fix DisassembleThumb2DPReg()'s handling of RegClass. Cannot hardcode ↵Johnny Chen2011-03-252-6/+15
| | | | | | | | | | GPRRegClassID. Also add some test cases. rdar://problem/9189829 llvm-svn: 128304
* DisassembleThumb2LdSt() did not handle t2LDRs correctly with respect to ↵Johnny Chen2011-03-252-2/+9
| | | | | | | | RegClass. Add two test cases. rdar://problem/9182892 llvm-svn: 128299
* A8.6.226 TBB, TBH:Johnny Chen2011-03-251-0/+6
| | | | | | Add two test cases. llvm-svn: 128295
* Modify DisassembleThumb2LdStEx() to be more robust/correct in light of ↵Johnny Chen2011-03-252-6/+12
| | | | | | | | recent change to t2LDREX/t2STREX instructions. Add two test cases. llvm-svn: 128293
* MC: Improve some diagnostics on uses of '.' pseudo-symbol.Daniel Dunbar2011-03-252-1/+30
| | | | llvm-svn: 128289
* Tidyness.Daniel Dunbar2011-03-251-2/+2
| | | | llvm-svn: 128288
* Add a note.Benjamin Kramer2011-03-251-0/+19
| | | | llvm-svn: 128286
* Instruction formats of SWP/SWPB were changed from LdStExFrm to MiscFrm. ↵Johnny Chen2011-03-252-0/+8
| | | | | | | | Modify the disassembler to handle that. rdar://problem/9184053 llvm-svn: 128285
* Emit less labels for debug info and stop emitting .loc directives for ↵Jakob Stoklund Olesen2011-03-255-65/+52
| | | | | | | | | | | | DBG_VALUEs. The .dot directives don't need labels, that is a leftover from when we created line number info manually. Instructions following a DBG_VALUE can share its label since the DBG_VALUE doesn't produce any code. llvm-svn: 128284
* Also need to handle invalid imod values for CPS2p.Johnny Chen2011-03-252-4/+15
| | | | | | rdar://problem/9186136 llvm-svn: 128283
* Useful script for finding regressions in the nightly testsuite.Duncan Sands2011-03-251-0/+130
| | | | | | I think it was written by Pawel Worach. llvm-svn: 128268
* Remove redundant compression option.Bill Wendling2011-03-251-4/+4
| | | | llvm-svn: 128267
* Fix for -pre-RA-sched=source.Andrew Trick2011-03-251-0/+2
| | | | | | | Yet another case of unchecked NULL node (for physreg copy). May fix PR9509. llvm-svn: 128266
* No functionality change, just adjust some whitespace for coding style ↵Nick Lewycky2011-03-251-2/+2
| | | | | | compliance. llvm-svn: 128257
* No functionality change. Fix up some whitespace and switch out "" for '' whenNick Lewycky2011-03-251-3/+3
| | | | | | printing a single character. llvm-svn: 128256
* Ignore special ARM allocation hints for unexpected register classes.Jakob Stoklund Olesen2011-03-252-0/+5
| | | | | | | | | Add an assertion to linear scan to prevent it from allocating registers outside the register class. <rdar://problem/9183021> llvm-svn: 128254
* Modify the wrong logic in the assert of DisassembleThumb2LdStDual() (the ↵Johnny Chen2011-03-252-9/+12
| | | | | | | | register classes were changed), modify the comment to be up-to-date, and add a test case for A8.6.66 LDRD (immediate) Encoding T1. llvm-svn: 128252
* delegate the disassembly of t2ADR to the more generic t2ADDri12/t2SUBri12 ↵Johnny Chen2011-03-252-0/+8
| | | | | | instructions, and add a test case for that. llvm-svn: 128249
* The opcode names ("tLDM", "tLDM_UPD") used for conflict resolution have been ↵Johnny Chen2011-03-242-2/+8
| | | | | | | | | stale since the change to ("tLDMIA", "tLDMIA_UPD"). Update the conflict resolution code and add test cases for that. llvm-svn: 128247
* The ARM disassembler was confused with the 16-bit tSTMIA instruction.Johnny Chen2011-03-242-0/+8
| | | | | | | According to A8.6.189 STM/STMIA/STMEA (Encoding T1), there's only tSTMIA_UPD available. Ignore tSTMIA for the decoder emitter and add a test case for that. llvm-svn: 128246
* Move test in x86 specific area.Devang Patel2011-03-241-0/+3
| | | | llvm-svn: 128245
* Suppress an unused variable warning in -asserts buildsMatt Beaumont-Gay2011-03-241-0/+1
| | | | llvm-svn: 128244
* Handle the added VBICiv*i* NEON instructions, too.Johnny Chen2011-03-242-2/+10
| | | | llvm-svn: 128243
* Testcase for llvm-gcc commit r128230.Eric Christopher2011-03-241-0/+11
| | | | llvm-svn: 128242
* Plug a leak by ThumbDisassembler::getInstruction(), thanks to Benjamin Kramer!Johnny Chen2011-03-241-3/+1
| | | | llvm-svn: 128241
* T2 Load/Store Multiple:Johnny Chen2011-03-242-1/+4
| | | | | | | These instructions were changed to not embed the addressing mode within the MC instructions We also need to update the corresponding assert stmt. Also add a test case. llvm-svn: 128240
* Plug a leak in the arm disassembler and put the tests back.Benjamin Kramer2011-03-243-3/+10
| | | | llvm-svn: 128238
* Add asm parsing support w/ testcases for strex/ldrex family of instructionsBruno Cardoso Lopes2011-03-2411-61/+156
| | | | llvm-svn: 128236
* Remove these two test files as they cause llvm-i686-linux-vg_leak build to ↵Johnny Chen2011-03-242-8/+0
| | | | | | | | fail 'test-llvm'. These two are test cases which should result in 'invalid instruction encoding' from running llvm-mc -disassemble. llvm-svn: 128235
* ADR was added with the wrong encoding for inst{24-21}, and the ARM decoder ↵Johnny Chen2011-03-243-1/+8
| | | | | | | | | was fooled. Set the encoding bits to {0,?,?,0}, not 0. Plus delegate the disassembly of ADR to the more generic ADDri/SUBri instructions, and add a test case for that. llvm-svn: 128234
* Keep track of directory namd and fIx regression caused by Rafael's patch ↵Devang Patel2011-03-244-13/+96
| | | | | | | | r119613. A better approach would be to move source id handling inside MC. llvm-svn: 128233
* Clean up assembly statement separator support.Jim Grosbach2011-03-245-14/+25
| | | | | | | | The MC asm lexer wasn't honoring a non-default (anything but ';') statement separator. Fix that, and generalize a bit to support multi-character statement separators. llvm-svn: 128227
* The r118201 added support for VORR (immediate). Update ↵Johnny Chen2011-03-242-0/+19
| | | | | | | | ARMDisassemblerCore.cpp to disassemble the VORRiv*i* instructions properly within the DisassembleN1RegModImmFrm() function. Add a test case. llvm-svn: 128226
* Add comments to the handling of opcode CPS3p to reject invalid instruction ↵Johnny Chen2011-03-243-0/+10
| | | | | | | | encoding, a test case of invalid CPS3p encoding and one for invalid VLDMSDB due to regs out of range. llvm-svn: 128220
* revert r128199 until it can be made to work with Frontend/dependency-gen.c.Andrew Trick2011-03-241-5/+9
| | | | llvm-svn: 128218
* Debug intrinsics must be skipped at the beginning and ends of blocks, lest theyCameron Zwarich2011-03-241-2/+6
| | | | | | affect the generated code. llvm-svn: 128217
* Fix typo in comment.Jay Foad2011-03-241-1/+1
| | | | llvm-svn: 128216
* fix description, PR9542Chris Lattner2011-03-241-5/+6
| | | | llvm-svn: 128214
* It is enough for the CallInst to have no uses to be made a tail call with a retCameron Zwarich2011-03-241-1/+1
| | | | | | void; it doesn't need to have a void type. llvm-svn: 128212
* s/UpdateDT/ModifiedDT/gDevang Patel2011-03-241-8/+8
| | | | llvm-svn: 128211
* Target/X86: [PR8777][PR8778] Tweak alloca/chkstk for Windows targets.NAKAMURA Takumi2011-03-245-63/+182
| | | | | FIXME: Some cleanups would be needed. llvm-svn: 128206
OpenPOWER on IntegriCloud