Jim Grosbach
|
6729c48b94
|
Thumb2 assembly parsing and encoding for UHASX/UHSAX.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140088 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-19 23:13:25 +00:00 |
|
Jim Grosbach
|
4032eaf98c
|
Thumb2 assembly parsing and encoding for UASX.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140085 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-19 23:05:22 +00:00 |
|
Owen Anderson
|
04c7877894
|
Thumb2 TBB and TBH instructions are only allowed at the end of IT blocks, not in the middle.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140079 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-19 22:34:23 +00:00 |
|
Jim Grosbach
|
7f739bee26
|
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
|
2011-09-19 22:21:13 +00:00 |
|
Jim Grosbach
|
bc80e94865
|
Tidy up a bit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140050 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-19 20:31:59 +00:00 |
|
Jim Grosbach
|
326efe5891
|
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
|
2011-09-19 20:29:33 +00:00 |
|
Owen Anderson
|
061c3c4506
|
Specify an additional fixed bit in the Thumb2 SSAT encoding to prevent the decoder from emitting gibberish for this invalid encoding.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140041 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-19 20:00:02 +00:00 |
|
Jim Grosbach
|
fb12f35545
|
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
|
2011-09-19 18:42:21 +00:00 |
|
Owen Anderson
|
ecd1c55790
|
Handle STRT (and friends) like LDRT (and friends) for decoding purposes. Port over additional encoding tests to decoding tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140032 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-19 18:07:10 +00:00 |
|
Jim Grosbach
|
8a8d28b039
|
Thumb2 assembly parsing and encoding for SXTAB/SXTAB16/SXTAH.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140029 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-19 17:56:37 +00:00 |
|
Owen Anderson
|
cb77551927
|
Bitfield mask instructions are unpredictable if the encoded LSB is higher than the encoded MSB.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139972 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 23:30:01 +00:00 |
|
Owen Anderson
|
8b22778431
|
Fix bitfield decoding based on Eli's feedback.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139969 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 23:04:48 +00:00 |
|
Jim Grosbach
|
f67e8554bf
|
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
|
2011-09-16 22:58:42 +00:00 |
|
Owen Anderson
|
e4f2df945a
|
Thumb2 pre-indexed loads/stores use the restricted GPR set for Rt.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139965 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 22:42:36 +00:00 |
|
Owen Anderson
|
89db0f690c
|
Fix disassembly of Thumb2 BFI instructions with bit range of [0, 32).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139964 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 22:29:48 +00:00 |
|
Owen Anderson
|
8a28bdcbcc
|
Add fixed bits to correctly distinguish Thumb2 SSAT/SSAT16's.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139958 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 22:17:02 +00:00 |
|
Jim Grosbach
|
ee2c2a4f98
|
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
|
2011-09-16 21:55:56 +00:00 |
|
Jim Grosbach
|
947a24cd64
|
Tidy up. 80 columns.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139944 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 21:09:00 +00:00 |
|
Owen Anderson
|
705b48ff86
|
Fix disassembly of Thumb2 LDRSH with a #-0 offset.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139943 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 21:08:33 +00:00 |
|
Jim Grosbach
|
642caea2c6
|
Thumb2 assembly parsing and encoding for STR(immediate).
Add aliases for STRB/STRH while there. Tests forthcoming for those.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139942 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 21:06:12 +00:00 |
|
Jim Grosbach
|
8213c96655
|
Thumb2 assembly parsing and encoding for STMIA.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139938 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 20:50:13 +00:00 |
|
Jim Grosbach
|
50bd470d85
|
Thumb2 assembly parsing and encoding for SSAX.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139929 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 18:37:10 +00:00 |
|
Jim Grosbach
|
b105b997a4
|
Thumb2 assembly parsing and encoding for SSAT.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139926 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 18:32:30 +00:00 |
|
Jim Grosbach
|
05ec8f7ac9
|
Thumb2 assembly parsing and encoding for SRS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139925 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 18:25:22 +00:00 |
|
Jim Grosbach
|
3443ed525a
|
Thumb2 assembly parsing and encoding for SMMULL.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139921 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 18:05:48 +00:00 |
|
Jim Grosbach
|
7ff2472b82
|
Thumb2 assembly parsing and encoding for SMLSLD/SMLSLDX.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139909 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 17:10:44 +00:00 |
|
Jim Grosbach
|
231948f860
|
Thumb2 assembly parsing and encoding for SMLALD/SMLALDX.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139906 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 16:58:03 +00:00 |
|
Jim Grosbach
|
db7e2e59dd
|
Kill some dead code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139904 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 16:45:40 +00:00 |
|
Jim Grosbach
|
fb9cffea4a
|
Tidy up a bit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139903 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 16:39:25 +00:00 |
|
Jim Grosbach
|
837fc5e9d5
|
Thumb2 assembly parsing and encoding for SMLAL.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139902 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-16 16:38:00 +00:00 |
|
Jim Grosbach
|
eeca7582fa
|
Remove incorrect comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139877 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-15 23:45:50 +00:00 |
|
Owen Anderson
|
98c5ddabca
|
Don't attach annotations to MCInst's. Instead, have the disassembler return, and the printer accept, an annotation string which can be passed through if the client cares about annotations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139876 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-15 23:38:46 +00:00 |
|
Jim Grosbach
|
c075d45364
|
Thumb2 assembly parsing and encoding for SHASX/SHSAX.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139870 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-15 22:34:29 +00:00 |
|
Eli Friedman
|
74bf18ccea
|
Minor cleanup.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139869 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-15 22:26:18 +00:00 |
|
Eli Friedman
|
7cc156647f
|
Use a more efficient lowering for Unordered/Monotonic atomic load/store on Thumb1.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139865 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-15 22:18:49 +00:00 |
|
Jim Grosbach
|
e4e4a93e9e
|
Thumb2 assembly parsing and encoding for SASX.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139843 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-15 21:01:23 +00:00 |
|
Jim Grosbach
|
191d33fd6d
|
Thumb2 assembly parsing and encoding for RSB.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139839 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-15 20:54:14 +00:00 |
|
Jim Grosbach
|
689b86ed2e
|
Thumb2 assembly parsing and encoding for REV16/REVSH.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139828 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-15 19:46:13 +00:00 |
|
Owen Anderson
|
ede042dc8d
|
Add support for stored annotations to MCInst, and provide facilities for MC-based InstPrinters to print them out. Enhance the ARM and X86 InstPrinter's to do so in verbose mode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139820 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-15 18:36:29 +00:00 |
|
Jim Grosbach
|
1b69a128d6
|
Thumb2 assembly parsing and encoding for REV.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139813 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-15 18:13:30 +00:00 |
|
Jim Grosbach
|
b6e9a83349
|
ARM support the pre-UAL mnemonic 'qsubaddx' for 'qsax.'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139796 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-15 16:16:50 +00:00 |
|
Jim Grosbach
|
57b21e437a
|
Thumb2 push/pop mnemonic recognition.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139794 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-15 15:55:04 +00:00 |
|
Jim Grosbach
|
0b69247b10
|
Thumb2 assembly parsing and encoding for PKH.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139754 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-14 23:16:41 +00:00 |
|
Jim Grosbach
|
21a05e7017
|
ARMv7a has the PKH instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139753 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-14 23:16:34 +00:00 |
|
Jim Grosbach
|
e1d58a6556
|
ARM tighten up the register classes for the PKH instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139748 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-14 22:52:14 +00:00 |
|
Owen Anderson
|
8adf62034a
|
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
|
2011-09-14 22:46:14 +00:00 |
|
Jim Grosbach
|
d32872f9ca
|
Thumb2 assembly parsing and encoding for MVN.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139739 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-14 21:24:41 +00:00 |
|
Owen Anderson
|
34626acf7f
|
Nested IT blocks are UNPREDICTABLE. Mark them as such when disassembling them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139736 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-14 21:06:21 +00:00 |
|
Jim Grosbach
|
64944f48a1
|
Thumb2 assembly parsing and encoding for MUL.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139735 91177308-0d34-0410-b5e6-96231b3b80d8
|
2011-09-14 21:00:40 +00:00 |
|
Jim Grosbach
|
bf841cf336
|
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
|
2011-09-14 20:03:46 +00:00 |
|