llvm/test/CodeGen/Thumb2
Evan Cheng 9cd1632814 Another nasty coalescer bug (is there another kind):
After coalescing reg1027's def and kill are both at the same point:
 %reg1027,0.000000e+00 = [56,814:0)  0@70-(814)

bb5:
60   %reg1027<def> = t2MOVr %reg1027, 14, %reg0, %reg0
68   %reg1027<def> = t2LDRi12 %reg1027<kill>, 8, 14, %reg0
76   t2CMPzri %reg1038<kill,undef>, 0, 14, %reg0, %CPSR<imp-def>
84   %reg1027<def> = t2MOVr %reg1027, 14, %reg0, %reg0
96   t2Bcc mbb<bb5,0x2030910>, 1, %CPSR<kill>

Do not remove the kill marker on t2LDRi12.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78178 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-05 07:05:41 +00:00
..
2009-07-17-CrossRegClassCopy.ll Emit cross regclass register moves for thumb2. 2009-07-16 23:26:06 +00:00
2009-07-21-ISelBug.ll Do not select tSXTB / tSXTH in thumb2 mode. 2009-07-21 18:15:26 +00:00
2009-07-23-CPIslandBug.ll Fix up ARM constant island pass for Thumb2. 2009-07-23 18:27:47 +00:00
2009-07-30-PEICrash.ll When fp is not eliminated, instructions with T2_i12 modes will be changed to T2_i8 ones. Take that into consideration when determining stack size limit for reserving register scavenging slot. 2009-07-30 23:29:25 +00:00
2009-08-01-WrongLDRBOpc.ll Use the i12 variant of load / store opcodes if offset is zero. Now we pass all of multisource as well. 2009-08-03 02:38:06 +00:00
2009-08-02-CoalescerBug.ll Fix a coaelescer bug. If a copy val# is extended to eliminate a non-trivially coalesced copy, and the copy kills its source register. Trim the source register's live range to the last use if possible. This fixes up kill marker to make the scavenger happy. 2009-08-03 08:41:59 +00:00
2009-08-04-CoalescerAssert.ll In thumb mode, r7 is used as frame register. This fixes pr4681. 2009-08-04 18:46:17 +00:00
2009-08-04-CoalescerBug.ll Another nasty coalescer bug (is there another kind): 2009-08-05 07:05:41 +00:00
2009-08-04-SubregLoweringBug2.ll One more place where subreg lowering forgot to transfer undefness. 2009-08-05 01:57:22 +00:00
2009-08-04-SubregLoweringBug3.ll One more. Transfer kill of the larger register when lowering an EXTRACT_SUBREG. 2009-08-05 02:25:11 +00:00
2009-08-04-SubregLoweringBug.ll If the insert_subreg source is <undef>, insert an implicit_def instead of a copy. 2009-08-05 01:29:24 +00:00
carry.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
dg.exp
large-stack.ll - More refactoring. This gets rid of all of the getOpcode calls. 2009-07-28 05:48:47 +00:00
load-global.ll Fix part 1 of pr4682. PICADD is a 16-bit instruction even in thumb2 mode. 2009-08-04 23:47:55 +00:00
mul_const.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
pic-load.ll Fix part 1 of pr4682. PICADD is a 16-bit instruction even in thumb2 mode. 2009-08-04 23:47:55 +00:00
thumb2-adc2.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-adc.ll Thumb-2 tests 2009-06-29 22:25:22 +00:00
thumb2-add2.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-add3.ll Thumb-2 tests 2009-06-26 22:37:07 +00:00
thumb2-add4.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-add5.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-add6.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-add.ll
thumb2-and2.ll Thumb-2 tests 2009-06-26 22:37:07 +00:00
thumb2-and.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-asr2.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-asr.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-bcc.ll Don't put IT instruction before conditional branches. 2009-07-11 07:26:20 +00:00
thumb2-bfc.ll Fix detection of valid BFC immediates. 2009-07-14 00:57:56 +00:00
thumb2-bic2.ll Thumb-2 tests 2009-06-26 22:37:07 +00:00
thumb2-bic.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-call.ll Test both darwin and linux. 2009-08-02 02:54:34 +00:00
thumb2-clz.ll Thumb-2 has CLZ. 2009-06-26 20:47:43 +00:00
thumb2-cmn2.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-cmn.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-cmp2.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-cmp.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-eor2.ll Thumb-2 tests 2009-06-26 22:37:07 +00:00
thumb2-eor.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-jtb.ll tbb / tbh instructions only branch forward, not backwards. 2009-07-29 23:20:20 +00:00
thumb2-ldm.ll Fix test. 2009-08-04 22:22:58 +00:00
thumb2-ldr_ext.ll A few more load instructions. 2009-06-30 02:15:48 +00:00
thumb2-ldr_post.ll Thumb2 pre/post indexed loads. 2009-07-02 07:28:31 +00:00
thumb2-ldr_pre.ll Sign extending pre/post indexed loads. 2009-07-02 23:16:11 +00:00
thumb2-ldr.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-ldrb.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-ldrh.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-lsl2.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-lsl.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-lsr2.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-lsr3.ll Darwin assembler now supports "rrx", so remove workaround. 2009-07-30 21:38:40 +00:00
thumb2-lsr.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-mla.ll More spelling Count as count. 2009-06-26 18:35:07 +00:00
thumb2-mls.ll More spelling Count as count. 2009-06-26 18:35:07 +00:00
thumb2-mov2.ll
thumb2-mov3.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-mov4.ll Thumb-2 tests 2009-06-26 22:37:07 +00:00
thumb2-mov.ll
thumb2-mul.ll Thumb-2 tests 2009-06-26 22:37:07 +00:00
thumb2-mulhi.ll Fix Thumb2 function call isel. Thumb1 and Thumb2 should share the same 2009-08-01 00:16:10 +00:00
thumb2-mvn2.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-mvn.ll Fix spelling of 'count' 2009-06-26 01:33:02 +00:00
thumb2-neg.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-orn2.ll Workaround a couple of Darwin assembler bugs. 2009-08-01 06:13:52 +00:00
thumb2-orn.ll Darwin assembler now recognizes "orn", so remove workaround. 2009-07-30 21:51:41 +00:00
thumb2-orr2.ll Thumb-2 tests 2009-06-26 22:37:07 +00:00
thumb2-orr.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-pack.ll Add Thumb2 pkhbt / pkhtb. 2009-07-07 05:35:52 +00:00
thumb2-rev16.ll Add rev16 test... xfail for now 2009-07-08 16:15:06 +00:00
thumb2-rev.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-ror2.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-ror.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-rsb2.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-rsb.ll Enhance tests to include shifted-register operand testing. 2009-06-30 01:02:20 +00:00
thumb2-sbc2.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-select_xform.ll Add a thumb2 pass to insert IT blocks. 2009-07-10 01:54:42 +00:00
thumb2-select.ll Split t2MOVCCs since some assemblers do not recognize mov shifted register alias with predicate. 2009-08-01 01:43:45 +00:00
thumb2-shifter.ll
thumb2-smla.ll Add some more Thumb2 multiplication instructions. 2009-07-07 01:17:28 +00:00
thumb2-smul.ll Add some more Thumb2 multiplication instructions. 2009-07-07 01:17:28 +00:00
thumb2-str_post.ll Added indexed stores. 2009-07-03 00:06:39 +00:00
thumb2-str_pre.ll Added indexed stores. 2009-07-03 00:06:39 +00:00
thumb2-str.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-strb.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-strh.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-sub2.ll Thumb-2 tests 2009-06-29 22:25:22 +00:00
thumb2-sub4.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-sub5.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-sub.ll Emit sub r, #c instead of transforming it to add r, #-c if c fits in 8-bit. This is a bit of pre-mature optimization. 8-bit variant makes it likely it will be narrowed to a 16-bit instruction. 2009-08-04 01:41:15 +00:00
thumb2-sxt_rot.ll Add thumb2 sign / zero extend with rotate instructions. 2009-07-03 01:43:10 +00:00
thumb2-tbb.ll Until we have a "ALIGN" pseudo instruction, have asm printer emitted a .align 2009-07-31 18:35:56 +00:00
thumb2-tbh.ll tbb / tbh instructions only branch forward, not backwards. 2009-07-29 23:20:20 +00:00
thumb2-teq2.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-teq.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-tst2.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-tst.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00
thumb2-uxt_rot.ll Add thumb2 sign / zero extend with rotate instructions. 2009-07-03 01:43:10 +00:00
thumb2-uxtb.ll Add thumb2 sign / zero extend with rotate instructions. 2009-07-03 01:43:10 +00:00
tls1.ll Add PIC load and store patterns for Thumb-2. 2009-07-01 00:01:13 +00:00
tls2.ll Add ".w" suffix for wide thumb-2 instructions. 2009-07-27 16:31:55 +00:00