forked from OSchip/llvm-project
[ARM] A couple of extra VMOVimm tests, useful for showing BE codegen. NFC
This commit is contained in:
parent
c0edcec630
commit
f44770c329
|
@ -21,6 +21,37 @@ entry:
|
|||
ret <16 x i8> <i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1, i8 -1>
|
||||
}
|
||||
|
||||
define arm_aapcs_vfpcc <16 x i8> @mov_int8_1234() {
|
||||
; CHECKLE-LABEL: mov_int8_1234:
|
||||
; CHECKLE: @ %bb.0: @ %entry
|
||||
; CHECKLE-NEXT: adr r0, .LCPI2_0
|
||||
; CHECKLE-NEXT: vldrw.u32 q0, [r0]
|
||||
; CHECKLE-NEXT: bx lr
|
||||
; CHECKLE-NEXT: .p2align 4
|
||||
; CHECKLE-NEXT: @ %bb.1:
|
||||
; CHECKLE-NEXT: .LCPI2_0:
|
||||
; CHECKLE-NEXT: .long 67305985 @ double 2.4380727978175888E-289
|
||||
; CHECKLE-NEXT: .long 67305985
|
||||
; CHECKLE-NEXT: .long 67305985 @ double 2.4380727978175888E-289
|
||||
; CHECKLE-NEXT: .long 67305985
|
||||
;
|
||||
; CHECKBE-LABEL: mov_int8_1234:
|
||||
; CHECKBE: @ %bb.0: @ %entry
|
||||
; CHECKBE-NEXT: adr r0, .LCPI2_0
|
||||
; CHECKBE-NEXT: vldrb.u8 q1, [r0]
|
||||
; CHECKBE-NEXT: vrev64.8 q0, q1
|
||||
; CHECKBE-NEXT: bx lr
|
||||
; CHECKBE-NEXT: .p2align 4
|
||||
; CHECKBE-NEXT: @ %bb.1:
|
||||
; CHECKBE-NEXT: .LCPI2_0:
|
||||
; CHECKBE-NEXT: .long 16909060 @ double 8.2078802900595913E-304
|
||||
; CHECKBE-NEXT: .long 16909060
|
||||
; CHECKBE-NEXT: .long 16909060 @ double 8.2078802900595913E-304
|
||||
; CHECKBE-NEXT: .long 16909060
|
||||
entry:
|
||||
ret <16 x i8> <i8 1, i8 2, i8 3, i8 4, i8 1, i8 2, i8 3, i8 4, i8 1, i8 2, i8 3, i8 4, i8 1, i8 2, i8 3, i8 4>
|
||||
}
|
||||
|
||||
define arm_aapcs_vfpcc <8 x i16> @mov_int16_1() {
|
||||
; CHECK-LABEL: mov_int16_1:
|
||||
; CHECK: @ %bb.0: @ %entry
|
||||
|
@ -60,12 +91,12 @@ entry:
|
|||
define arm_aapcs_vfpcc <8 x i16> @mov_int16_258() {
|
||||
; CHECKLE-LABEL: mov_int16_258:
|
||||
; CHECKLE: @ %bb.0: @ %entry
|
||||
; CHECKLE-NEXT: adr r0, .LCPI6_0
|
||||
; CHECKLE-NEXT: adr r0, .LCPI7_0
|
||||
; CHECKLE-NEXT: vldrw.u32 q0, [r0]
|
||||
; CHECKLE-NEXT: bx lr
|
||||
; CHECKLE-NEXT: .p2align 4
|
||||
; CHECKLE-NEXT: @ %bb.1:
|
||||
; CHECKLE-NEXT: .LCPI6_0:
|
||||
; CHECKLE-NEXT: .LCPI7_0:
|
||||
; CHECKLE-NEXT: .long 16908546 @ double 8.204306265173532E-304
|
||||
; CHECKLE-NEXT: .long 16908546
|
||||
; CHECKLE-NEXT: .long 16908546 @ double 8.204306265173532E-304
|
||||
|
@ -73,13 +104,13 @@ define arm_aapcs_vfpcc <8 x i16> @mov_int16_258() {
|
|||
;
|
||||
; CHECKBE-LABEL: mov_int16_258:
|
||||
; CHECKBE: @ %bb.0: @ %entry
|
||||
; CHECKBE-NEXT: adr r0, .LCPI6_0
|
||||
; CHECKBE-NEXT: adr r0, .LCPI7_0
|
||||
; CHECKBE-NEXT: vldrb.u8 q1, [r0]
|
||||
; CHECKBE-NEXT: vrev64.8 q0, q1
|
||||
; CHECKBE-NEXT: bx lr
|
||||
; CHECKBE-NEXT: .p2align 4
|
||||
; CHECKBE-NEXT: @ %bb.1:
|
||||
; CHECKBE-NEXT: .LCPI6_0:
|
||||
; CHECKBE-NEXT: .LCPI7_0:
|
||||
; CHECKBE-NEXT: .long 16908546 @ double 8.204306265173532E-304
|
||||
; CHECKBE-NEXT: .long 16908546
|
||||
; CHECKBE-NEXT: .long 16908546 @ double 8.204306265173532E-304
|
||||
|
@ -127,12 +158,12 @@ entry:
|
|||
define arm_aapcs_vfpcc <4 x i32> @mov_int32_16777217() {
|
||||
; CHECKLE-LABEL: mov_int32_16777217:
|
||||
; CHECKLE: @ %bb.0: @ %entry
|
||||
; CHECKLE-NEXT: adr r0, .LCPI11_0
|
||||
; CHECKLE-NEXT: adr r0, .LCPI12_0
|
||||
; CHECKLE-NEXT: vldrw.u32 q0, [r0]
|
||||
; CHECKLE-NEXT: bx lr
|
||||
; CHECKLE-NEXT: .p2align 4
|
||||
; CHECKLE-NEXT: @ %bb.1:
|
||||
; CHECKLE-NEXT: .LCPI11_0:
|
||||
; CHECKLE-NEXT: .LCPI12_0:
|
||||
; CHECKLE-NEXT: .long 16777217 @ double 7.2911290000737531E-304
|
||||
; CHECKLE-NEXT: .long 16777217
|
||||
; CHECKLE-NEXT: .long 16777217 @ double 7.2911290000737531E-304
|
||||
|
@ -140,13 +171,13 @@ define arm_aapcs_vfpcc <4 x i32> @mov_int32_16777217() {
|
|||
;
|
||||
; CHECKBE-LABEL: mov_int32_16777217:
|
||||
; CHECKBE: @ %bb.0: @ %entry
|
||||
; CHECKBE-NEXT: adr r0, .LCPI11_0
|
||||
; CHECKBE-NEXT: adr r0, .LCPI12_0
|
||||
; CHECKBE-NEXT: vldrb.u8 q1, [r0]
|
||||
; CHECKBE-NEXT: vrev64.8 q0, q1
|
||||
; CHECKBE-NEXT: bx lr
|
||||
; CHECKBE-NEXT: .p2align 4
|
||||
; CHECKBE-NEXT: @ %bb.1:
|
||||
; CHECKBE-NEXT: .LCPI11_0:
|
||||
; CHECKBE-NEXT: .LCPI12_0:
|
||||
; CHECKBE-NEXT: .long 16777217 @ double 7.2911290000737531E-304
|
||||
; CHECKBE-NEXT: .long 16777217
|
||||
; CHECKBE-NEXT: .long 16777217 @ double 7.2911290000737531E-304
|
||||
|
@ -194,12 +225,12 @@ entry:
|
|||
define arm_aapcs_vfpcc <4 x i32> @mov_int32_4278190335() {
|
||||
; CHECKLE-LABEL: mov_int32_4278190335:
|
||||
; CHECKLE: @ %bb.0: @ %entry
|
||||
; CHECKLE-NEXT: adr r0, .LCPI16_0
|
||||
; CHECKLE-NEXT: adr r0, .LCPI17_0
|
||||
; CHECKLE-NEXT: vldrw.u32 q0, [r0]
|
||||
; CHECKLE-NEXT: bx lr
|
||||
; CHECKLE-NEXT: .p2align 4
|
||||
; CHECKLE-NEXT: @ %bb.1:
|
||||
; CHECKLE-NEXT: .LCPI16_0:
|
||||
; CHECKLE-NEXT: .LCPI17_0:
|
||||
; CHECKLE-NEXT: .long 4278190335 @ double -5.4874634341155774E+303
|
||||
; CHECKLE-NEXT: .long 4278190335
|
||||
; CHECKLE-NEXT: .long 4278190335 @ double -5.4874634341155774E+303
|
||||
|
@ -207,13 +238,13 @@ define arm_aapcs_vfpcc <4 x i32> @mov_int32_4278190335() {
|
|||
;
|
||||
; CHECKBE-LABEL: mov_int32_4278190335:
|
||||
; CHECKBE: @ %bb.0: @ %entry
|
||||
; CHECKBE-NEXT: adr r0, .LCPI16_0
|
||||
; CHECKBE-NEXT: adr r0, .LCPI17_0
|
||||
; CHECKBE-NEXT: vldrb.u8 q1, [r0]
|
||||
; CHECKBE-NEXT: vrev64.8 q0, q1
|
||||
; CHECKBE-NEXT: bx lr
|
||||
; CHECKBE-NEXT: .p2align 4
|
||||
; CHECKBE-NEXT: @ %bb.1:
|
||||
; CHECKBE-NEXT: .LCPI16_0:
|
||||
; CHECKBE-NEXT: .LCPI17_0:
|
||||
; CHECKBE-NEXT: .long 4278190335 @ double -5.4874634341155774E+303
|
||||
; CHECKBE-NEXT: .long 4278190335
|
||||
; CHECKBE-NEXT: .long 4278190335 @ double -5.4874634341155774E+303
|
||||
|
@ -231,15 +262,46 @@ entry:
|
|||
ret <4 x i32> <i32 4278255615, i32 4278255615, i32 4278255615, i32 4278255615>
|
||||
}
|
||||
|
||||
define arm_aapcs_vfpcc <2 x i64> @mov_int64_1() {
|
||||
; CHECKLE-LABEL: mov_int64_1:
|
||||
define arm_aapcs_vfpcc <4 x i32> @mov_int32_16908546() {
|
||||
; CHECKLE-LABEL: mov_int32_16908546:
|
||||
; CHECKLE: @ %bb.0: @ %entry
|
||||
; CHECKLE-NEXT: adr r0, .LCPI18_0
|
||||
; CHECKLE-NEXT: adr r0, .LCPI19_0
|
||||
; CHECKLE-NEXT: vldrw.u32 q0, [r0]
|
||||
; CHECKLE-NEXT: bx lr
|
||||
; CHECKLE-NEXT: .p2align 4
|
||||
; CHECKLE-NEXT: @ %bb.1:
|
||||
; CHECKLE-NEXT: .LCPI18_0:
|
||||
; CHECKLE-NEXT: .LCPI19_0:
|
||||
; CHECKLE-NEXT: .long 16908546 @ double 8.204306265173532E-304
|
||||
; CHECKLE-NEXT: .long 16908546
|
||||
; CHECKLE-NEXT: .long 16908546 @ double 8.204306265173532E-304
|
||||
; CHECKLE-NEXT: .long 16908546
|
||||
;
|
||||
; CHECKBE-LABEL: mov_int32_16908546:
|
||||
; CHECKBE: @ %bb.0: @ %entry
|
||||
; CHECKBE-NEXT: adr r0, .LCPI19_0
|
||||
; CHECKBE-NEXT: vldrb.u8 q1, [r0]
|
||||
; CHECKBE-NEXT: vrev64.8 q0, q1
|
||||
; CHECKBE-NEXT: bx lr
|
||||
; CHECKBE-NEXT: .p2align 4
|
||||
; CHECKBE-NEXT: @ %bb.1:
|
||||
; CHECKBE-NEXT: .LCPI19_0:
|
||||
; CHECKBE-NEXT: .long 16908546 @ double 8.204306265173532E-304
|
||||
; CHECKBE-NEXT: .long 16908546
|
||||
; CHECKBE-NEXT: .long 16908546 @ double 8.204306265173532E-304
|
||||
; CHECKBE-NEXT: .long 16908546
|
||||
entry:
|
||||
ret <4 x i32> <i32 16908546, i32 16908546, i32 16908546, i32 16908546>
|
||||
}
|
||||
|
||||
define arm_aapcs_vfpcc <2 x i64> @mov_int64_1() {
|
||||
; CHECKLE-LABEL: mov_int64_1:
|
||||
; CHECKLE: @ %bb.0: @ %entry
|
||||
; CHECKLE-NEXT: adr r0, .LCPI20_0
|
||||
; CHECKLE-NEXT: vldrw.u32 q0, [r0]
|
||||
; CHECKLE-NEXT: bx lr
|
||||
; CHECKLE-NEXT: .p2align 4
|
||||
; CHECKLE-NEXT: @ %bb.1:
|
||||
; CHECKLE-NEXT: .LCPI20_0:
|
||||
; CHECKLE-NEXT: .long 1 @ double 4.9406564584124654E-324
|
||||
; CHECKLE-NEXT: .long 0
|
||||
; CHECKLE-NEXT: .long 1 @ double 4.9406564584124654E-324
|
||||
|
@ -247,13 +309,13 @@ define arm_aapcs_vfpcc <2 x i64> @mov_int64_1() {
|
|||
;
|
||||
; CHECKBE-LABEL: mov_int64_1:
|
||||
; CHECKBE: @ %bb.0: @ %entry
|
||||
; CHECKBE-NEXT: adr r0, .LCPI18_0
|
||||
; CHECKBE-NEXT: adr r0, .LCPI20_0
|
||||
; CHECKBE-NEXT: vldrb.u8 q1, [r0]
|
||||
; CHECKBE-NEXT: vrev64.8 q0, q1
|
||||
; CHECKBE-NEXT: bx lr
|
||||
; CHECKBE-NEXT: .p2align 4
|
||||
; CHECKBE-NEXT: @ %bb.1:
|
||||
; CHECKBE-NEXT: .LCPI18_0:
|
||||
; CHECKBE-NEXT: .LCPI20_0:
|
||||
; CHECKBE-NEXT: .long 0 @ double 4.9406564584124654E-324
|
||||
; CHECKBE-NEXT: .long 1
|
||||
; CHECKBE-NEXT: .long 0 @ double 4.9406564584124654E-324
|
||||
|
@ -292,12 +354,12 @@ entry:
|
|||
define arm_aapcs_vfpcc <2 x i64> @mov_int64_f_0() {
|
||||
; CHECKLE-LABEL: mov_int64_f_0:
|
||||
; CHECKLE: @ %bb.0: @ %entry
|
||||
; CHECKLE-NEXT: adr r0, .LCPI22_0
|
||||
; CHECKLE-NEXT: adr r0, .LCPI24_0
|
||||
; CHECKLE-NEXT: vldrw.u32 q0, [r0]
|
||||
; CHECKLE-NEXT: bx lr
|
||||
; CHECKLE-NEXT: .p2align 4
|
||||
; CHECKLE-NEXT: @ %bb.1:
|
||||
; CHECKLE-NEXT: .LCPI22_0:
|
||||
; CHECKLE-NEXT: .LCPI24_0:
|
||||
; CHECKLE-NEXT: .long 255 @ double 1.2598673968951787E-321
|
||||
; CHECKLE-NEXT: .long 0
|
||||
; CHECKLE-NEXT: .long 0 @ double 0
|
||||
|
@ -305,13 +367,13 @@ define arm_aapcs_vfpcc <2 x i64> @mov_int64_f_0() {
|
|||
;
|
||||
; CHECKBE-LABEL: mov_int64_f_0:
|
||||
; CHECKBE: @ %bb.0: @ %entry
|
||||
; CHECKBE-NEXT: adr r0, .LCPI22_0
|
||||
; CHECKBE-NEXT: adr r0, .LCPI24_0
|
||||
; CHECKBE-NEXT: vldrb.u8 q1, [r0]
|
||||
; CHECKBE-NEXT: vrev64.8 q0, q1
|
||||
; CHECKBE-NEXT: bx lr
|
||||
; CHECKBE-NEXT: .p2align 4
|
||||
; CHECKBE-NEXT: @ %bb.1:
|
||||
; CHECKBE-NEXT: .LCPI22_0:
|
||||
; CHECKBE-NEXT: .LCPI24_0:
|
||||
; CHECKBE-NEXT: .long 0 @ double 1.2598673968951787E-321
|
||||
; CHECKBE-NEXT: .long 255
|
||||
; CHECKBE-NEXT: .long 0 @ double 0
|
||||
|
@ -365,12 +427,12 @@ entry:
|
|||
define arm_aapcs_vfpcc <4 x float> @mov_float_1() {
|
||||
; CHECKLE-LABEL: mov_float_1:
|
||||
; CHECKLE: @ %bb.0: @ %entry
|
||||
; CHECKLE-NEXT: adr r0, .LCPI26_0
|
||||
; CHECKLE-NEXT: adr r0, .LCPI28_0
|
||||
; CHECKLE-NEXT: vldrw.u32 q0, [r0]
|
||||
; CHECKLE-NEXT: bx lr
|
||||
; CHECKLE-NEXT: .p2align 4
|
||||
; CHECKLE-NEXT: @ %bb.1:
|
||||
; CHECKLE-NEXT: .LCPI26_0:
|
||||
; CHECKLE-NEXT: .LCPI28_0:
|
||||
; CHECKLE-NEXT: .long 1065353216 @ double 0.007812501848093234
|
||||
; CHECKLE-NEXT: .long 1065353216
|
||||
; CHECKLE-NEXT: .long 1065353216 @ double 0.007812501848093234
|
||||
|
@ -378,13 +440,13 @@ define arm_aapcs_vfpcc <4 x float> @mov_float_1() {
|
|||
;
|
||||
; CHECKBE-LABEL: mov_float_1:
|
||||
; CHECKBE: @ %bb.0: @ %entry
|
||||
; CHECKBE-NEXT: adr r0, .LCPI26_0
|
||||
; CHECKBE-NEXT: adr r0, .LCPI28_0
|
||||
; CHECKBE-NEXT: vldrb.u8 q1, [r0]
|
||||
; CHECKBE-NEXT: vrev64.8 q0, q1
|
||||
; CHECKBE-NEXT: bx lr
|
||||
; CHECKBE-NEXT: .p2align 4
|
||||
; CHECKBE-NEXT: @ %bb.1:
|
||||
; CHECKBE-NEXT: .LCPI26_0:
|
||||
; CHECKBE-NEXT: .LCPI28_0:
|
||||
; CHECKBE-NEXT: .long 1065353216 @ double 0.007812501848093234
|
||||
; CHECKBE-NEXT: .long 1065353216
|
||||
; CHECKBE-NEXT: .long 1065353216 @ double 0.007812501848093234
|
||||
|
@ -396,12 +458,12 @@ entry:
|
|||
define arm_aapcs_vfpcc <4 x float> @mov_float_m3() {
|
||||
; CHECKLE-LABEL: mov_float_m3:
|
||||
; CHECKLE: @ %bb.0: @ %entry
|
||||
; CHECKLE-NEXT: adr r0, .LCPI27_0
|
||||
; CHECKLE-NEXT: adr r0, .LCPI29_0
|
||||
; CHECKLE-NEXT: vldrw.u32 q0, [r0]
|
||||
; CHECKLE-NEXT: bx lr
|
||||
; CHECKLE-NEXT: .p2align 4
|
||||
; CHECKLE-NEXT: @ %bb.1:
|
||||
; CHECKLE-NEXT: .LCPI27_0:
|
||||
; CHECKLE-NEXT: .LCPI29_0:
|
||||
; CHECKLE-NEXT: .long 3225419776 @ double -32.000022917985916
|
||||
; CHECKLE-NEXT: .long 3225419776
|
||||
; CHECKLE-NEXT: .long 3225419776 @ double -32.000022917985916
|
||||
|
@ -409,13 +471,13 @@ define arm_aapcs_vfpcc <4 x float> @mov_float_m3() {
|
|||
;
|
||||
; CHECKBE-LABEL: mov_float_m3:
|
||||
; CHECKBE: @ %bb.0: @ %entry
|
||||
; CHECKBE-NEXT: adr r0, .LCPI27_0
|
||||
; CHECKBE-NEXT: adr r0, .LCPI29_0
|
||||
; CHECKBE-NEXT: vldrb.u8 q1, [r0]
|
||||
; CHECKBE-NEXT: vrev64.8 q0, q1
|
||||
; CHECKBE-NEXT: bx lr
|
||||
; CHECKBE-NEXT: .p2align 4
|
||||
; CHECKBE-NEXT: @ %bb.1:
|
||||
; CHECKBE-NEXT: .LCPI27_0:
|
||||
; CHECKBE-NEXT: .LCPI29_0:
|
||||
; CHECKBE-NEXT: .long 3225419776 @ double -32.000022917985916
|
||||
; CHECKBE-NEXT: .long 3225419776
|
||||
; CHECKBE-NEXT: .long 3225419776 @ double -32.000022917985916
|
||||
|
@ -447,12 +509,12 @@ entry:
|
|||
define arm_aapcs_vfpcc <2 x double> @mov_double_1() {
|
||||
; CHECKLE-LABEL: mov_double_1:
|
||||
; CHECKLE: @ %bb.0: @ %entry
|
||||
; CHECKLE-NEXT: adr r0, .LCPI30_0
|
||||
; CHECKLE-NEXT: adr r0, .LCPI32_0
|
||||
; CHECKLE-NEXT: vldrw.u32 q0, [r0]
|
||||
; CHECKLE-NEXT: bx lr
|
||||
; CHECKLE-NEXT: .p2align 4
|
||||
; CHECKLE-NEXT: @ %bb.1:
|
||||
; CHECKLE-NEXT: .LCPI30_0:
|
||||
; CHECKLE-NEXT: .LCPI32_0:
|
||||
; CHECKLE-NEXT: .long 0 @ double 1
|
||||
; CHECKLE-NEXT: .long 1072693248
|
||||
; CHECKLE-NEXT: .long 0 @ double 1
|
||||
|
@ -460,13 +522,13 @@ define arm_aapcs_vfpcc <2 x double> @mov_double_1() {
|
|||
;
|
||||
; CHECKBE-LABEL: mov_double_1:
|
||||
; CHECKBE: @ %bb.0: @ %entry
|
||||
; CHECKBE-NEXT: adr r0, .LCPI30_0
|
||||
; CHECKBE-NEXT: adr r0, .LCPI32_0
|
||||
; CHECKBE-NEXT: vldrb.u8 q1, [r0]
|
||||
; CHECKBE-NEXT: vrev64.8 q0, q1
|
||||
; CHECKBE-NEXT: bx lr
|
||||
; CHECKBE-NEXT: .p2align 4
|
||||
; CHECKBE-NEXT: @ %bb.1:
|
||||
; CHECKBE-NEXT: .LCPI30_0:
|
||||
; CHECKBE-NEXT: .LCPI32_0:
|
||||
; CHECKBE-NEXT: .long 1072693248 @ double 1
|
||||
; CHECKBE-NEXT: .long 0
|
||||
; CHECKBE-NEXT: .long 1072693248 @ double 1
|
||||
|
|
Loading…
Reference in New Issue