5d637d7e93c1f6058c16b41b8ac7dd36c61b4a5c |
|
05-Sep-2012 |
Chad Rosier <mcrosier@apple.com> |
Fix function name per coding standard. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163187 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2cc97def7434345e399e4f5f3f2001d6d7a93c6f |
|
03-Sep-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Asm operands can map to one or more MCOperands. Therefore, add the NumMCOperands argument to the GetMCInstOperandNum() function that is set to the number of MCOperands this asm operand mapped to. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163124 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
038f3e31276f8cc86d91d0e4513e1a3ddb8509ba |
|
03-Sep-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Add an interface to the GetMCInstOperandNum() function in the MCTargetAsmParser class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163122 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c4d2560a2010456f4eea0007eb71829d5668e7dd |
|
03-Sep-2012 |
Chad Rosier <mcrosier@apple.com> |
Removed unused argument. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163104 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
3a86e1396230748f17a521915bc802939a787eac |
|
03-Sep-2012 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Expose the Kind and Opcode variables from the MatchInstructionImpl() function. These values are used by the ConvertToMCInst() function to index into the ConversionTable. The values are also needed to call the GetMCInstOperandNum() function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163101 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
756d2cc2f7f6745603fdc0ec1ed4476d06385845 |
|
01-Sep-2012 |
Chad Rosier <mcrosier@apple.com> |
Remove an unused argument. The MCInst opcode is set in the ConvertToMCInst() function nowadays. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163030 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
429af6fa4124d8b6dd310069e0a44dcacb35fc8a |
|
31-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
Add a comment to explain what's really going on. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163005 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
5d04a560a875eef5cc7ae2bfadaf7d46ea8a60c5 |
|
31-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
The ConvertToMCInst() function can't fail, so remove the now dead Match_ConversionFail enum. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163002 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
359956dc1be35df4f8179eb14cea617c3ef10dd7 |
|
31-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
With the fix in r162954/162955 every cvt function returns true. Thus, have the ConvertToMCInst() return void, rather then a bool. Update all the cvt functions as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162961 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
fafa283e65bca1473eace94057077129a76dbdcc |
|
31-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
Fix for r162954. Return the Error. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162955 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
64b3444cbf7f5976502ff4cf6fc89aed4986b59c |
|
31-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
Move a check to the validateInstruction() function where it more properly belongs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162954 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
1122fc40c16785d510025daeb6c72a075f7e2e5b |
|
31-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
Typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162952 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
df1c637ac4b6f6587c037be55cafed665c732d8f |
|
10-Aug-2012 |
Eric Christopher <echristo@apple.com> |
Remove getARMRegisterNumbering and replace with calls into the register info for getEncodingValue. This builds on the small patch of yesterday to set HWEncoding in the register file. One (deprecated) use was turned into a hard number to avoid needing register info in the old JIT. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161628 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
fd652df8b36a9d3e6b09ae2b9f7bcb07e88fdfaa |
|
02-Aug-2012 |
Jiangning Liu <jiangning.liu@arm.com> |
Fix #13035, a bug around Thumb instruction LDRD/STRD with negative #0 offset index issue. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161162 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c1b7ca5ba28ded2d83ae534c8e072c2538d43295 |
|
02-Aug-2012 |
Jiangning Liu <jiangning.liu@arm.com> |
Fix #13138, a bug around ARM instruction DSB encoding and decoding issue. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161161 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
1fb27eccf5b7eabde9678d84411eb1df8a693683 |
|
02-Aug-2012 |
Jiangning Liu <jiangning.liu@arm.com> |
Fix #13241, a bug around shift immediate operand for ARM instruction ADR. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161159 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
874b863f2ab9158db6f7f1b773b77e6334e31c41 |
|
09-Jul-2012 |
Richard Barton <richard.barton@arm.com> |
Some formatting to keep Clang happy git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159948 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8ed97ef5f6980c689a5770ec30488601201e17c3 |
|
09-Jul-2012 |
Richard Barton <richard.barton@arm.com> |
Prevent ARM assembler from losing a right shift by #32 applied to a register git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159937 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c985e6ece66cf2046f0113da9eb2dec331a6b09f |
|
09-Jul-2012 |
Richard Barton <richard.barton@arm.com> |
Spelling! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159936 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2b6652fb10d7005e41010b0e0800afe16ae18a34 |
|
09-Jul-2012 |
Richard Barton <richard.barton@arm.com> |
Teach the assembler to use the narrow thumb encodings of various three-register dp instructions where permissable. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159935 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4acefe192f02849bcb2fd620a9f507c00d39a686 |
|
27-Jun-2012 |
Richard Barton <richard.barton@arm.com> |
Teach assembler to handle capitalised operation values for DSB instructions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159259 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b69182095ce19c07a7207ab546f61bffc5111d8e |
|
27-Jun-2012 |
Richard Barton <richard.barton@arm.com> |
Prevent ARM Assembler crashing on unrecognised assembly format for DSB instruction git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159257 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
70c9bf3c1a77b5707c92a7cfe74104c320480391 |
|
23-Jun-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM: Add a better diagnostic for some out of range immediates. As an example of how the custom DiagnosticType can be used to provide better operand-mismatch diagnostics, add a custom diagnostic for the imm0_15 operand class used for several system instructions. Update the tests to expect the improved diagnostic. rdar://8987109 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159051 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f49a4092bcf679d1634a8023efc593e98a3e5663 |
|
16-Jun-2012 |
Kevin Enderby <enderby@apple.com> |
Fix the encoding of the armv7m (MClass) for MSR registers other than aspr, iaspr, espr and xpsr which also needed to have 0b10 in their mask encoding bits. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158560 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
a1c7367a5bed459acc88e3ea2a482b4b5dac942a |
|
14-Jun-2012 |
Richard Barton <richard.barton@arm.com> |
Replace assertion failure for badly formatted CPS instrution with error message. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158445 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d9b0b025612992a0b724eeca8bdf10b1d7a5c355 |
|
02-Jun-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Fix typos found by http://github.com/lyda/misspell-check git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157885 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
032f441afcdd70eb6bda477d32e8c372443b4e6f |
|
24-May-2012 |
Craig Topper <craig.topper@gmail.com> |
Mark a static array as const. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157368 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0fd4f3c8de07e9cfe2a86093ccada82d64f38bfe |
|
18-May-2012 |
Kevin Enderby <enderby@apple.com> |
Fix the encoding of the armv7m (MClass) for MSR APSR writes which was missing the 0b10 mask encoding bits. Make MSR APSR writes without a _<bits> qualifier an alias for MSR APSR_nzcvq even though ARM as deprecated it use. Also add support for suffixes (_nzcvq, _g, _nzcvqg) for APSR versions. Some FIXMEs in the code for better error checking when versions shouldn't be used. rdar://11457025 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157019 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ca3cd419a52c1dedee133d79772ef97f30e5d20b |
|
11-May-2012 |
Silviu Baranga <silviu.baranga@arm.com> |
Fixed the LLVM ARM v7 assembler and instruction printer for 8-bit immediate offset addressing. The assembler and instruction printer were not properly handeling the #-0 immediate. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156608 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
a9cc08f24f61e2663a131d7ac16c329b75162e7b |
|
28-Apr-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM: Thumb add(sp plus register) asm constraints. Make sure when parsing the Thumb1 sp+register ADD instruction that the source and destination operands match. In thumb2, just use the wide encoding if they don't. In Thumb1, issue a diagnostic. rdar://11219154 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155748 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
04a09a461beb4ec629fe53e601b7665547ac35c3 |
|
27-Apr-2012 |
Richard Barton <richard.barton@arm.com> |
Fix ARM assembly parsing for upper case condition codes on IT instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155720 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4d2f077df1b46a126b5595d983f233ec896b757e |
|
27-Apr-2012 |
Richard Barton <richard.barton@arm.com> |
Refactor IT handling not to store the bottom bit of the condition code in the mask operand in the MCInst. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155700 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b56e4115ed33dae56108ed4ce88ee3a0e0392bfc |
|
25-Apr-2012 |
Richard Barton <richard.barton@arm.com> |
Unify internal representation of ARM instructions with a register right-shifted by #32. These are stored as shifts by #0 in the MCInst and correctly marshalled when transforming from or to assembly representation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155565 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8030e1a0df630ec6ed1cd5ec673f6472558a4dbe |
|
25-Apr-2012 |
Craig Topper <craig.topper@gmail.com> |
Add ifdef around getSubtargetFeatureName in tablegen output file so that only targets that want the function get it. This prevents other targets from getting an unused function warning. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155538 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
14ce6fac242228dacc5c08040e544141a96880e5 |
|
25-Apr-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM: improved assembler diagnostics for missing CPU features. When an instruction match is found, but the subtarget features it requires are not available (missing floating point unit, or thumb vs arm mode, for example), issue a diagnostic that identifies what the feature mismatch is. rdar://11257547 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155499 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b8768dc32df0bf3edfa2777cdef57bb066e54344 |
|
16-Apr-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM handle :lower16: and :upper16: after a '#' prefix. rdar://11252521 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154862 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
362a05a635379ca1151e5ccf735295aed814dd4b |
|
15-Apr-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Wire up support for diagnostic ranges in the ARMAsmParser. As an example, attach range info to the "invalid instruction" message: $ clang -arch arm -c asm.c asm.c:2:11: error: invalid instruction __asm__("foo r0"); ^ <inline asm>:1:2: note: instantiated into assembly here foo r0 ^~~ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154765 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
a5378ebe7890aa9a4974f2872aa6632f1b7f2400 |
|
11-Apr-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM add missing Thumb1 two-operand aliases for shift-by-immediate. rdar://11222742 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154457 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
82509e5c62a99912c636b22e227b810eaf6eda78 |
|
11-Apr-2012 |
Evan Cheng <evan.cheng@apple.com> |
Fix a number of problems with ARM fused multiply add/subtract instructions. 1. The new instruction itinerary entries are not properly described. 2. The asm parser can't handle vfms and vfnms. 3. There were no assembler, disassembler test cases. 4. HasNEON2 has the wrong assembler predicate. rdar://10139676 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154456 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
a23ecc2ba945c9685a76552276e5f6f41859b4ab |
|
10-Apr-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM fix cc_out operand handling for t2SUBrr instructions. We were incorrectly conflating some add variants which don't have a cc_out operand with the mirroring sub encodings, which do. Part of the awesome non-orthogonality legacy of thumb1. Similarly, handling of add/sub of an immediate was sometimes incorrectly removing the cc_out operand for add/sub register variants. rdar://11216577 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154411 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4e53fe8dc61ad48650ac6fe30d7268ec92b7fc1a |
|
05-Apr-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly aliases for add negative immediates using sub. 'add r2, #-1024' should just use 'sub r2, #1024' rather than erroring out. Thumb1 aliases for adding a negative immediate to the stack pointer, also. rdar://11192734 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154123 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b657a90929867716ca1c7c12d442bb5d32281bd4 |
|
05-Apr-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing for 'msr' plain 'cpsr' operand. Plain 'cpsr' is an alias for 'cpsr_fc'. rdar://11153753 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154080 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ad353c630359d285018a250d72c80b7022d8e67e |
|
30-Mar-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM assembler should prefer non-aliases encoding of cmp. When an immediate is both a value [t2_]so_imm and a [t2_]so_imm_neg, we want to use the non-negated form to make sure we prefer the normal encoding, not the aliased encoding via the negation of, e.g., 'cmp.w'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153770 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8f1148bd07d57a1324ed39250642119baa540b7c |
|
30-Mar-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM can only use narrow encoding for low regs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153765 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2d30d947ec2626e8b1a9b577cdfa4121f476c3f5 |
|
30-Mar-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM integrated assembler should encoding choice for add/sub imm. For 'adds r2, r2, #56' outside of an IT block, the 16-bit encoding T2 can be used for this syntax. Prefer the narrow encoding when possible. rdar://11156277 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153759 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c0164f86080bc9d7a41fd5eabd0d6556396f5b38 |
|
30-Mar-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing needs to be paranoid about negative immediates. Make sure to treat immediates as unsigned when doing relative comparisons. rdar://11153621 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153753 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b22e70d835a88753d3ec6d5ee5e85b23fa6834b1 |
|
29-Mar-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly 'cmp lr, #0' should not encode using 'cmn'. The CMP->CMN alias was matching for an immediate of zero when it should only match for negative values. rdar://11129224 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153689 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
9f2e160f7ae90a7a80b17e38ad06f2c706515115 |
|
20-Mar-2012 |
Kevin Enderby <enderby@apple.com> |
Fix assembling ARM vst2 instructions with double-spaced registers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153099 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ceee984302a1cf1d659a186cf94149c779866da5 |
|
19-Mar-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly, accept optional '#' on lane index number. rdar://11057160 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153053 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
be7cf2b377d987f46d10f54f89ae4e1a71c37f55 |
|
16-Mar-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM ldm/stm register lists can be out of order. It's not a good style idea, as the registers will be laid down in memory in numerical order, not the order they're in the list, but it's legal. vldm/vstm are stricter. rdar://11064740 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152943 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b84ad4aa7dacfba5337520740d47770f2200201c |
|
15-Mar-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM case-insensitive checking for APSR_nzcv. rdar://11056591 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152846 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
6357caec785268d1e39059d03eb2034dee65467f |
|
15-Mar-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM aliases for pre-unified syntax fcmpz[sd] mnemonics. rdar://11056647 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152834 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4d0983a4d734280d481bb56472fe44ad0ddc447d |
|
07-Mar-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM more NEON VLD/VST composite physical register refactoring. Register pair, all lanes subscripting. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152157 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c0fc450f0754508871bc70f21e528bf2f1520da1 |
|
06-Mar-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM refactor more NEON VLD/VST instructions to use composite physregs Register pair VLD1/VLD2 all-lanes instructions. Kill off more of the pseudos as a result. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152150 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c3384c93c0e4c50da4ad093f08997507f9281c75 |
|
05-Mar-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM Refactor VLD/VST spaced pair instructions. Use the new composite physical registers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152063 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
af9f4bc752292b3282f110c11aeb2a1ffb710bbf |
|
05-Mar-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM Remove a bit of dead code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152061 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
28f08c93e75d291695ea89b9004145103292e85b |
|
05-Mar-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM refactor away a bunch of VLD/VST pseudo instructions. With the new composite physical registers to represent arbitrary pairs of DPR registers, we don't need the pseudo-registers anymore. Get rid of a bunch of them that use DPR register pairs and just use the real instructions directly instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152045 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
bc2198133a1836598b54b943420748e75d5dea94 |
|
07-Feb-2012 |
Craig Topper <craig.topper@gmail.com> |
Convert assert(0) to llvm_unreachable git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149961 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
24dda217052b48373ed89d043a778aabb2f65080 |
|
01-Feb-2012 |
Jim Grosbach <grosbach@apple.com> |
Tidy up. One more return type mismatch fix. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149452 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
42e6bd38e02e2e1c2cc50d2f12036c38c4ea3ab0 |
|
27-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
Keep source information, if available, around for ARM Fixups. Adjust an example MachObjectWriter diagnostic to use the information to issue a better message. Before: LLVM ERROR: unknown ARM fixup kind! After: x.s:6:5: error: unsupported relocation on symbol beq bar ^ rdar://9800182 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149093 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ef4d3ebe2a36ebfd9370e1efbe74dff13f64c40f |
|
26-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
Tidy up. Fix mismatched return types for error handling. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149062 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
74423e32ce7f426b624bfb0c31481bcf6a36394d |
|
25-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM assemly parsing and validation of IT instruction. "Although a Thumb2 instruction, the IT mnemonic shall be permitted in ARM mode, and the condition verified to match the condition code(s) on the following instruction(s)." PR11853 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148969 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
a57a36abe7d0b769a495ed886246db157aff4add |
|
25-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
NEON VLD4(all lanes) assembly parsing and encoding. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148884 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
5e59f7e15ed3770b32481cd72d2c15b159e991e6 |
|
25-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
NEON VLD3(all lanes) assembly parsing and encoding. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148882 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
88a54de799240d5de2e79dfff4671ad5653e7ceb |
|
24-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
NEON VST4(one lane) assembly parsing and encoding. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148836 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
e983a134e7e40e214f590c3d8ba565bb85f39628 |
|
24-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
NEON VLD4(one lane) assembly parsing and encoding. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148832 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
539aab771fea06bd230789e19c9672ef80ad1c7e |
|
24-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
NEON VST4(multiple 4 element structures) assembly parsing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148764 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8abe7e33641fccfa70a7e335939e83dfbf654fe8 |
|
24-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
NEON VLD4(multiple 4 element structures) assembly parsing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148762 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7945eade3d8db8c1dd52a291cee5d55ac0539586 |
|
24-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
Tidy up. Remove some vertical space for readability. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148761 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4adb18234278d6d40e5791e0dd6970be9a4b0b57 |
|
24-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
NEON VST3(single element from one lane) assembly parsing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148755 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d7433e2873706265d545edc5cdd0a728dd71ef66 |
|
24-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
NEON VST3(multiple 3-element structures) assembly parsing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148748 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c387fc66bd52e4276fdc2704a3aaed57cc1f9a11 |
|
24-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
NEON VLD3(multiple 3-element structures) assembly parsing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148745 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
3a678af71dec76a7e1474ad85a99b3588516906d |
|
23-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
NEON VLD3 lane-indexed assembly parsing and encoding. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148734 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8b31f95bdde1e3809a1c9fdb6926b1840effcf9c |
|
23-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
Simplify some NEON assembly pseudo definitions. Let the generic token alias definitions handle the data subtype suffices. We don't need explicit versions for each. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148718 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
12a8863828879168ffd634df09f3aa91b0b256ee |
|
21-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 'add rd, pc, imm' alternate form for 'adr' instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148601 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4d6ccb5f68cd7c6418a209f1fa4dbade569e4493 |
|
20-Jan-2012 |
David Blaikie <dblaikie@gmail.com> |
More dead code removal (using -Wunreachable-code) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148578 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
51222d1551383dd7b95ba356b1a5ed89df69e789 |
|
20-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
NEON use vmov.i32 to splat some f32 values into vectors. For bit patterns that aren't representable using the 8-bit floating point representation for vmov.f32, but are representable via vmov.i32, treat the .f32 syntax as an alias. Most importantly, this covers the case 'vmov.f32 Vd, #0.0'. rdar://10616677 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148556 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ae69f703d59410fc96f04be3c1afeaa1c17a45ce |
|
19-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly diagnostic caret in better position for FPImm. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148459 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0b4c6738868e11ba06047a406f79489cb1db8c5a |
|
18-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 alternate syntax for LDR(literal) and friends. Explicit pc-relative syntax. For example, "ldrb r2, [pc, #-22]". rdar://10250964 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148432 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2dd674fdce68f8fd59d78a3bbab2cf5b8d220290 |
|
17-Jan-2012 |
David Blaikie <dblaikie@gmail.com> |
Removing unused default switch cases in switches over enums that already account for all enumeration values explicitly. (This time I believe I've checked all the -Wreturn-type warnings from GCC & added the couple of llvm_unreachables necessary to silence them. If I've missed any, I'll happily fix them as soon as I know about them) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148262 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
19055cc2712223f6834fc3cf5b547803ba83f066 |
|
03-Jan-2012 |
Matt Beaumont-Gay <matthewbg@google.com> |
Fix malformed assert. If anybody has strong feelings about 'default: assert(0 && "blah")' vs 'default: llvm_unreachable("blah")', feel free to regularize the instances of each in this file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147459 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4050bc4cab61f8d3c7583a9b60f17c7da47bbf69 |
|
22-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM VFP assembly parsing and encoding for VCVT(float <--> fixed point). rdar://10558523 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147189 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
21bcca81f4597f1c7d939e5d69067539ff804e6d |
|
22-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
Tidy up. Use predicate function a bit more liberally. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147184 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
1aa149f5acea364aa8bc9cfc3a167f78eff2e96b |
|
22-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM pre-UAL aliases. fcmp[sd]. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147158 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8d9550bde95c8d128e7bf62e9e65dec1854e2d1d |
|
22-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembler should accept shift-by-zero for any shifted-immediate operand. Just treat it as-if the shift wasn't there at all. 'as' compatibility. rdar://10604767 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147153 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
de626ad8726677328e10dbdc15011254214437d7 |
|
22-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parser canonicallize on 'lsl' for shift-by-zero form. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147152 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
18c8d12dea944086ef0ce2f674ca8a34de2bbd74 |
|
22-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
Tidy up. Trailing whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147151 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f1a88fc474b87d66906689f5bf76d67cb5b1a4c7 |
|
22-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
Nuke invalid comment from copy/paste. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147150 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
de4d83943a5206690fbe1e39dd33770f5ab29595 |
|
21-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM asm parser should be more lenient w/ .thumb_func directive. Rather than require the symbol to be explicitly an argument of the directive, allow it to look ahead and grab the symbol from the next non-whitespace line. rdar://10611140 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147100 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
520dc78d92a47af5e644b09f401d278cb1d5d196 |
|
21-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing of 'mov rd, rn, rrx'. Maps to the RRX instruction. Missed this case earlier. rdar://10615373 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147096 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2cc5cda464e7c936215281934193658cb799c603 |
|
21-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing of 'mov(register shifted register)' aliases. These map to the ASR, LSR, LSL, ROR instruction definitions. rdar://10615373 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147094 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c931325d99a93c273844c38d3c762705c454ae93 |
|
21-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing allows constant expressions for lane indices. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147028 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
3471d4fbbd50eabb12511b711cbd2afd7bb9d962 |
|
21-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM NEON VLD2 assembly parsing for structure to all lanes, non-writeback. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147025 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
aee718beac4fada5914d773db38002d95cae5e0d |
|
21-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM .req register name aliases are case insensitive, just like regnames. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147009 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
3cbe43fe69680df772d83947ced97ca445861213 |
|
20-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
Move comment to appropriate place. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147000 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
5b484312c66f8d125c072517947538f301c5a805 |
|
20-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for VST2 single-element, double spaced. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146990 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
95fad1c6034cdf8010428e61b71cd196ee1698ad |
|
20-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for VLD2 single-element, double spaced. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146983 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d7c9e08b6bcf15655919960e214b9b91677cdde9 |
|
20-Dec-2011 |
Jason W Kim <jason.w.kim.2009@gmail.com> |
First steps in ARM AsmParser support for .eabi_attribute and .arch (Both used for Linux gnueabi) No behavioral change yet (no tests need so far) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146977 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
04b5d93250bef585631a583a85f6733b1bdc8c52 |
|
20-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly shifts by zero should be plain 'mov' instructions. "mov r1, r2, lsl #0" should assemble as "mov r1, r2" even though it's not strictly legal UAL syntax. It's a common extension and the friendly thing to do. rdar://10604663 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146937 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
9b0878512fb57ee4b0bc483509e4d9f4f0b9e426 |
|
20-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM NEON assembly aliases for VMOV<-->VMVN for i32 immediates. e.g., "vmov.i32 d4, #-118" can be assembled as "vmvn.i32 d4, #117" rdar://10603913 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146925 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2f196747f15240691bd4e622f7995edfedf90f61 |
|
20-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding support for LDRD(label). rdar://9932658 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146921 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
6849019079794c573b72c1ec55613cb6ba1297a5 |
|
19-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM VFP pre-UAL mnemonic aliases for fmul[sd]. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146892 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
9c39789c361d4fe2632f28fca74c9ea5fff3dafc |
|
19-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM VFP pre-UAL mnemonic aliases for fcpy[sd] and fdiv[sd]. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146887 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
eeaf1c1636c664c707fd9ecc96916fd20ddf137a |
|
19-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM NEON relax parse time diagnostics for alignment specifiers. There's more variation that we need to handle. Error checking will need to be on operand predicates. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146884 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
276ed0344c05822617934fa4a6a9920d864193a5 |
|
15-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
Silence warning. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146686 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0aaf4cd9b34454eb381e1694f520504779c6b7f8 |
|
15-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM NEON two-register double spaced register list parsing support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146685 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
799ca9d1b7cfa8910ac27f8de4929bfbd278114d |
|
15-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM NEON better assembly operand range checking for lane indices of VLD/VST. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146608 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
9b1b3902882675e5ce35eacd639456bd648324b7 |
|
15-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM NEON VLD2/VST2 lane indexed assembly parsing and encoding. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146605 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
a39cda7aff2d379ad9c15500319ab037baa48747 |
|
14-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembler support for the target-specific .req directive. rdar://10549683 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146543 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
863d2af9477e331955a9bee8be1969ce658b59b5 |
|
13-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembler aliases for "mov(shifted register)" rdar://10549767 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146520 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
27debd60a152d39e421c57bce511f16d8439a670 |
|
13-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM LDM/STM system instruction variants. rdar://10550269 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146519 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d7ea73a4909fc3200a1cecd2b420d7ace2180b70 |
|
13-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 tweak for ccout handling in RSB parsing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146516 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
55b02f28c1a2960ebb88cf5019cc5b36bb2eabf4 |
|
13-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM thumb2 parsing of "rsb rd, rn, #0". rdar://10549741 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146515 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f10154010ec01a6965f86e8c136db79732c92eee |
|
13-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM add some more pre-UAL VFP mnemonics for convenience when porting old code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146508 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
48171e7fbe58bb418f09717813779d03903d35e4 |
|
10-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM add some more pre-UAL VFP mnemonics for convenience when porting old code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146300 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
21d7fb814adcedc7b2f156e003d2083ad1d8ac6a |
|
10-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM add some pre-UAL VFP mnemonics for convenience when porting old code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146296 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8a12e3b5df13b279eff3cfc29e0d7808ff86aa44 |
|
09-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM allows '' syntax, not just '#imm' for assembly. Backwards compatibility with 'gas'. #imm is the preferered and documented syntax, but lots of existing code uses the '$' prefix, so we should support it if we can. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146285 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
976c0da213bb9a4f07d4ca2a82765b5e590be05d |
|
08-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM convenience aliases for VSQRT. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146201 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
6b044c26094a9f86da7d12945b00a47a5f07cf6d |
|
08-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM VSHR implied destination operand form aliases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146192 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
a62d11ea942ab99ba74589f74d390138654b6197 |
|
08-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM asm parser, just issue a warning for a duplicate reg in a list. For better 'gas' compatibility. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146185 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
40e285554773c51f6dd6eb8d076256e557fab9c3 |
|
08-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembler support for register name aliases. rdar://10550084 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146170 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
730fe6c1b686fe71c8e549b0f955e65a6a49d3ff |
|
08-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM NEON two-operand aliases for VSHL(immediate). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146125 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8254f02231faeb15b0abaad96a99ac9e40feb908 |
|
08-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM VFP support 'fmrs/fmsr' aliases for 'vldr' git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146116 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
67ca1adf822c6cbc2f2bb78b8f94eefd099a8eb6 |
|
08-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM VFP support 'flds/fldd' aliases for 'vldr' git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146115 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
3bc8a3d3afe3ddda884a681002e24850099b719e |
|
08-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembler aliases for "add Rd, #-imm" to "sub Rd, #imm". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146111 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
af4edea67b007592f9474e07d27182956e37f7f5 |
|
08-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly, allow 'asl' as a synonym for 'lsl' in shifted-register operands. For 'gas' compatibility. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146106 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
9a70df99ca674b288d50dbf454779ed75d6e48dd |
|
07-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM support the .arm and .thumb directives for assembly mode switching. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146042 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
3b8991cc98a469cbf8d9fa2a2ad971f46b8b6fd2 |
|
07-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM: NEON SHLL instruction immediate operand range checking. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146003 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
df33e0d05e6b7dc3d65cdb96e52fb6fb6b07f876 |
|
06-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 encoding choice correction for PLD. Using encoding T1 for offset of #0 and encoding T2 for #-0. rdar://10532413 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145919 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
713c70238c6d150d2cd458b07ab35932fafe508e |
|
05-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
Tweak ADDrr fix. Bad check for explicit .w git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145863 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
927b9df4c678371d3fb1308be90e76ed44af72f8 |
|
05-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 prefer ADD register encoding T2 to T3 when possible. rdar://10529664 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145860 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
da84786bee8304588a4325b15e297be1995a5d41 |
|
05-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 prefer encoding T3 to T4 for ADD/SUB immediate instructions. rdar://10529348 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145851 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
587f5062b9e4532c4f464942e593cb87c58ac153 |
|
03-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM NEON VEXT aliases for data type suffices. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145726 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
84defb51ca183d136e08e87d95e2c907654405f9 |
|
02-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM VST1 single lane assembly parsing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145718 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
872eedbb3a46618e333db42ee9c41fda34eb1e9b |
|
02-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM VLD1 single lane assembly parsing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145712 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
dad2f8e7fb2df5fb080a38fa4c33a01f19729f15 |
|
02-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
Clean up aliases for ARM VLD1 single-lane assembly parsing a bit. Add the 16-bit lane variants while I'm at it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145693 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7636bf6530fd83bf7356ae3894246a4e558741a4 |
|
02-Dec-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM start parsing VLD1 single lane instructions. The alias pseudos need cleaned up for size suffix handling, but this gets the basics working. Will be cleaning up and adding more. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145655 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
13af222bab6fdc77d8193eb38e78a9cbed1d9d1f |
|
30-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM parsing for VLD1 two register all lanes, no writeback. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145504 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
98b05a57b67d1968381563c8cccbbb6c6cb65e3d |
|
30-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM parsing aliases for VLD1 single register all lanes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145464 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
6029b6ddafad45791c9e9d8e8ddd96978294beef |
|
30-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
Tidy up a bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145458 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
efed3d1f58f69ec0a9bbe74e2ce5cc9b939a3805 |
|
16-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
Clean up debug printing of ARM shifted operands. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144836 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
48b368bcd5fd6d1857de137230ac019b8530f1cd |
|
16-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing for RRX mnemonic. rdar://9704684 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144812 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
23f220705a74685edd743e84861a3e0d6d109828 |
|
16-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM mode aliases for bitwise instructions w/ register operands. rdar://9704684 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144803 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
e43862b6a6130ec29ee4e9e6c6c30b5607c9a728 |
|
16-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing for register range syntax for VLD/VST register lists. For example, vld1.f64 {d2-d5}, [r2,:128]! Should be equivalent to: vld1.f64 {d2,d3,d4,d5}, [r2,:128]! It's not documented syntax in the ARM ARM, but it is consistent with what's accepted for VLDM/VSTM and is unambiguous in meaning, so it's a good thing to support. rdar://10451128 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144727 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
6cb4b081829880ba97a729bcf33fd59517ca5450 |
|
15-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM accept an immediate offset in memory operands w/o the '#'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144709 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
5c984e451d604e3ff3cfdc5db7c0b6ca6be7a14f |
|
15-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM enclosing curly braces optional on one-register VLD/VST instruction lists. 'vld1.f32 d4, [r7]' should be parsed as equivalent to 'vld1.f32 {d4}, [r7]' rdar://10450488. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144701 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
25e0a87e9190cdca62aee5ac95cfc8ef44f35e92 |
|
15-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
Fix typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144695 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7f1ec9570d673aedd13c5621407085400bab8299 |
|
15-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 two-operand 'mul' instruction wide encoding parsing. rdar://10449724 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144684 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
1de0bd194540f8bab399fb39c4ba615a7b2381d3 |
|
15-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing for mul.w in IT block fix. When the 3rd operand is not a low-register, and the first two operands are the same low register, the parser was incorrectly trying to use the 16-bit instruction encoding. rdar://10449281 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144679 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
430052b084de7ab4eb6162b9f1a6a16bfb2a80ad |
|
14-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
Tidy up. 80 column. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144538 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
9588c10b69121d9746b09e868fcc8879cbd98e3a |
|
12-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM refactor simple immediate asm operand render methods. These immediate operands all use the same simple logic for rendering to MCInst, so have them share the method for doing so. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144439 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7aef99b677452724100145c81f76f32e494cc5a7 |
|
12-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM vldm and vstm VFP instructions can take a data type suffix. It's ignored by the assembler when present, but is legal syntax. Other instructions have something similar, but for some mnemonics it's only sometimes not significant, so this quick check in the parser will need refactored into something more robust soon-ish. This gets some basics working in the meantime. Partial for rdar://10435264 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144422 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c3937b97c00a857dff3528895e71ecfbc7ff3a28 |
|
11-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
Nuke no longer accurate comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144411 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ce485e7f70faed6d19daafff91bb20509403d432 |
|
11-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM allow Q registers in vldm/vstm register lists. rdar://9672822 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144407 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0352b4679e9289ded6b2d73a76a017e0d97fe70d |
|
11-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 ldm/stm updating w/ one register in the list are LDR/STR. rdar://10429490 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144338 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
83ec87755ed4d07f6650d6727fb762052bd0041c |
|
11-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM let processInstruction() tranforms chain. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144337 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
5402637ff283d7397513d5c1699cdf2274c47313 |
|
11-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 parsing for push/pop w/ hi registers in the reglist. rdar://10130228. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144331 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
fae02597bb90f4334079580441b8e5876be4a3d2 |
|
11-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb1 diagnostics for reglist on PUSH/POP fix. Was not checking the first register in the register list. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144329 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
1b332860aef0121cf4591f4377a7201ce0ef8366 |
|
10-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb MUL assembly parsing for 3-operand form. Get the source register that isn't tied to the destination register correct, even when the assembly source operand order is backwards. rdar://10428630 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144322 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d475f8612b1c7959dbf50242c8fa9d4aea1ee1a9 |
|
10-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM .thumb_func directive for quoted symbol names. Use the getIdentifier() method of the token, not getString(), otherwise we keep the quotes as part of the symbol name, which we don't want. rdar://10428015 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144315 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ee10ff89a2934636570cb17b756bf31b2a38aab5 |
|
10-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing for LSR/LSL/ROR(immediate). More of rdar://9704684 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144301 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
71810ab7c0ecd6927dde1eee0c73169642f3764d |
|
10-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing for ASR(immediate). Start of rdar://9704684 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144293 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
590853667345d6fb191764b9d0bd2ff13589e3a3 |
|
06-Nov-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Replace (Lower|Upper)caseString in favor of StringRef's newest methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143891 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
6284afc293c8f6e84dffab8731aa9e679d437745 |
|
01-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM label operands can be quoted. For example, labels from Objective-C sources. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143511 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ed6a0c5243f4dc13169edc8e342c679f1bfc201c |
|
01-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM label operands can have an optional '#' before them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143510 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
681460f954e9c13ffd2f02f27bba048ccf90abaf |
|
01-Nov-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM VLD/VST assembly parsing for symbolic address operands. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143413 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4334e032525d6c9038605f3871b945e8cbe6fab7 |
|
31-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM VST1 w/ writeback assembly parsing and encoding. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143369 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
e70ec8463720b5990f0d1ab8d9b6ab56ca1d01c3 |
|
29-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM mode 'mov' to 'mvn' assembler alias. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143237 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
89a633708542de5847e807f98f86edfefc9fc019 |
|
29-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
Add Thumb2 alias for "mov Rd, #imm" to "mvn Rd, #~imm". When '~imm' is encodable as a t2_so_imm but plain 'imm' is not. For example, mov r2, #-3 becomes mvn r2, #2 rdar://10349224 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143235 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c73d73eb881ebe7493e934c00ca1c474ffd0ed2d |
|
28-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM Allow 'q' registers in VLD/VST vector lists. Just treat it as if the constituent D registers where specified. rdar://10348896 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143167 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
a581328ceb4c9db165d79a4dabd6b28db799d70f |
|
27-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 ldr pc-relative encoding fixes. We were parsing label references to the i12 encoding, which isn't right. They need to go to the pci variant instead. More of rdar://10348687 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143068 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
758a519a22b469ce8e2b8d0bf7a72813e87710d4 |
|
26-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM parse parenthesized expressions for label references. Partial fix for rdar://10348687. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143063 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
12431329d617064d6e72dd040a58c1635cc261ab |
|
25-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for VLD1 w/ writeback. One and two length register list variants. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142861 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
1a2f9886a2a60dbd41216468a240446bbfed3e76 |
|
22-Oct-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Move various generated tables into read-only memory, fixing up const correctness along the way. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142726 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4661d4cac3ba7f480a91d0ccd35fb2d22d9692d3 |
|
22-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
Assembly parsing for 2-register sequential variant of VLD2. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142691 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b6310316dbaf8716003531d7ed245f77f1a76a11 |
|
21-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
Assembly parsing for 4-register variant of VLD1. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142682 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
cdcfa280568d5d48ebeba2dcfc87915105e090d1 |
|
21-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
Assembly parsing for 3-register variant of VLD1. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142675 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
280dfad48940a0a51726308dd3daa3b1b0d18705 |
|
21-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM VLD parsing and encoding. Next step in the ongoing saga of NEON load/store assmebly parsing. Handle VLD1 instructions that take a two-register register list. Adjust the instruction definitions to only have the single encoded register as an operand. The super-register from the pseudo is kept as an implicit def, so passes which come after pseudo-expansion still know that the instruction defines the other subregs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142670 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7784f1d2d8b76a7eb9dd9b3fef7213770605532d |
|
21-Oct-2011 |
Owen Anderson <resistor@mac.com> |
Don't automatically set the "fc" bits on MSR instructions if the user didn't ask for them. This is a divergence from gas' behavior, but it is correct per the documentation and allows us to forge ahead with roundtrip testing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142669 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7926db82686be283ec4cdb68989806c69f388cb1 |
|
21-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
Nuke an #if0 that got accidentally left in. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142658 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
862019c37f5b5d76e34eeb0d5686e617d544059f |
|
19-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM VTBL (one register) assembly parsing and encoding. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142441 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f2f5bc60f61acf0490d856ddd09e461bf93c5459 |
|
18-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for VMOV.i64. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142356 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
6248a546f23e7ffa84c171dc364b922e28467275 |
|
18-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for VMOV/VMVN/VORR/VBIC.i32. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142321 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ea46110f57b293844a314aec3b8092adf21ff63f |
|
18-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for VMOV/VMVN/VORR/VBIC.i16. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142303 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
fa1ee880520d8da1168278c65575241487f871df |
|
18-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
Tidy up. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142297 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0e387b2877e4eebeedfcb26b08253f9c1b946035 |
|
18-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM NEON "vmov.i8" immediate assembly parsing and encoding. NEON immediates are "interesting". Start of the work to handle parsing them in an 'as' compatible manner. Getting the matcher to play nicely with these and the floating point immediates from VFP is an extra fun wrinkle. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142293 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c378015d1cc073e5e8027491514f50e2c7413f9e |
|
17-Oct-2011 |
Chad Rosier <mcrosier@apple.com> |
Removed set, but unused variables. Patch by Joe Abbey <jabbey@arxan.com>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142223 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c66e7afcf2810a2c1ebf08514eaf45c478e5ff67 |
|
12-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for LDC/STC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141811 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
9b8f2a0b365ea62a5fef80bbaab3cf0252db2fcf |
|
12-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM parsing and encoding for the <option> form of LDC/STC instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141786 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2bd0118472de352745a2e038245fab4974f7c87e |
|
11-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for LDC{2}{L}/STC{2}{L} instructions. Fill out the rest of the encoding information, update to properly mark the LDC/STC instructions as predicable while the LDC2/STC2 instructions are not, and adjust the parser accordingly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141721 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
57dcb85a30133a9bc008f0b9ead81be03a23521e |
|
11-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM parse alignment specifier for NEON load/store instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141682 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
e53c87b302b3ae07c781405572170b0b6641b524 |
|
11-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM Rename operand sub-structure 'Mem' to 'Memory' for a bit more clarity. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141671 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f6c35c59f515505fa2e9b74b3d0f4ab06f8266d8 |
|
11-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
Simplify operand Kind checks a bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141592 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
460a90540b045c102012da2492999557e6840526 |
|
08-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM NEON assembly parsing and encoding for VDUP(scalar). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141446 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
21ff17ce1b57ad68ae01d6eee0ecc36b5dd318cf |
|
08-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM prefix asmparser operand kind enums for readability. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141438 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
186ffac4d35c9ea669b03ac75f5e21bff1f01a7f |
|
07-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
Improve ARM assembly parser diagnostic for unexpected tokens. Consider: mov r8, r11 fred Previously, we issued the not very informative: x.s:6:1: error: unexpected token in argument list ^ Now we generate: x.s:5:14: error: unexpected token in argument list mov r8, r11 fred ^ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141380 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2dbb46a0a09d4a16a6752cfcbe1d55d51e7d2a31 |
|
05-Oct-2011 |
Owen Anderson <resistor@mac.com> |
Support a valid, but not very useful, encoding of CPSIE where none of the AIF bits are set. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141190 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
9d39036f62674606565217a10db28171b9594bc7 |
|
04-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for VMOV immediate. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141046 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
68259145d9ac1f8d4e2cc9fc73626254fcc5cf08 |
|
04-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM parsing/encoding for VCMP/VCMPE. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141038 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
5cd5ac6ad455880395e34ac647f1e962a83763a0 |
|
03-Oct-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for VMRS/FMSTAT. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141025 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
acad68da50581de905a994ed3c6b9c197bcea687 |
|
28-Sep-2011 |
James Molloy <james.molloy@arm.com> |
Check in a patch that has already been code reviewed by Owen that I'd forgotten to commit. Build on previous patches to successfully distinguish between an M-series and A/R-series MSR and MRS instruction. These take different mask names and have a *slightly* different opcode format. Add decoder and disassembler tests. Improvement on the previous patch - successfully distinguish between valid v6m and v7m masks (one is a subset of the other). The patch had to be edited slightly to apply to ToT. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140696 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0afa0094afdfe589f407feb76948f273b414b278 |
|
26-Sep-2011 |
Owen Anderson <resistor@mac.com> |
ASR #32 is not allowed on Thumb2 USAT and SSAT instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140560 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4d2a00147d19b17d382644de0d6a1f0d3230e0e4 |
|
24-Sep-2011 |
Owen Anderson <resistor@mac.com> |
Teach the Thumb2 AsmParser to accept pre-indexed loads/stores with an offset of #-0. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140426 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
50f1c37123968b7f57068280483ec78f6ff7973e |
|
20-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for UXTAB/UXTAB16/UXTH/UXTB/UXTB16/UXTH. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140125 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9 |
|
20-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for UMAAL/UMLAL/UMULL. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140095 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7f739bee261debdf56bd89ac922b57eca53e91dc |
|
20-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for TBB/TBH. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140078 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
326efe58918d3f0a431d07938054870fcd0e240f |
|
19-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for SXTB/SXTB16/SXTH. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140047 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
fb12f35545481e8b42bd547bc37d220ffee77f86 |
|
19-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM asm parsing should handle pre-indexed writeback w/o immediate. For example, 'ldrb r9, [sp]!' is odd, but valid. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140035 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f67e8554bf4808ad447ffb5d2deebbb10b810391 |
|
17-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for SUB(immediate). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139966 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ee2c2a4f98c4a6fa575dcdd1bcc3effd1432a7c7 |
|
16-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for STR. More addressing mode encoding bits. Handle pre increment for STR/STRB/STRH and STR(register). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139949 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8213c96655e955a0b63b05580bc2f6a55be26083 |
|
16-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for STMIA. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139938 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
3443ed525a3bce98bacabb5aa8e67bee6def3b09 |
|
16-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for SMMULL. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139921 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
db7e2e59dde94cfab4246ae694dd13295940fd62 |
|
16-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Kill some dead code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139904 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
fb9cffea4a650d7f60d2c24741656c52c2185945 |
|
16-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Tidy up a bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139903 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
837fc5e9d5138ed48a74a672dc4c1525e5975ce8 |
|
16-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for SMLAL. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139902 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8adf62034a874adacff158e8adc9438cb3e67c01 |
|
15-Sep-2011 |
Owen Anderson <resistor@mac.com> |
Fix a crasher in Thumb2 MOV-immediate encoding for certain inputs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139747 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
64944f48a1164c02c15ca423a53919682a89074c |
|
14-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for MUL. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139735 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
bf841cf3360558d2939c9f1a244a7a7296f846df |
|
14-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for MSR/MRS. Fix a bug in handling default flags for both ARM and Thumb encodings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139721 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c2d3164ab467bdfa8508b93177e69b99626cd8e2 |
|
14-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing for MOV in IT block. Select the right 16 vs. 32 bit encoding in an IT block. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139714 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d0588e2a2ed1f7570f13b78c2042855dc4afae10 |
|
14-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM fix assembly parser handling of ranges in register lists. Clean up register list handling in general a bit to explicitly check things like all the registers being from the same register class. rdar://8883573 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139707 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d300b94e51cf8c91928a66478c387c1c3d76faab |
|
14-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Remove unnecessary scope resolution operator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139656 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d7a2b3bea8e8e4965cd7654f3a7537aba6ad7870 |
|
13-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
There's only 16 regs legal in a register list. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139637 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b6b7f515e2b90c9f9b6cdd5b9648121f6ad2b3a1 |
|
13-Sep-2011 |
Owen Anderson <resistor@mac.com> |
Teach the Thumb ASM parser that BKPT is allowed in IT blocks, even though it is always executed unconditionally. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139610 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2d539691a1e4b9d61853aa99d1a5580dc88595db |
|
13-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Tidy up a bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139559 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
1ad60c2adc9ed765a968747d0c548cda53bfd384 |
|
10-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 parsing and encoding for MOV(immediate). Some aliases for MOV(register) also to keep existing T1 tests happy when run in thumbv7 mode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139440 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
51f6a7abf27fc92c3d8904c2334feab8b498e8e9 |
|
09-Sep-2011 |
Owen Anderson <resistor@mac.com> |
Thumb unconditional branches are allowed in IT blocks, and therefore should have a predicate operand, unlike conditional branches. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139415 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
468709e43dfff52f48af9ff411d461e22b6e2015 |
|
09-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for MLA and MLS. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139399 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b6aed508e310e31dcb080e761ca856127cec0773 |
|
09-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for LDREX/LDREXB/LDREXD/LDREXH. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139381 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
a77295db19527503d6b290e4f34f273d0a789365 |
|
09-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for LDRD(immediate). Refactor operand handling for STRD as well. Tests for that forthcoming. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139322 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
eeec025cf5a2236ee9527a3312496a6ea42100c6 |
|
08-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for LDR pre-indexed w/ writeback. Adjust encoding of writeback load/store instructions to better reflect the way the operand types are represented. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139270 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f0eee6eca8c39b11b6a41d9b04eba8985655df77 |
|
08-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for LDRBT. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139267 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ab899c1bcca7f1cc85342c3a686464ba4af035df |
|
08-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for LDR(register). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139264 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
a8307dd1c9279cbde1f3497e530d2ed9d014a0c5 |
|
07-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 parsing and encoding for LDR(immediate). The immediate offset of the non-writeback i8 form (encoding T4) allows negative offsets only. The positive offset form of the encoding is the LDRT instruction. Immediate offsets in the range [0,255] use encoding T3 instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139254 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
76ecc3d35b4d16afb016bb14e29e12802b968716 |
|
07-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 parsing and encoding for LDMIA. Choose 32-bit vs. 16-bit encoding when there's no .w suffix in post-processing as match classes are insufficient to handle the context-sensitiveness of the writeback operand's legality for the 16-bit encodings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139242 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
81d2e3901eed4bd70f551df8935c9ff224ccef6f |
|
07-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Better diagnostic location information for mnemonic suffices. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139232 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ad2dad930d450d721209531175b0cbfdc8402558 |
|
06-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 parsing and encoding for CLREX. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139172 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
98447daa9559d5bf7816f084581b5ca073d316f6 |
|
06-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM .code directive should always go to the streamer. Even if there's no mode switch performed, the .code directive should still be sent to the output streamer. Otherwise, for example, an output asm stream is not equivalent to the input stream which generated it (a dependency on the input target triple arm vs. thumb is introduced which was not originally there). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139155 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
a110988b391652e3f4f85cb709a3eeb81c8cdd84 |
|
03-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 parsing and encoding of B instruction. Tweak handling of IT blocks a bit to enable this. The differentiation between B and Bcc needs special sauce. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139049 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2f25d9b9334662e846460e98a8fe2dae4f233068 |
|
01-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM 'rscs' mnemonic is carry-setting 'rsc', not 'rs' with a 'cs' condition code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138952 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7f17b5a483ea358f2b9e3958f16cf34d75d5b4da |
|
01-Sep-2011 |
Owen Anderson <resistor@mac.com> |
t2Bcc is allowed to have a predicate without a preceding IT instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138946 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
20ed2e7939d6a8e804a51897c3af4588deb48be2 |
|
01-Sep-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembly parsing and encoding for ADD(immediate). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138922 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c075510e43f768e79f0d66374f4d60529c4d3d85 |
|
31-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 t2Bcc should encode as t2B when condition is 'always'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138898 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b80ab8e369d13673c7fec81f07d1c9718c6eec7b |
|
31-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Remove FIXME. Thumb2 MOV instruction will use separate custom tricks. When we want encoding T3 (the wide encoding), we can explicitly check for that and twiddle the CanAcceptCarrySet accordingly. For now, just correctly handle encodings T1 and T2 when in Thumb2 mode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138879 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c9a9b442853ee086492d6ad1384a2de2fea9b43b |
|
31-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
tBcc is OK to be predicated in Thumb2 outside of IT blocks (obviously). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138873 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0f3abd8d68cfb4a0705d0a8140d7f7dce32f6e77 |
|
31-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Tweak Thumb1 ADD encoding selection a bit. When the destination register of an add immediate instruction is explicitly specified, encoding T1 is preferred, else encoding T2 is preferred. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138862 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f8e1e3e729473b8b2b7ee6134b6417976af84d05 |
|
30-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 parsing and encoding for IT blocks. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138773 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0da10cf44d0f22111dae728bb535ade2283d976b |
|
29-Aug-2011 |
Owen Anderson <resistor@mac.com> |
Improve handling of #-0 offsets for many more pre-indexed addressing modes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138754 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
63553c77cd1cf3b204d955fb65350db087aaff1d |
|
29-Aug-2011 |
Owen Anderson <resistor@mac.com> |
Add support for parsing #-0 on non-memory-operand immediate values, and add a testcase that necessitates it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138739 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4af54a461fad6c98df72dd18e607bfb32bfc486f |
|
27-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing tweak for pldw. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138669 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
89df996ab20609676ecc8823f58414d598b09b46 |
|
26-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb2 assembler parsing and encoding of IT instruction. This handles only the handling of the IT instruction itself, not the processing and validation of the instructions in the IT block. That's next, and will include encoding tests for IT itself. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138665 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
9ab0f25fc194b4315db1b87d38d4024054120bf6 |
|
26-Aug-2011 |
Owen Anderson <resistor@mac.com> |
invalid-LDR_PRE-arm.txt was already passing, but for the wrong reasons. We were failing to specify enough fixed bits of LDR_PRE/LDRB_PRE, resulting in decoding conflicts. Separate them into immediate vs. register versions, allowing us to specify the necessary fixed bits. This in turn results in the test being decoded properly, and being rejected as UNPREDICTABLE rather than a hard failure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138653 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0c49ac05cd2374a99a3126ebe6c8370490a73ca5 |
|
25-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Explicitly disallow predication in Thumb1 assembly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138562 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4d23e99d2a272a4de06ee31eee6d8e501809a573 |
|
25-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb .n mnemonic qualifiers can be ignored for now. We'll need to pay attention to them when we start getting more serious about the details of parsing thumb2 assembly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138500 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f69c80403620ef38674e037ae2664f1bbe5a4f3c |
|
24-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb parsing and encoding for SUB (SP minu immediate). Fix FiXME in test file. Remove FIXME for SUB (SP minus register) since that form is Thumb2 only. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138494 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
72f39f8436848885176943b0ba985a7171145423 |
|
24-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb parsing and encoding support for ADD SP instructions. Fix the test FIXME and add parsing support for the ADD (SP plus immediate) and ADD (SP plus register) instruction forms. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138488 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f95aaf951b628621c9c74bed6c450b8a52a1ae1e |
|
24-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Add missing explicit writeback operand to tSTMIA_UPD. rdar://10014745 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138457 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
3e74d6fdd248e20a280f1dff3da9a6c689c2c4c3 |
|
24-Aug-2011 |
Evan Cheng <evan.cheng@apple.com> |
Move TargetRegistry and TargetSelect from Target to Support where they belong. These are strictly utilities for registering targets and components. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138450 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7801136b95d1fbe515b9655b73ada39b05a33559 |
|
23-Aug-2011 |
Evan Cheng <evan.cheng@apple.com> |
Some refactoring so TargetRegistry.h no longer has to include any files from MC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138367 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
1e84f19337d44c04e74af4fb005550b525ef60e5 |
|
23-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb parsing and encoding for STM. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138345 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
aa875f8c6fdf3a7a26ccc381cf8ecd2b69678dad |
|
23-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Factor low reg checking into a helper function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138344 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
04d55f1905748b0d66655e2332e1a232a3f665f4 |
|
23-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb parsing and encoding for SBC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138311 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
934755ac040c516eac7fdd974e87590543acd16a |
|
23-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb parsing and encoding for RSB. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138308 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
6dcafc0d0b33bebcac28539257a9a5b250542f6a |
|
23-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Improve error checking for tPUSH and tPOP register lists. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138295 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7260c6a4ea19f5eb94068296c1c8e01a99f17a01 |
|
23-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb assemmbly parsing diagnostic improvements for LDM. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138287 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
11e03e7c2d0c163e54b911ad1e665616dc0bcc8c |
|
22-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Tighten up ARM reglist validation a bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138258 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0780b6303b99441fef04340b7a083006484f4743 |
|
20-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb parsing and encoding support for NOP. The irony is not lost that this is not a completely trivial patchset. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138143 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2c3f70e5d4b4f179f21ed1b2ba14674f9d65c9b0 |
|
20-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb assembly parsing and encoding for NEG. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138131 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7a010694209ce46c4f415c0b42c3bc03dc094a5c |
|
20-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Be more lenient on tied operand matching for MUL. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138124 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
88ae2bc6d53bbf58422ff74729da18a53e155b4a |
|
20-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb assembly parsing and encoding for MUL. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138108 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4ec6e888ec6d12b5255afd685b05c8fee1f7fc73 |
|
19-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb assembly parsing and encoding for MOV. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138076 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
1b7b68f08776dc9553399dc3b4e7ab54e5e596c0 |
|
19-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb assembly parsing and encoding for LSL(immediate). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138063 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
38466309d5c8ce408f05567fa47aeaa3b5826080 |
|
19-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb assembly parsing and encoding for LDRH. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138060 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
48ff5ffe9e2a90f853ce3645b1b97ea7885eccf1 |
|
19-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb assembly parsing and encoding for LDRB. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138059 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ecd858968384be029574d845eb098d357049e02e |
|
19-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb assembly parsing and encoding for LDR(immediate) form T2. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138050 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2f7232efd5fdc72aaa5a446e11a868eea666a6bf |
|
19-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Use helper function to check for low registers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138048 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
60f91a3d9518617e29da18477ae433b8f0069304 |
|
19-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb assembly parsing and encoding for LDR(immediate) form T1. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138047 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
93b3eff62322803a520e183fdc294bffd6d99bfa |
|
18-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb assembly parsing and encoding for LDM instruction. Fix base register type and canonicallize to the "ldm" spelling rather than "ldmia." Add diagnostics for incorrect writeback token and out-of-range registers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137986 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
3ce23d3d87d1ca437acb65ac01fac1c486507280 |
|
18-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Add missing 'break'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137941 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
395b453bed53a60c559b679eb92f75d0b140b307 |
|
18-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb assembly parsing and encoding for B. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137891 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
00f5d982057574cf65a4a3f29548ff9fb0ecfbd0 |
|
18-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb assembly parsing and encoding for ASR. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137889 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
70939ee1415722d7f39f13faf9b3644b96007996 |
|
17-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM clean up the imm_sr operand class representation. Represent the operand value as it will be encoded in the instruction. This allows removing the specialized encoder and decoder methods entirely. Add an assembler match class while we're at it to lay groundwork for parsing the thumb shift instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137879 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
89e2aa6afd408f1b4c6b47c53bbf31d48463bcab |
|
17-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb ADD(immediate) parsing support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137788 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
194bd8982936c819a4b14335a4d08f28af8f3d42 |
|
17-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb parsing diagnostics for low-reg requirements on ADD and MOV. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137779 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
00c9a518886c4f2d1cd869c174c994c20a353906 |
|
16-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Add missing exit for 'case'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137774 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
3912b73c74dc9c928228504e9a23c577b57c4e12 |
|
16-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb assembly parsing and encoding for ADD(register) instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137759 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d54b4e612aa5d2d76a62f4409f82bd409f9af297 |
|
16-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Move some logic into a helper function and expand the commentary. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137756 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
47a0d52b69056250a1edaca8b28f705993094542 |
|
16-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM thumb assembly parsing for arithmetic flag setting instructions. Thumb one requires that many arithmetic instruction forms have an 'S' suffix. For Thumb2, the whether the suffix is required or precluded depends on whether the instruction is in an IT block. Use target parser predicates to check for these sorts of context-sensitive constraints. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137746 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
19cb7f491fbc7cb5d0bbd10e201f9d5093e6d4e5 |
|
16-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
MCTargetAsmParser target match predicate support. Allow a target assembly parser to do context sensitive constraint checking on a potential instruction match. This will be used, for example, to handle Thumb2 IT block parsing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137675 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
857e1a7b3fcc848a6508f9205f22e8e0d293dcae |
|
12-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM vector compare to zero instruction assembly parsing support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137389 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
dd32ba337aab88c215108ca8bf4a0267fce1e773 |
|
12-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM load shifted register pre-index fix shift value asm parser encoding. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137367 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7b8f46cf9e31d730acc25be771462e2a6a1a1dfb |
|
11-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM STRH assembly parsing and encoding. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137353 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
14605d1a679d55ff25875656e100ff455194ee17 |
|
11-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM STRD assembly parsing and encoding. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137342 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
548340c4bfa596b602f286dfd3a8782817859d95 |
|
11-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM STR(immediate) assembly parsing and encoding. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137331 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f6713916fb4504aab617f0e317689acd878cc37f |
|
11-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM push of a single register encodes as pre-indexed STR. Per the ARM ARM, a 'push' of a single register encodes as an STR, not an STM. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137318 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f8fce711e8b756adca63044f7d122648c960ab96 |
|
11-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM pop of a single register encodes as post-indexed LDR. Per the ARM ARM, a 'pop' of a single register encodes as an LDR, not an LDM. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137316 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
623a454b0f5c300e69a19984d7855a1e976c3d09 |
|
11-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM LDRH(immediate) assembly parsing and encoding support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137260 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
251bf25e7ee9702fed2a66deeb404ce473f7bac1 |
|
10-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM LDRD(register) assembly parsing and encoding. Add support for literal encoding of #-0 along the way. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137254 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
53642c533564c41d9a85ad28efe19b12fc2305ce |
|
10-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
Fix typo. Not quite sure how that slipped in there. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137245 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2fd2b87ded53f6b87eb240c17d62a23fb4964ba0 |
|
10-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM LDRD(immediate) assembly parsing and encoding support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137244 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
09176e10dbe575b0f4c68803695c47ccb4b81f81 |
|
08-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM load/store label parsing. Allow labels for load/store instructions when parsing. There's encoding issues, still, so this doesn't work all the way through, yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137064 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0d6fac36eda6b65f0e396b24c5bce582f89f7992 |
|
06-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM load instruction shifted register index operands. Parsing and encoding for shifted index operands for load instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136986 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f4fa3d6e463e88743983ccfa027a7555a8720917 |
|
05-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM indexed load assembly parsing and encoding. More parsing support for indexed loads. Fix pre-indexed with writeback parsing for register offsets and handle basic post-indexed offsets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136982 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
16578b50889329eb62774148091ba0f38b681a09 |
|
05-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM simplify the postidx_reg operand encoding. The immediate portion of the operand is just a boolean (the 'U' bit indicating add vs. subtract). Treat it as such. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136969 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
039c2e19c4237fb484315a62e95222ac28640bb7 |
|
05-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for LDR instructions. Enhance support for LDR instruction assembly parsing for post-indexed addressing with immediate values. Add tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136940 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7ce057983ea7b8ad42d5cca1bb5d3f6941662269 |
|
04-Aug-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM refactoring assembly parsing of memory address operands. Memory operand parsing is a bit haphazzard at the moment, in no small part due to the even more haphazzard representations of memory operands in the .td files. Start cleaning that all up, at least a bit. The addressing modes in the .td files will be being simplified to not be so monolithic, especially with regards to immediate vs. register offsets and post-indexed addressing. addrmode3 is on its way with this patch, for example. This patch is foundational to enable going back to smaller incremental patches for the individual memory referencing instructions themselves. It does just enough to get the basics in place and handle the "make check" regression tests we already have. Follow-up work will be fleshing out the details and adding more robust test cases for the individual instructions, starting with ARM mode and moving from there into Thumb and Thumb2. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136845 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
e1cf5902ec832cecdd5a94b9701930253d410741 |
|
29-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM SRS instruction parsing, diassembly and encoding support. Fix the instruction encoding for operands. Refactor mode to use explicit instruction definitions per FIXME to be more consistent with loads/stores. Fix disassembler accordingly. Add tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136509 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2c6363a62df95b74468d9a561bbcb9edddeb3507 |
|
29-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for RFE instruction. Fill in the missing fixed bits and the register operand bits of the instruction encoding. Refactor the definition to make the mode explicit, which is consistent with how loads and stores are normally represented and makes parsing much easier. Add parsing aliases for pseudo-instruction variants. Update the disassembler for the new representations. Add tests for parsing and encoding. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136479 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
48c693ff564c422153733424ab845106161430ac |
|
29-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
PLD and PLI are not predicable in ARM mode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136427 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
cf121c35c484ee17210fde1cecbd896348cd654a |
|
28-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for BLX (immediate). Add parsing support for BLX (immediate). Since the register operand version is predicated and the label operand version is not, we have to use some special handling to get the operand list right for matching. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136406 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
293a2ee3063953bb6f5bc828831f985f054782a3 |
|
28-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for BFC and BFI. Add parsing support that handles converting the lsb+width source into the odd way we represent the instruction (an inverted bitfield mask). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136399 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
aa3402e2800e85107a8f803be2942633b1c8c384 |
|
28-Jul-2011 |
Owen Anderson <resistor@mac.com> |
Revert r136295. It broke nightly testers because some parts of codegen weren't aware of the changes to operand ordering. I hope to revive this sometime in the future, but it's not strictly necessary for now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136362 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7b2958392c2be221ff1f0d2ffd45d453dec515dd |
|
28-Jul-2011 |
Owen Anderson <resistor@mac.com> |
Refactor and improve the encodings/decodings for addrmode3 loads, and make the writeback operand always the first. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136295 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
5de728cfe1a922ac9b13546dca94526b2fa693b6 |
|
28-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Emit an error is asm parser parsed X86_64 only registers, e.g. %rax, %sil. This can happen in cases where TableGen generated asm matcher cannot check whether a register operand is in the right register class. e.g. mem operands. rdar://8204588 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136292 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
49f2ceddd25c75373f8a39fa25e8b9db33bcdacc |
|
28-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for UMULL. Fix parsing of the 's' suffix for the mnemonic. Add tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136277 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
71725a099e6d0cba24a63f9c9063f6efee3bf76e |
|
27-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for UMLAL. Fix parsing of the 's' suffix for the mnemonic. Add tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136274 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
fb8989e64024547e4ad5ab6fe4d94fe146a7899f |
|
27-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM parsing and encoding of SBFX and UBFX. Encode the width operand as it encodes in the instruction, which simplifies the disassembler and the encoder, by using the imm1_32 operand def. Add a diagnostic for the context-sensitive constraint that the width must be in the range [1,32-lsb]. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136264 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0 |
|
27-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for extend instructions. Assembly parser handling for extend instruction rotate operands. Add tests for the sign extend instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136252 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
bd27f5adbd8f3b8ab8def5aa43fbc406ac9b8cbe |
|
27-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Support .code32 and .code64 in X86 assembler. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136197 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0d87ec21d79c8622733b8367aa41067169602480 |
|
26-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
Fix over-zealous rename from r136095. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136132 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
189610f9466686a91fb7d847b572e1645c785323 |
|
26-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM diagnostics for ldrexd/stredx out of order paired register operands. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136110 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
1355cf1f76abe9699cd1c2838da132ff8b25b76b |
|
26-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
Clean up the ARM asm parser a bit. No intendeded functional change. Just cleaning up a bit to make things more self-consistent in layout and style. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136095 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ed8384806e56952c44f8a717c1ef54a8468d2c8d |
|
26-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM parsing and encoding for SVC instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136090 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
94b9550a32d189704a8eae55505edf62662c0534 |
|
26-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Rename TargetAsmParser to MCTargetAsmParser and TargetAsmLexer to MCTargetAsmLexer; rename createAsmLexer to createMCAsmLexer and createAsmParser to createMCAsmParser. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136027 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f49433523e8a39db6d83503e312ae55160eed90a |
|
26-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for SSAT16 instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136006 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
580f4a9c1c2fcbb8877463f873c6e9ca2a5ccf9f |
|
26-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for SSAT instruction. Fix the Rn register encoding for both SSAT and USAT. Update the parsing of the shift operand to correctly handle the allowed shift types and immediate ranges and issue meaningful diagnostics when an illegal value or shift type is specified. Add aliases to parse an ommitted shift operand (default value of 'lsl #0'). Add tests for diagnostics and proper encoding. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135990 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
275944afb55086d0b4b20d4d831de7c1c7507925 |
|
25-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Fix more MC layering violations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135979 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
af6981f2f59f0d825ad973e0bed8fff5d302196f |
|
25-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM asm operand renaming. Make things a bit more explicit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135959 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
43904299b05bdf579415749041f77c4490fe5f5b |
|
25-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
Make assembly parser method names more consistent. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135950 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
a7cfc08ebe737062917b442830eb5321b0f79e89 |
|
23-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Move TargetAsmParser.h TargetAsmBackend.h and TargetAsmLexer.h to MC where they belong. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135833 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4a5ffb399f841783c201c599b88d576757f1922e |
|
23-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM SSAT instruction 5-bit immediate handling. The immediate is in the range 1-32, but is encoded as 0-31 in a 5-bit bitfield. Update the representation such that we store the operand as 0-31, allowing us to remove the encoder method and the special case handling in the disassembler. Update the assembly parser and the instruction printer accordingly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135823 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
bf2845c0d8a77d24e9971871badeba8cee7b2648 |
|
23-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding updates. Tests for SMULBB, SMLALBT, SMLALTB, SMLALTT, and SMULL. Fix parsing of SMULLS. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135817 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b544f68b70475f06a8ec39c874297549edc0f695 |
|
22-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding of SMLAL instruction. Fix parsing of carry-setting variant SMLALS and add tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135797 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c27d4f9ea0cb9064d3e2cadb384d73e95e9de449 |
|
22-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for SETEND instruction. Add parsing and diagnostics for malformed inputs. Tests for diagnostics and for correct encodings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135776 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
152d4a4bb6b75de740b4b8a9f48abb9069d50c17 |
|
22-Jul-2011 |
Owen Anderson <resistor@mac.com> |
Get rid of the extraneous GPR operand on so_reg_imm operands, which in turn necessitates a lot of changes to related bits. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135722 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7c6e42e9273168ba9b1273a1580d569e1bac0e91 |
|
22-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM Asm parser range checking for [0,31] immediates. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135719 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
43d3b31cda187c5fab6fca53eb60739e03a20481 |
|
21-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
Tidy up. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135706 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
92a202213bb4c20301abf6ab64e46df3695e60bf |
|
21-Jul-2011 |
Owen Anderson <resistor@mac.com> |
Split up the ARM so_reg ComplexPattern into so_reg_reg and so_reg_imm, allowing us to distinguish the encodings that use shifted registers from those that use shifted immediates. This is necessary to allow the fixed-length decoder to distinguish things like BICS vs LDRH. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135693 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f6c0525d421cb48119423a96e23289b473eddbd7 |
|
21-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing and encoding for PKHBT and PKHTB instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135682 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ee04a6d3a40c3017124e3fd89a0db473a2824498 |
|
21-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Sink ARMMCExpr and ARMAddressingModes into MC layer. First step to separate ARM MC code from target. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135636 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ab40f4b737b0a87c4048a9ad2f0c02be735e3770 |
|
20-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing of MUL instruction. Correctly handle 's' bit and predication suffices. Add parsing and encoding tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135596 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b29b4dd988c50d5c4a15cd196e7910bf46f30b83 |
|
20-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
Tweak ARM assembly parsing and printing of MSR instruction. The system register spec should be case insensitive. The preferred form for output with mask values of 4, 8, and 12 references APSR rather than CPSR. Update and tidy up tests accordingly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135532 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
5f16057d1e4b711d492091bc555693a03d4a1b6e |
|
19-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing for MOV (register). Correct the handling of the 's' suffix when parsing ARM mode. It's only a truly separate opcode in Thumb. Add test cases to make sure we handle the s and condition suffices correctly, including diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135513 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
558b66d3cd536cfba11e295816a15ea6476fcd16 |
|
19-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
Tidy up. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135507 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
731f2097944bfdf5b58ff1f19560a25ed15c9b2b |
|
19-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
Tighten conditional for 'mov' cc_out. Make sure we only clobber the cc_out operand if it is indeed a default non-setting operand. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135506 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ffa3225e26cc1977d20f0d9649fcd6f38a3c4815 |
|
19-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly parsing for MOV (immediate). Add range checking for the immediate operand and handle the "mov" mnemonic choosing between encodings based on the value of the immediate. Add tests for fixups, encoding choice and values, and diagnostic for out of range values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135500 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
5a18700470f0831b9b2af78862672561dd980345 |
|
19-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
Remove unused code. cc_out and pred operands are added during parsing via custom C++ now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135497 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
6bc1dbc37695bcfc5ae23a1a9e17550ee50fe02f |
|
19-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM range checking for so_imm operands in assembly parsing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135489 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
33c16a27370939de39679245c3dff72383c210bd |
|
15-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM diagnostic when 's' suffix on mnemonic that can't set flags. For example, "mlss r0, r1, r2, r3". The MLS instruction does not have a flag-setting variant. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135203 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c60f9b752381baa6c4b80c0739034660f1748c84 |
|
14-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Next round of MC refactoring. This patch factor MC table instantiations, MC registeration and creation code into XXXMCDesc libraries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135184 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
eac0796542d098caa371856d545faa6cdab5aad3 |
|
14-Jul-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Don't leak operands when putting them into a shift. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135169 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
032434d622b6cd030a60bb9045a520c93b0d7d68 |
|
14-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM Assembler support for DMB instruction. Flesh out the options supported for the instruction. Shuffle tests a bit and add entries for the rest of the options. Add an alias to handle the default operand of "sy". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135109 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
83ab070fc1fbb02ca77b0a37e6ae0eacf58001e1 |
|
14-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
Range checking for CDP[2] immediates. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135092 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
fff76ee7ef007b2bb74804f165fee475e30ead0d |
|
13-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
Range checking for 16-bit immediates in ARM assembly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135071 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
19906729a490744ce3071d20e3d514cadc12e6c5 |
|
13-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
Improve ARM assembly parsing diagnostics a bit. Catch potential cascading errors on a malformed so_reg operand and bail after the first error. Add some tests for the diagnostics we do want. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135055 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
e8606dc7c878d4562da5e3e5609b9d7d734d498c |
|
13-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
Flesh out ARM Parser support for shifted-register operands. Now works for parsing register shifted register and register shifted immediate arithmetic instructions, including the 'rrx' rotate with extend. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135049 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b7f689bab98777236a2bf600f299d232d246bb61 |
|
13-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
Update MCParsedAsmOperand debug methods. Update the debug output interface for MCParsedAsmOperand to have a print() method which takes an output stream argument, an << operator which invokes the print method using the given stream, and a dump() method which prints the operand to the dbgs() stream. This makes the interface more consistent with the rest of LLVM, and more convenient to use at the debugger command line. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135043 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
3f00e317064560ad11168d22030416d853829f6e |
|
11-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
Fix recognition of ARM 'adcs' mnemonic. The 'CS' is not a predication suffix in this case. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134903 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ffc0e73046f737d75e0a62b3a83ef19bcef111e3 |
|
09-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Change createAsmParser to take a MCSubtargetInfo instead of triple, CPU, and feature string. Parsing some asm directives can change subtarget state (e.g. .code 16) and it must be reflected in other modules (e.g. MCCodeEmitter). That is, the MCSubtargetInfo instance must be shared. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134795 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
eb0caa115491019f7f7fe45fc70ad47682244187 |
|
09-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Fix indentation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134764 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
32869205052430f45d598fba25ab878d8b29da2d |
|
09-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Add support for ARM / Thumb mode switching with .code 16 and .code 32. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134760 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
75ca4b94bd9dcd3952fdc237429342a2154ba142 |
|
08-Jul-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Plug a leak by giving the AsmParser ownership of the MCSubtargetInfo. Found by valgrind. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134738 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
480cee5d4396a380ada6ffd03551b5700d041fe0 |
|
08-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
TargetAsmParser doesn't need reference to Target. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134721 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ebdeeab812beec0385b445f3d4c41a114e0d972f |
|
08-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Eliminate asm parser's dependency on TargetMachine: - Each target asm parser now creates its own MCSubtatgetInfo (if needed). - Changed AssemblerPredicate to take subtarget features which tablegen uses to generate asm matcher subtarget feature queries. e.g. "ModeThumb,FeatureThumb2" is translated to "(Bits & ModeThumb) != 0 && (Bits & FeatureThumb2) != 0". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134678 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
63b46faeb8acae9b7e5f865b7417dc00b9b9dad3 |
|
01-Jul-2011 |
Jim Grosbach <grosbach@apple.com> |
Thumb1 register to register MOV instruction is predicable. Fix a FIXME and allow predication (in Thumb2) for the T1 register to register MOV instructions. This allows some better codegen with if-conversion (as seen in the test updates), plus it lays the groundwork for pseudo-izing the tMOVCC instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134197 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
6b8f1e35eacba34a11e2a7d5f614efc47b43d2e3 |
|
28-Jun-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM Assembly support for Thumb mov-immediate. Correctly parse the forms of the Thumb mov-immediate instruction: 1. 8-bit immediate 0-255. 2. 12-bit shifted-immediate. The 16-bit immediate "movw" form is also legal with just a "mov" mnemonic, but is not yet supported. More parser logic necessary there due to fixups. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133966 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
df8fe9901df829a02d1257121f35a78a434aca0d |
|
27-Jun-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM Asm parsing of Thumb2 move immediate. Thumb2 MOV mnemonic can accept both cc_out and predication. We don't (yet) encode the instruction properly, but this gets the parsing part. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133945 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d1f0bbee189ea7cd18d03c4f9f55d0a33b070814 |
|
27-Jun-2011 |
Jim Grosbach <grosbach@apple.com> |
Add exception necessitated by 133938. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133939 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
660a9ec4aa08b42a1379e5caa3935d301b1e27b7 |
|
27-Jun-2011 |
Jim Grosbach <grosbach@apple.com> |
ARM assembly carry set/clear condition code aliases for 'hi/lo' git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133938 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
be64b394317feb8d7bcb732bdfb35e0b286efd4c |
|
28-May-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
ARM asm parser wasn't able to parse a "mov" instruction while in Thumb mode (only the "mov.w" variant). Now, when parsing "mov" in thumb mode, default to the Thumb 1 versions/encodings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132233 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
56926a39619bd644c83c4128f0b55189e52707d7 |
|
25-May-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Fix PR9762 Enable the parsing of the operand "cpsr_all" for the ARM msr instruction git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132026 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
6469540adf63d94a876c2b623cb4ca70479647f7 |
|
16-May-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
sets bit 0 of the function address of thumb function in .symtab ("T is 1 if the target symbol S has type STT_FUNC and the symbol addresses a Thumb instruction ;it is 0 otherwise." from "ELF for the ARM Architecture" 4.7.1.2) Patch by Koan-Sin Tan! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131406 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f6d9109124fa9ee5533dcc5a1c9f2af694890706 |
|
18-Apr-2011 |
Sean Callanan <scallanan@apple.com> |
Small fix to the ARM AsmParser to ensure that a superclass variable is instantiated properly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129713 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ac79e4c82f201c30a06c2cd05baebd20f5b49888 |
|
04-Apr-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
- Implement asm parsing support for LDRSBT, LDRHT, LDRSHT and STRHT also fix the encoding of the later. - Add a new encoding bit to describe the index mode used in AM3. - Teach printAddrMode3Operand to check by the addressing mode which index mode to print. - Testcases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128832 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
e3662cca5d204a3e0bceaead1b35361117630fab |
|
01-Apr-2011 |
Matt Beaumont-Gay <matthewbg@google.com> |
Remove unused variables git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128692 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ae0855401b8c80f96904b6808b0bc4c89216aecd |
|
01-Apr-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Apply again changes to support ARM memory asm parsing. I removed all LDR/STR changes and left them to a future patch. Passing all checks now. - Implement asm parsing support for LDRT, LDRBT, STRT, STRBT and fix the encoding wherever is possible. - Add a new encoding bit to describe the index mode used and teach printAddrMode2Operand to check by the addressing mode which index mode to print. - Testcases git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128689 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b41aaab5a1769f4df04d566da37866ac91b6ee9e |
|
31-Mar-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Revert r128632 again, until I figure out what break the tests git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128635 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
bcd3a9cd84d3bb143075d31bdf631f621f44f9e7 |
|
31-Mar-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Reapply r128585 without generating a lib depedency cycle. An updated log: - Implement asm parsing support for LDRT, LDRBT, STRT, STRBT and {STR,LDC}{2}_{PRE,POST} fixing the encoding wherever is possible. - Move all instructions which use am2offset without a pattern to use addrmode2. - Add a new encoding bit to describe the index mode used and teach printAddrMode2Operand to check by the addressing mode which index mode to print. - Testcases git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128632 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
e4345c9977e65b14fa4b93d19c7e67a7b15f7f40 |
|
31-Mar-2011 |
Matt Beaumont-Gay <matthewbg@google.com> |
Revert "- Implement asm parsing support for LDRT, LDRBT, STRT, STRBT and" This revision introduced a dependency cycle, as nlewycky mentioned by email. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128597 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
40829ed6f5e449fa33a9cd7022ce6c3941dace3d |
|
31-Mar-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
- Implement asm parsing support for LDRT, LDRBT, STRT, STRBT and {STR,LDC}{2}_PRE. - Fixed the encoding in some places. - Some of those instructions were using am2offset and now use addrmode2. Codegen isn't affected, instructions which use SelectAddrMode2Offset were not touched. - Teach printAddrMode2Operand to check by the addressing mode which index mode to print. - This is a work in progress, more work to come. The idea is to change places which use am2offset to use addrmode2 instead, as to unify assembly parser. - Add testcases for assembly parser git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128585 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
1866af4a982be999e4d0c08c38ebec71f3ed4025 |
|
24-Mar-2011 |
Matt Beaumont-Gay <matthewbg@google.com> |
Suppress an unused variable warning in -asserts builds git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128244 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
505f3cd2965e65b6b7ad023eaba0e3dc89b67409 |
|
24-Mar-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Add asm parsing support w/ testcases for strex/ldrex family of instructions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128236 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0082830cb26248178fe5cc9bbdbd00881556c33d |
|
18-Mar-2011 |
Owen Anderson <resistor@mac.com> |
Add support to the ARM asm parser for the register-shifted-register forms of basic instructions like ADD. More work left to be done to support other instances of shifter ops in the ISA. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127917 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4b19c9865ee94367d7b3594c36e59e4c15ba82cc |
|
19-Feb-2011 |
Joerg Sonnenberger <joerg@bec.de> |
Avoid dangling else warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126004 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8bba1a5ef0f8a71de2e58c7f05b8714a73464ca8 |
|
18-Feb-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Fix style and a typo git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125949 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
584bf7bb03e4cf1475b26851edcc1ddb66b85028 |
|
18-Feb-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Add assembly parsing support for "msr" and also fix its encoding. Also add testcases for the disassembler to make sure it still works for "msr". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125948 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
e98d646b1194c522b121e1a70906efe4ea578fc8 |
|
14-Feb-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
A fail to match coprocessor number and register number must fail instead of assert. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125521 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
a2b6e4151b75248f9dbf8067186cba673520f8f4 |
|
14-Feb-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Fix encoding and add parsing support for the arm/thumb CPS instruction: - Add custom operand matching for imod and iflags. - Rename SplitMnemonicAndCC to SplitMnemonic since it splits more than CC from mnemonic. - While adding ".w" as an operand, don't change "Head" to avoid passing the wrong mnemonic to ParseOperand. - Add asm parser tests. - Add disassembler tests just to make sure it can catch all cps versions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125489 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f922c47143d247cbae14b294a0bada139bcd35f6 |
|
12-Feb-2011 |
Jim Grosbach <grosbach@apple.com> |
AsmMatcher custom operand parser failure enhancements. Teach the AsmMatcher handling to distinguish between an error custom-parsing an operand and a failure to match. The former should propogate the error upwards, while the latter should continue attempting to parse with alternative matchers. Update the ARM asm parser accordingly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125426 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
706d946cfe44fa93f482c3a56ed42d52ca81b257 |
|
07-Feb-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Add support for parsing dmb/dsb instructions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125055 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
fafde7f0b7c70e08de719d9e33ce9f6fdaefc984 |
|
07-Feb-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Remove the MCR asm parser hack and start using the custom target specific asm parsing of operands introduced in r125030. As a small note, besides using a more generic approach we can also have more descriptive output when debugging llvm-mc, example: mcr p7, #1, r5, c1, c1, #4 note: parsed instruction: ['mcr', <ARMCC::al>, <coprocessor number: 7>, 1, <register 73>, <coprocessor register: 1>, <coprocessor register: 1>, 4] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125052 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b412915ff6229b3e2dffedcfb0f3fb7e85259841 |
|
04-Feb-2011 |
Daniel Dunbar <daniel@zuster.org> |
MC/AsmParser: Add support for allowing the conversion process to fail (via custom conversion functions). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124872 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
69df72367f45c0414541196efaf7c13b1ccd3f08 |
|
03-Feb-2011 |
Bob Wilson <bob.wilson@apple.com> |
Fix 80-column violations and whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124819 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
9e56fb12c504c82c92947fe9c46287fc60116b91 |
|
28-Jan-2011 |
Kevin Enderby <enderby@apple.com> |
Changed llvm-mc arm target to give an error if .syntax divided is used. Since only .syntax unified is supported. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124454 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
bf7553210ae44f05e7460edeae1ee499d8a22dcb |
|
27-Jan-2011 |
Roman Divacky <rdivacky@freebsd.org> |
Introduce virtual ParseRegister method in TargetAsmParser. Create override of this method in X86/ARM/MBlaze. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124378 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
e47f3751d7770916f250a00a84316d412e959c00 |
|
20-Jan-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Fix the encoding and parsing of clrex instruction git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123936 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8dd37f7b7dca7907f9f070dc96359f242e102163 |
|
20-Jan-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Add cdp/cdp2 instructions for thumb/thumb2 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123929 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b32f7a5f4bc678c052db40cbb4ac8617c134aa24 |
|
20-Jan-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
- Use a more appropriate name for Owen's ARM Parser isMCR hack since the same operands can be present in cdp/cdp2 instructions. Also increase the hack with cdp/cdp2 instructions. - Fix the encoding of cdp/cdp2 instructions for ARM (no thumb and thumb2 yet) and add testcases for t hem. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123927 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
fa5bd27fbe5188ca708ac0dda4f32d90505da9f5 |
|
20-Jan-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Add mcr* and mr*c support to thumb targets git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123917 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
892fc6d7b64364b230261daa967518a71748c01b |
|
18-Jan-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Fix the encoding of t2ISB by using the right class and also parse it correctly git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123776 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
fdcee77887372dbf6589d47cc33094965b679f24 |
|
18-Jan-2011 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Follow the current hack set and enable the correct parsing of bkpt while in thumb mode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123772 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4b462672d2b4950e5f059bd093db524aa10e8377 |
|
18-Jan-2011 |
Daniel Dunbar <daniel@zuster.org> |
McARM: Use accessors where appropriate. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123746 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
6ec56204f372df73e4a27085b188a72548b867ac |
|
18-Jan-2011 |
Daniel Dunbar <daniel@zuster.org> |
McARM: Fill in ASMOperand::dump() for memory operands. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123745 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2637dc9a252f25fd1c63acfe0606860ee7c8cfdf |
|
18-Jan-2011 |
Daniel Dunbar <daniel@zuster.org> |
McARM: Make ARMOperand use a union where appropriate. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123744 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
05d8b71424316ad7b014adbbb316f78c5bd46861 |
|
18-Jan-2011 |
Daniel Dunbar <daniel@zuster.org> |
McARM: Unify ParseMemory() successfull return. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123740 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0571093f4cf0414724674448fe6b973c0fa705b3 |
|
18-Jan-2011 |
Daniel Dunbar <daniel@zuster.org> |
McARM: Early exit on failure (NEFC). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123739 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d3df5f32c059b3ac111f1c08571d5493aa1d48c6 |
|
18-Jan-2011 |
Daniel Dunbar <daniel@zuster.org> |
McARM: Always keep an offset expression, if used (instead of assuming == 0 if used but not present), and simplify logic. Also, clean up various non-sensicalisms in isMemModeRegThumb() and isMemModeImmThumb(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123738 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
023835d51b6dd6e3a253deefa595b0d916b605ac |
|
18-Jan-2011 |
Daniel Dunbar <daniel@zuster.org> |
McARM: Add a variety of asserts on the sanity of memory operands. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123737 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
81f453c4b91b8c681d82d63257a271107626648e |
|
18-Jan-2011 |
Daniel Dunbar <daniel@zuster.org> |
McARM: Use a consistent marker for not-set OffsetRegNum. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123736 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0c9f250d54ed59108fffe5ce2f7df7bc8448915c |
|
13-Jan-2011 |
Owen Anderson <resistor@mac.com> |
Recognize alternative register names like ip -> r12. Fixes <rdar://problem/8857982>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123409 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
e4e5e2aae7e1e0e84877061432e7b981a360a77d |
|
13-Jan-2011 |
Owen Anderson <resistor@mac.com> |
Add support to the ARM MC infrastructure to support mcr and friends. This requires supporting the symbolic immediate names used for these instructions, fixing their pretty-printers, and adding proper encoding information for them. With this, we can properly pretty-print and encode assembly like: mrc p15, #0, r3, c13, c0, #3 Fixes <rdar://problem/8857858>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123404 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
67b212e03b77e921e2b9780059681125a45d15a7 |
|
13-Jan-2011 |
Kevin Enderby <enderby@apple.com> |
Fix ARMAsmParser::ParseOperand() to allow it to parse . as a branch target and directional local labels like 1f and 2b. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123393 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7597212abced110723f2fee985a7d60557c092ec |
|
13-Jan-2011 |
Evan Cheng <evan.cheng@apple.com> |
Model :upper16: and :lower16: as ARM specific MCTargetExpr. This is a step in the right direction. It eliminated some hacks and will unblock codegen work. But it's far from being done. It doesn't reject illegal expressions, e.g. (FOO - :lower16:BAR). It also doesn't work in Thumb2 mode at all. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123369 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
fef9ff492206330ff0a5b94cec5ac1455b28df88 |
|
13-Jan-2011 |
Kevin Enderby <enderby@apple.com> |
Add a FIXME and two asserts for now in the ARMAsmParser when it sees .code 16 or .code 32 if the TargetMachine's isThumb() boolean does not match. The correct fix is to switch ARM subtargets at that point and is tracked by rdar://8856789 which is bigger task. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123353 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8a8696db6b6f6e735bb9de630876af83946b45f9 |
|
13-Jan-2011 |
Jason W Kim <jason.w.kim.2009@gmail.com> |
Change call to Error() to assert() git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123350 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7caebff83d90a59aa74876ff887e822387f479e0 |
|
12-Jan-2011 |
Bill Wendling <isanbard@gmail.com> |
Sort the register list based on the *actual* register numbers rather than the enum values we give to them. <rdar://problem/8823730> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123321 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
9081b4b4cf89a161246e037f4817c69de2fcdf82 |
|
12-Jan-2011 |
Jason W Kim <jason.w.kim.2009@gmail.com> |
Workaround for bug 8721. .s Test added. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123292 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b72d2a92b75daa9cbac7338aff0cd8ae04c2b4bd |
|
11-Jan-2011 |
Evan Cheng <evan.cheng@apple.com> |
Clean up ARM subtarget code by using Triple ADT. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123276 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
eb9f3f91c03c29f020ee3c25cfefe7ae2b496526 |
|
11-Jan-2011 |
Daniel Dunbar <daniel@zuster.org> |
McARM: Fill in GetMnemonicAcceptInfo(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123253 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
3771dd041f6a68bef08b6f685a41d1d54f4e8b9d |
|
11-Jan-2011 |
Daniel Dunbar <daniel@zuster.org> |
McARM: Sketch some logic for determining when to add carry set and predication code operands based on the "canonical mnemonic". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123239 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
352e148cbe6498a6dd31b7fc71df7cd23c4b4d10 |
|
11-Jan-2011 |
Daniel Dunbar <daniel@zuster.org> |
McARM: Add more hard coded logic to SplitMnemonicAndCC to also split out the carry setting flag from the mnemonic. Note that this currently involves me disabling a number of working cases in arm_instructions.s, this is a hopefully short term evil which will be rapidly fixed (and greatly surpassed), assuming my current approach flies. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123238 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8ab1112bdc30b8675bb12431d8b5b270da42f1b5 |
|
10-Jan-2011 |
Daniel Dunbar <daniel@zuster.org> |
McARM: Flush out hard coded known non-predicated mnemonic list. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123189 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
6a5c22ed89c8bb73034a70105340acf6539dc58b |
|
10-Jan-2011 |
Daniel Dunbar <daniel@zuster.org> |
MC/ARM/AsmParser: Minor nitty fixes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123175 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
badbd2fde9b8debd6265e8ece511fb01123d1d5f |
|
10-Jan-2011 |
Daniel Dunbar <daniel@zuster.org> |
MC/ARM/AsmParser: Split out SplitMnemonicAndCC(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123169 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f4caf69720d807573c50d41aa06bcec1c99bdbbd |
|
14-Dec-2010 |
Bill Wendling <isanbard@gmail.com> |
The tLDR et al instructions were emitting either a reg/reg or reg/imm instruction based on the t_addrmode_s# mode and what it returned. There is some obvious badness to this. In particular, it's hard to do MC-encoding when the instruction may change out from underneath you after the t_addrmode_s# variable is finally resolved. The solution is to revert a long-ago change that merged the reg/reg and reg/imm versions. There is the addition of several new addressing modes. They no longer have extraneous operands associated with them. I.e., if it's reg/reg we don't have to have a dummy zero immediate tacked on to the SDNode. There are some obvious cleanups here, which will happen shortly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121747 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
44a9e8f869dd9d04a04eb556ff0ff4a1039d371f |
|
10-Dec-2010 |
Kevin Enderby <enderby@apple.com> |
Fix the leak from r121401 of the Operands erased in the list but not deleted. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121450 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
193c3acbe5cdb60767d114016970e898c7502d7a |
|
09-Dec-2010 |
Kevin Enderby <enderby@apple.com> |
Add support for parsing ARM arithmetic instructions that update or don't update the condition codes. Where the ones that do have an 's' suffix and the ones that don't don't have the suffix. The trick is if MatchInstructionImpl() fails we try again after adding a CCOut operand with the correct value and removing the 's' if present. Four simple test cases added for now, lots more to come. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121401 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
6aa49435994c33257b7588cac24671785d17fa6e |
|
07-Dec-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add parens to pacify gcc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121142 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
04f74942f2994a7c1d8e62c207c4005ed4652b6a |
|
06-Dec-2010 |
Jim Grosbach <grosbach@apple.com> |
Encode the register operand of ARM CondCode operands correctly. ARM::CPSR if the instruction is predicated, reg0 otherwise. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121020 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d67641b6f804110505a69aaed5479f446bbbb34e |
|
06-Dec-2010 |
Jim Grosbach <grosbach@apple.com> |
The ARM AsmMatcher needs to know that the CCOut operand is a register value, not an immediate. It stores either ARM::CPSR or reg0. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121018 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
1fd374e9c1c074c1681336bef31e65f0170b0f7e |
|
30-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
* Add support for encoding t_addrmode_s2 and t_addrmode_s1. They are the same as t_addrmode_s4, but with a different scaling factor. * Encode the Thumb1 load and store instructions. This involved a bit of refactoring (hi, Chris! :-). Some of the patterns became dead afterwards and were removed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120482 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ef4a68badbde372faac9ca47efb9001def57a43d |
|
30-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
Add parsing for the Thumb t_addrmode_s4 addressing mode. This can almost certainly be made more generic. But it does allow us to parse something like: ldr r3, [r2, r4] correctly in Thumb mode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120408 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
00a257af5b62df1921e3df3ee2fa4adc2ccbd297 |
|
30-Nov-2010 |
Jim Grosbach <grosbach@apple.com> |
Add a few missing initializers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120350 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
03f44a04e63ff77af12df33e10ffdc473609dfe2 |
|
30-Nov-2010 |
Jim Grosbach <grosbach@apple.com> |
Nuke trailing whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120344 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
9717fa9f29696bca45ddfdf206b1c382c8b40b78 |
|
21-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
The "trap" instruction is one of this which doesn't have a condition code. Hack the code to not add a "condition code" if it's trap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119937 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
cb21d1c9fd1cf53f063183f7eb28af7fa4052ef0 |
|
19-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
Use array_pod_sort because the list is contiguous. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119769 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
50d0f5894448aff6eb02ad63da55ecf26b54aeb8 |
|
19-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
Add support for parsing the writeback ("!") token. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119761 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
24d22d27640e9de954a5ac26f51a45cc96bb9135 |
|
18-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
Don't allocate the SmallVector of Registers. It gets messy figuring out who should delete what when the object gets copied around. It's also making valgrind upset. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119747 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0f6307561359fac4425a0b9e512931cf96c1ec5b |
|
17-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
Proper encoding for VLDM and VSTM instructions. The register lists for these instructions have to distinguish between lists of single- and double-precision registers in order for the ASM matcher to do a proper job. In all other respects, a list of single- or double-precision registers are the same as a list of GPR registers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119460 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8ea974039a8811ff83ad2c45ec1037ac78e5afab |
|
10-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
Emit a '!' if this is a "writeback" register or memory address. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118662 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
cc8d10e1a8a8555fa63f33e36e3c1ed2fb24389d |
|
10-Nov-2010 |
Matt Beaumont-Gay <matthewbg@google.com> |
Rename a parameter to avoid confusion with a local variable git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118656 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8e8b18bcfa87ff919f127b1270a6891db1c9021f |
|
10-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
Emit the warning about the register list not being in ascending order only once. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118653 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
5fa22a19750c082ff161db1702ebe96dd2a787e7 |
|
10-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
s/std::vector/SmallVector/ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118648 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c3236753d6bb69d20003a7da441e9a42707ed714 |
|
09-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
Delete the allocated vector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118644 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7729e06c128be01fc564870d5ea3d22d236dddb5 |
|
09-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
Two types of instructions have register lists: * LDM, et al, uses a bit mask to indicate the register list. * VLDM, et al, uses a base register plus number. The LDM instructions may be non-contiguous, but the VLDM ones must be contiguous. Those are semantic checks that should be done later in the compiler. Also postpone the creation of the bit mask until it's needed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118640 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
87f4f9a946549ad93046990a364ac5190333a7eb |
|
09-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
The "addRegListOperands()" function returns the start register and the total number of registers in the list. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118456 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b32e7844e9f79d2bd4ff34a1d19aba347f999abc |
|
08-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
Revert. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118389 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
e8399c6e01f5d53ddda361a5eb5952147bb25f94 |
|
07-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
In this context, a reglist is a reg. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118375 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
e717610f53e0465cde198536561a3c00ce29d59f |
|
06-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
Add support for parsing register lists. We can't use a bitfield to keep track of the registers, because the register numbers may be much greater than the number of bits available in the machine's register. I extracted the register list verification code out of the actual parsing of the registers. This made checking for errors much easier. It also limits the number of warnings that would be emitted for cascading infractions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118363 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8155e5b753aca42973cf317727f3805faddcaf90 |
|
06-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
Return the base register of a register list for the "getReg()" method. This is to satisfy the ClassifyOperand method of the Asm matcher without having to add a RegList type to every back-end. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118360 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
146018fc6414eb2a1e67b2d8798a42a2f55ec96c |
|
06-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
General cleanup: - Make ARMOperand a class so that some things are internal to the class. - Reformatting. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118357 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8d5acb7007decaf0c30bf4a3d4c55e5cc2cce0a7 |
|
06-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
Add a RegList (register list) object to ARMOperand. It will be used soon to hold (surprise!) a list of registers. Register lists are consecutive, so we only need to record the start register plus the number of registers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118351 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
12f40e9a6305fe7553ebce19346cb55874073fc7 |
|
06-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
Fix grammar. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118341 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
a60f157b7c6fb60b33598fa5143ed8cb91aa5107 |
|
06-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
Fix grammar. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118340 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d68fd9c79eeb30980c18dc3f74b2da839bb259f3 |
|
06-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
MatchRegisterName() returns 0 if it can't match the register. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118339 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
1d6a26507bfd75758f5c8a29bccf577784ead751 |
|
06-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
Use TryParseRegister() instead of MatchRegisterName(). The former returns -1 while the latter doesn't. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118338 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2a301704ea76535f0485d5c3b75664b323249bdb |
|
05-Nov-2010 |
Jim Grosbach <grosbach@apple.com> |
Hook up the '.code {16|32}' directive to the streamer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118310 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
642fc9c24ba7c43a4a962c6c05cfffce713d7de7 |
|
05-Nov-2010 |
Jim Grosbach <grosbach@apple.com> |
Hook up the '.thumb_func' directive to the streamer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118307 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
83c4018fcca18fe9c281c3943fc58a17621636c4 |
|
05-Nov-2010 |
Jim Grosbach <grosbach@apple.com> |
Fix past-o. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118304 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
92b5a2eb1646b3c1173a5ff3c0073f24ed5ee6a4 |
|
03-Nov-2010 |
Bill Wendling <isanbard@gmail.com> |
The MC code couldn't handle ARM LDR instructions with negative offsets: vldr.64 d1, [r0, #-32] The problem was with how the addressing mode 5 encodes the offsets. This change makes sure that the way offsets are handled in addressing mode 5 is consistent throughout the MC code. It involves re-refactoring the "getAddrModeImmOpValue" method into an "Imm12" and "addressing mode 5" version. But not to worry! The majority of the duplicated code has been unified. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118144 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
469ebbe148b18a78963e8bc3fa7ae8e5700d8d27 |
|
01-Nov-2010 |
Jim Grosbach <grosbach@apple.com> |
Add FIXME. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117936 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
833c93c7958dbbd9d648f331091fbfbeabf342e6 |
|
01-Nov-2010 |
Jim Grosbach <grosbach@apple.com> |
Mark ARM subtarget features that are available for the assembler. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117929 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d4462a5a4feae0293ca14376ff25d8bb72dd12a9 |
|
01-Nov-2010 |
Jim Grosbach <grosbach@apple.com> |
trailing whitespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117927 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4aaf59d8ed5e565632314a1eeb7cf5a1fe1fdbe0 |
|
30-Oct-2010 |
Jim Grosbach <grosbach@apple.com> |
Tidy up. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117782 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
dba34d874d0ac8c334f03d770b80c6ee2f12808a |
|
30-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
simplify this code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117771 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
e5658fa15ebb733e0786a96c1852c7cf590d5b24 |
|
30-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
split MaybeParseRegister into its two logical uses, eliminating malloc+free traffic. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117769 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
52925b60f1cd4cf810524ca05b00a207a926ab9f |
|
30-Oct-2010 |
Bill Wendling <isanbard@gmail.com> |
Some instructions end with an "ls" prefix, but it doesn't indicate that they are conditional. Check for those instructions explicitly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117747 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
3df518e67edaf358154af394cc99d21435b7b118 |
|
29-Oct-2010 |
Jim Grosbach <grosbach@apple.com> |
add FIXME git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117718 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
80eb233a3ce1a6f2e6c0847cb3e456d735e37569 |
|
29-Oct-2010 |
Jim Grosbach <grosbach@apple.com> |
Handle ARM addrmode5 instructions with an offset. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117672 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d8d716fad3eefce98fac5a76a70250d89fcf9a20 |
|
29-Oct-2010 |
Jim Grosbach <grosbach@apple.com> |
Revert 117660. Apparently it's not as trivial as that... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117663 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
da54c6dd4f4e54d654722390311bdab502badc3a |
|
29-Oct-2010 |
Jim Grosbach <grosbach@apple.com> |
ARM addrmode5 instructions have neither writeback nor post-indexed modes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117660 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
16c7425cff6ac3d0a4a9c56779bdfa91b2e8e863 |
|
29-Oct-2010 |
Jim Grosbach <grosbach@apple.com> |
Trailing whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117651 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
61a4d56a03c051834ee25d8248fa9f434e7e8c19 |
|
29-Oct-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
ARMAsmParser: Plug a memory leak. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117648 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c223e2b10b4753a63dfe7e6980c650b179139983 |
|
29-Oct-2010 |
Eric Christopher <echristo@apple.com> |
Add an unreachable to silence warning - the switch is actually fully enumerated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117647 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
14b93851cc7611ae6c2000f1c162592ead954420 |
|
29-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
add simple support for addrmode5 operands, allowing vldr.64 to work. I have no idea if this is fully right, but it is in the right direction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117626 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
e73d4f8ec7af68fc0f67811e4e004562ab538014 |
|
28-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
give better error diagnostics, for example: t.s:1:14: error: invalid operand for instruction vldr.64 d17, [r0] ^ instead of: t.s:1:1: error: unrecognized instruction vldr.64 d17, [r0] ^ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117611 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
fa42fad8bf7b0058ba031a275e1e8ce53b2cb1ad |
|
28-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
move a method out of line. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117605 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
550276ee5bb3e115d4d81156dceffb9d3d78823a |
|
28-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
remove the rest of hte owningptr's, no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117603 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c0ddfaa134fe60c09686906b3a8f489531653453 |
|
28-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
rearrange ParseRegisterList. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117560 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
3a69756e392942bc522193f38d7f33958ed3b131 |
|
28-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
refactor some code to simplify it, eliminating some owningptr's. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117559 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
1cd9708f5cc13995a4e84ef498e4162a47f8b4f5 |
|
20-Oct-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Remove remaining uses of ATTRIBUTE_UNUSED on variables, and delete three #includes in the process. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116919 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7c51a3172cf5104ebeaef22f1366fa634ca00d85 |
|
29-Sep-2010 |
Chris Lattner <sabre@nondot.org> |
implement rdar://8456378 and PR7557 - support for the fstsw, an instruction that requires a WHOLE NEW wonderful kind of alias. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115015 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7036f8be4df8a1a830ca01afe9497b035a5647d6 |
|
29-Sep-2010 |
Chris Lattner <sabre@nondot.org> |
change the protocol TargetAsmPArser::MatchInstruction method to take an MCStreamer to emit into instead of an MCInst to fill in. This allows the matcher extra flexibility and is more convenient. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115014 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
cbf8a98c7c652e96967623c80cb945fef001b090 |
|
11-Sep-2010 |
Chris Lattner <sabre@nondot.org> |
fix the asmparser so that the target is responsible for skipping to the end of the line on a parser error, allowing skipping to happen for syntactic errors but not for semantic errors. Before we would miss emitting a diagnostic about the second line, because we skipped it due to the semantic error on the first line: foo %eax bar %al This fixes rdar://8414033 - llvm-mc ignores lines after an invalid instruction mnemonic errors git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113688 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
34e53140c2cc02ce4c9d060e48302576d3962e1c |
|
08-Sep-2010 |
Chris Lattner <sabre@nondot.org> |
change the MC "ParseInstruction" interface to make it the implementation's job to check for and lex the EndOfStatement marker. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113347 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ce4a3355d96971e7edcbff3c1975f83e1ddcb8f2 |
|
07-Sep-2010 |
Chris Lattner <sabre@nondot.org> |
in the case where an instruction only has one implementation of a mneumonic, report operand errors with better location info. For example, we now report: t.s:6:14: error: invalid operand for instruction cwtl $1 ^ but we fail for common cases like: t.s:11:4: error: invalid operand for instruction addl $1, $1 ^ because we don't know if this is supposed to be the reg/imm or imm/reg form. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113178 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
79ed3f77e8b87615b80054ca6e4e3ba5e07445bd |
|
06-Sep-2010 |
Chris Lattner <sabre@nondot.org> |
change MatchInstructionImpl to return an enum instead of bool. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113165 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
0692ee676f8cdad25ad09a868bf597af4115c9d9 |
|
06-Sep-2010 |
Chris Lattner <sabre@nondot.org> |
have AsmMatcherEmitter.cpp produce the hunk of code that gets included into the middle of the class, and rework how the different sections of the generated file are conditionally included for simplicity. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113163 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
14ab39e43f151d833e74534c87b670b767ff0d5d |
|
01-Sep-2010 |
Chris Lattner <sabre@nondot.org> |
zap dead code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112712 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f1e29d4c21d15f9e1e3a64f3b92b1aa9908e4f63 |
|
12-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC/AsmParser: Push the burdon of emitting diagnostics about unmatched instructions onto the target specific parser, which can do a better job. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110889 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
4f98f834593f0a107268d19a557b63f0da33a751 |
|
12-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
tblgen/AsmMatcher: Always emit the match function as 'MatchInstructionImpl', target specific parsers can adapt the TargetAsmParser to this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110888 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
345a9a6269318c96f333c0492b23733e29d952df |
|
11-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC/ARM: Add basic support for handling predication by parsing it out of the mnemonic into a separate operand form. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110794 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
5747b13af801d5af7cd5827c07c6a59e981bdb1a |
|
11-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC/ARM: Split mnemonic on '.' characters. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110793 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
fa315de8f44ddb318a7c6ff913e80d71d7c68859 |
|
11-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC/ARM: Fill in ARMOperand::dump a bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110792 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b3cb6967949493a2e1b10d015ac08b746736764e |
|
11-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
MCAsmParser: Add dump() hook to MCParsedAsmOperand. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110790 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
8462b30548fb5969250858036638c73c16b65b43 |
|
11-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC/ARM: Add an ARMOperand class for condition codes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110788 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
3483acabf012b847b13b969ebd9ce5c4d16d9eb7 |
|
11-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
MC/ARM: Switch to using the generated match functions instead of stub implementations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110783 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d73ada7d24832bc2a4c3965b8f00ffd951341acf |
|
19-Jul-2010 |
Daniel Dunbar <daniel@zuster.org> |
Target: Give the TargetAsmParser access to the TargetMachine. - Unfortunate, but necessary for now to handle subtarget instruction matching. Eventually we should factor out the lower level target machine information so we don't need to do this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108664 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
38e59891ee4417a9be2f8146ce0ba3269e38ac21 |
|
15-Jul-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Don't pass StringRef by reference. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
3472766f9eb7d66f234c390ce1b3a8b76f0ee9ce |
|
12-Jul-2010 |
Duncan Sands <baldrick@free.fr> |
Convert some tab stops into spaces. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108130 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
58c86910b31c569a5709466c82e2fabae2014a56 |
|
29-Jun-2010 |
Duncan Sands <baldrick@free.fr> |
Remove unused variable Loc and pointless variables unified_syntax and thumb_mode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107133 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
90b7097f92f6b4f6b27cd88c7c88a21b777f5795 |
|
07-Apr-2010 |
Sean Callanan <scallanan@apple.com> |
Added an AsmLexer for the ARM target, which uses a simple mapping of register names to IDs to identify register tokens. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100685 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
762647673379dbcff6bbba6167b0b1b0d658ba9d |
|
03-Apr-2010 |
Sean Callanan <scallanan@apple.com> |
Added support for reporting operand token ranges to the ARM AsmParser. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100232 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
c6ef277a0b8f43af22d86aea9d5053749cacfbbb |
|
22-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
create a new MCParser library and move some stuff into it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94129 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
18b8323de70e3461b5d035e3f9e4f6dfaf5e674b |
|
19-Jan-2010 |
Sean Callanan <scallanan@apple.com> |
Promoted the getTok() method to MCAsmParser so that the two token accessor functions are declared consistently. Modified the clients of MCAsmParser to reflect this change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93916 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
b9a25b7744ed12b80031426978decce3d4cebbd7 |
|
19-Jan-2010 |
Sean Callanan <scallanan@apple.com> |
Propagated the parser-side Lex function's declaration to MCAsmParser, and changed the target-specific AsmParsers to use it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93900 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
aaec205b87637cd0d59d4f11630db603686eb73d |
|
19-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
Generalize mcasmstreamer data emission APIs to take an address space identifier. There is no way to work around it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93896 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
9898671a74d3fc924347e679c45edaa685b3fe6e |
|
14-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
Split the TargetAsmParser "ParseInstruction" interface in half: the new ParseInstruction method just parses and returns a list of target operands. A new MatchInstruction interface is used to turn the operand list into an MCInst. This requires new/deleting all the operands, but it also gives targets the ability to use polymorphic operands if they want to. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93469 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
f007e853e26845cd6866b52d646455fc69f4e0af |
|
14-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
prune #includes in TargetAsmParser.h Pass in SMLoc of instr opcode into ParseInstruction. Make AsmToken be a class, not a struct. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93457 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
7659389d0d4d315d30877592221da6a6f663114a |
|
14-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
introduce MCParsedAsmOperand git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93455 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
079b6f5ee5c3516b773a3ad71874c14e8ea7479c |
|
28-Dec-2009 |
Bill Wendling <isanbard@gmail.com> |
Add an "ATTRIBUTE_UNUSED" macro (and use it). It's for variables which are mainly used in debugging and/or assert situations. It should make the compiler and the static analyzer stop nagging us about them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92181 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
bd13cb911cb40ac6a82db12deaef775a9d19ff4b |
|
16-Dec-2009 |
John McCall <rjmccall@apple.com> |
Every anonymous namespace is different. Caught by clang++. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91481 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
60131c0d0bb04d0ae3c13cbd055616c71d86e8ea |
|
02-Nov-2009 |
Kevin Enderby <enderby@apple.com> |
Fix ARMAsmParser::ParseMemoryOffsetReg() where the parameter OffsetRegNum should have been passed as a reference. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85823 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
9c41fa87eac369d84f8bfc2245084cd39f281ee4 |
|
30-Oct-2009 |
Kevin Enderby <enderby@apple.com> |
Updates to the ARM target assembler for llvm-mc per review comments from Daniel Dunbar. - Reordered the fields in the ARMOperand Mem struct to make the struct smaller. Making bool's into 1 bit fields and put the MCExpr* fields adjacent to each other. - Fixed a number of places in ARMAsmParser.cpp so they have doxygen comments. - Change the name of ARMAsmParser::ParseRegister() to MaybeParseRegister and added the bool ParseWriteBack parameter. - Changed ARMAsmParser::ParseMemory() to call MaybeParseRegister(). - Added ARMAsmParser::ParseMemoryOffsetReg to factor out parsing the offset of a memory operand. And use it for both parsing both preindexed and post indexing addressing forms in ARMAsmParser::ParseMemory. - Changed the first argument to ParseShift() to a reference. - Changed ParseShift() to check for Rrx first and return to reduce nesting. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85632 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
2685a29a8d4ced7791bb671e28f9fe51c74eb3bb |
|
20-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
Wire up the ARM MCInst printer, for llvm-mc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84600 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
e2a98dd2a4f007d5d9d3c71460cfbe0a825b8993 |
|
15-Oct-2009 |
Kevin Enderby <enderby@apple.com> |
Fix ARM memory operand parsing of post indexing with just a base register, that is just "[Rn]" and no tailing comma with an offset, etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84205 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
515d509360d81946247fd0f937034cdf1f237c72 |
|
15-Oct-2009 |
Kevin Enderby <enderby@apple.com> |
More bits of the ARM target assembler for llvm-mc, code added to parse labels as expressions, code for parsing a few arm specific directives (still needs the MCStreamer calls for these). Some clean up of the operand parsing code and adding some comments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84201 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
079469f649d8da3923b9f747d7062c84e01cc4ae |
|
14-Oct-2009 |
Kevin Enderby <enderby@apple.com> |
Correct comment about ARM immediates using '#' not '$' and TODO for modifiers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84055 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
cfe072401658bbe9336b200b79526b65c5213b74 |
|
14-Oct-2009 |
Kevin Enderby <enderby@apple.com> |
More bits of the ARM target assembler for llvm-mc to parse immediates. Also fixed a couple of coding style things that crept in. And added more to the temporary hacked up ARMAsmParser::MatchInstruction() method for testing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84040 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
6bd266e56799703cd2773cadc4da8bc3c5107fdf |
|
13-Oct-2009 |
Kevin Enderby <enderby@apple.com> |
Fix two warnings about unused variables that are only used in assert() calls. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83917 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
9d36962ab66f728291f0921b3b4851a37d303e95 |
|
13-Oct-2009 |
Kevin Enderby <enderby@apple.com> |
Fix a problem in the code where ARMAsmParser::ParseShift() second argument should have been a pointer to a reference. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83915 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
d7894f105a3c397a3d7f5c5136eee39f5865e64b |
|
09-Oct-2009 |
Kevin Enderby <enderby@apple.com> |
Added another bit of the ARM target assembler to llvm-mc to parse register lists. Changed ARMAsmParser::MatchRegisterName to return -1 instead of 0 on errors so 0-15 values could be returned as register numbers. Also added the rest of the arm register names to the currently hacked up version to allow more testing. Some changes to ARMAsmParser::ParseOperand to give different errors for things not yet supported and some additions to the hacked ARMAsmParser::MatchInstruction to allow more testing for now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83673 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
99e6d4e8392497d950d48b03f45c79b7dd131327 |
|
07-Oct-2009 |
Kevin Enderby <enderby@apple.com> |
Add another bit of the ARM target assembler to llvm-mc to parse registers with writeback, things like "sp!", etc. Also added some more stuff to the temporarily hacked methods ARMAsmParser::MatchRegisterName and ARMAsmParser::MatchInstruction to allow more parser testing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83477 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
a7ba3a81c008142a91d799e2ec3152cfd6bbb15f |
|
07-Oct-2009 |
Kevin Enderby <enderby@apple.com> |
Added bits of the ARM target assembler to llvm-mc to parse some load instruction operands. Some parsing of arm memory operands for preindexing and postindexing forms including with register controled shifts. This is a work in progress. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83424 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|
ca9c42c4daa8f4ffd9411e11c05fb53ee1bfaf70 |
|
15-Sep-2009 |
Kevin Enderby <enderby@apple.com> |
Added the first bits of the ARM target assembler to llvm-mc. For now it only parses the .word directive as 4 bytes and ARMAsmParser::ParseInstruction will give an error is called. Broke out the test of the .word directive into two different test cases, one for x86 and one for arm. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81817 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
|