/external/llvm-project/llvm/test/CodeGen/ARM/ |
D | fcopysign.ll | 3 …le-post-ra -mtriple=armv7-gnueabi -float-abi=hard -mcpu=cortex-a8 | FileCheck %s -check-prefix=HARD 13 ; HARD-LABEL: test1: 14 ; HARD: @ %bb.0: @ %entry 15 ; HARD-NEXT: vmov.f32 s2, s1 16 ; HARD-NEXT: @ kill: def $s0 killed $s0 def $d0 17 ; HARD-NEXT: vmov.i32 d16, #0x80000000 18 ; HARD-NEXT: vbit d0, d1, d16 19 ; HARD-NEXT: @ kill: def $s0 killed $s0 killed $d0 20 ; HARD-NEXT: bx lr 34 ; HARD-LABEL: test2: [all …]
|
D | cmse-clear-float-mve.ll | 4 …n-eabi -mattr=+8msecext,+mve.fp --float-abi=hard %s -o - | FileCheck %s --check-prefix=CHECK-HARD 5 …ain-eabi -mattr=+8msecext,+mve.fp --float-abi=hard %s -o - | FileCheck %s --check-prefix=CHECK-HARD 30 ; CHECK-HARD-LABEL: f0: 31 ; CHECK-HARD: @ %bb.0: @ %entry 32 ; CHECK-HARD-NEXT: vstr fpcxtns, [sp, #-4]! 33 ; CHECK-HARD-NEXT: .save {r7, lr} 34 ; CHECK-HARD-NEXT: push {r7, lr} 35 ; CHECK-HARD-NEXT: .pad #4 36 ; CHECK-HARD-NEXT: sub sp, #4 37 ; CHECK-HARD-NEXT: bl g0 [all …]
|
D | fp16-bitcast.ll | 4 …abi=hard -mattr=+vfp4d16sp < %s | FileCheck %s --check-prefix=CHECK --check-prefix=CHECK-VFPV4-HARD 5 …t-abi=hard -mattr=+fullfp16 < %s | FileCheck %s --check-prefix=CHECK --check-prefix=CHECK-FP16-HARD 26 ; CHECK-VFPV4-HARD-LABEL: add: 27 ; CHECK-VFPV4-HARD: @ %bb.0: @ %entry 28 ; CHECK-VFPV4-HARD-NEXT: vadd.f32 s0, s0, s1 29 ; CHECK-VFPV4-HARD-NEXT: bx lr 31 ; CHECK-FP16-HARD-LABEL: add: 32 ; CHECK-FP16-HARD: @ %bb.0: @ %entry 33 ; CHECK-FP16-HARD-NEXT: vadd.f32 s0, s0, s1 34 ; CHECK-FP16-HARD-NEXT: bx lr [all …]
|
D | fp16-args.ll | 3 …llc -mtriple=armv7a--none-eabi -float-abi hard -mattr=+fp16 < %s | FileCheck %s --check-prefix=HARD 5 …-abi hard -mattr=+fullfp16 < %s | FileCheck %s --check-prefix=FULL-HARD --check-prefix=FULL-HARD-LE 7 …c -mtriple=armv7aeb--none-eabi -float-abi hard -mattr=+fp16 < %s | FileCheck %s --check-prefix=HARD 9 …-abi hard -mattr=+fullfp16 < %s | FileCheck %s --check-prefix=FULL-HARD --check-prefix=FULL-HARD-BE 23 ; HARD-LABEL: foo: 24 ; HARD: @ %bb.0: @ %entry 25 ; HARD-NEXT: vcvtb.f32.f16 s2, s1 26 ; HARD-NEXT: vcvtb.f32.f16 s0, s0 27 ; HARD-NEXT: vadd.f32 s0, s0, s2 28 ; HARD-NEXT: vcvtb.f16.f32 s0, s0 [all …]
|
D | bfloat.ll | 2 ; RUN: llc -float-abi hard -mattr=+bf16,+fullfp16 < %s | FileCheck %s --check-prefix=HARD 9 ; HARD-LABEL: load_scalar_bf: 10 ; HARD: @ %bb.0: @ %entry 11 ; HARD-NEXT: vldr.16 s0, [r0] 12 ; HARD-NEXT: bx lr 25 ; HARD-LABEL: store_scalar_bf: 26 ; HARD: @ %bb.0: @ %entry 27 ; HARD-NEXT: vstr.16 s0, [r0] 28 ; HARD-NEXT: bx lr 41 ; HARD-LABEL: load_vector4_bf: [all …]
|
D | big-endian-vector-callee.ll | 2 …b-eabi -mattr v7,neon -float-abi hard %s -o - | FileCheck %s -check-prefix CHECK -check-prefix HARD 8 ; HARD: vadd.f64 d{{[0-9]+}}, d0 21 ; HARD: vadd.i64 d{{[0-9]+}}, d0 34 ; HARD: vrev64.32 d{{[0-9]+}}, d0 47 ; HARD: vrev64.32 d{{[0-9]+}}, d0 60 ; HARD: vrev64.16 d{{[0-9]+}}, d0 73 ; HARD: vrev64.8 d{{[0-9]+}}, d0 92 ; HARD: vadd.f64 d0 99 ; HARD: vadd.i64 d{{[0-9]+}}, d0 106 ; HARD: vadd.f64 d0 [all …]
|
D | big-endian-vector-caller.ll | 2 …b-eabi -mattr v7,neon -float-abi hard %s -o - | FileCheck %s -check-prefix CHECK -check-prefix HARD 9 ; HARD: vadd.f64 d0 25 ; HARD: vadd.i64 d0 41 ; HARD: vrev64.32 d0 57 ; HARD: vrev64.32 d0 73 ; HARD: vrev64.16 d0 89 ; HARD: vrev64.8 d0 113 ; HARD: vadd.f64 {{d[0-9]+}}, d0 121 ; HARD: vadd.i64 d0 130 ; HARD: vadd.f64 {{d[0-9]+}}, d0 [all …]
|
D | macho-embedded-float.ll | 1 … llc -mtriple=thumbv7em-none-macho %s -o - -mcpu=cortex-m4 | FileCheck --check-prefix=CHECK-HARD %s 6 ; CHECK-HARD-LABEL: test_default_cc: 7 ; CHECK-HARD-NOT: vmov 8 ; CHECK-HARD: vadd.f32 s0, s0, s1 9 ; CHECK-HARD-NOT: vmov 23 ; CHECK-HARD-LABEL: test_libcall: 24 ; CHECK-HARD-NOT: vmov 25 ; CHECK-HARD: b.w _sinf
|
D | default-float-abi.ll | 1 ; RUN: llc -mtriple=armv7-linux-gnueabihf %s -o - | FileCheck %s --check-prefix=CHECK-HARD 2 ; RUN: llc -mtriple=armv7-linux-musleabihf %s -o - | FileCheck %s --check-prefix=CHECK-HARD 3 ; RUN: llc -mtriple=armv7-linux-eabihf %s -o - | FileCheck %s --check-prefix=CHECK-HARD 8 …RUN: llc -mtriple=armv7-linux-eabi -float-abi=hard %s -o - | FileCheck %s --check-prefix=CHECK-HARD 15 ; CHECK-HARD-LABEL: test_abi: 16 ; CHECK-HARD-NOT: vmov 17 ; CHECK-HARD: vadd.f32 s0, s0, s1 18 ; CHECK-HARD-NOT: vmov
|
/external/llvm/test/CodeGen/ARM/ |
D | big-endian-vector-callee.ll | 2 …b-eabi -mattr v7,neon -float-abi hard %s -o - | FileCheck %s -check-prefix CHECK -check-prefix HARD 8 ; HARD: vadd.f64 d{{[0-9]+}}, d0 21 ; HARD: vadd.i64 d{{[0-9]+}}, d0 34 ; HARD: vrev64.32 d{{[0-9]+}}, d0 47 ; HARD: vrev64.32 d{{[0-9]+}}, d0 60 ; HARD: vrev64.16 d{{[0-9]+}}, d0 73 ; HARD: vrev64.8 d{{[0-9]+}}, d0 92 ; HARD: vadd.f64 d0 99 ; HARD: vadd.i64 d{{[0-9]+}}, d0 106 ; HARD: vadd.f64 d0 [all …]
|
D | fp16-args.ll | 2 ; RUN: llc -float-abi hard -mattr=+fp16 < %s | FileCheck %s --check-prefix=CHECK --check-prefix=HARD 30 ; HARD-NOT: vmov 31 ; HARD-NOT: uxth 32 ; HARD: vcvtb.f32.f16 {{s[0-9]+}}, s1 33 ; HARD: vcvtb.f32.f16 {{s[0-9]+}}, s0 34 ; HARD: vadd.f32 {{s[0-9]+}}, {{s[0-9]+}}, {{s[0-9]+}} 35 ; HARD: vcvtb.f16.f32 [[SREG:s[0-9]+]], {{s[0-9]+}} 36 ; HARD-NEXT: vmov [[REG0:r[0-9]+]], [[SREG]] 37 ; HARD-NEXT: uxth [[REG1:r[0-9]+]], [[REG0]] 38 ; HARD-NEXT: vmov s0, [[REG1]]
|
D | big-endian-vector-caller.ll | 2 …b-eabi -mattr v7,neon -float-abi hard %s -o - | FileCheck %s -check-prefix CHECK -check-prefix HARD 9 ; HARD: vadd.f64 d0 25 ; HARD: vadd.i64 d0 41 ; HARD: vrev64.32 d0 57 ; HARD: vrev64.32 d0 73 ; HARD: vrev64.16 d0 89 ; HARD: vrev64.8 d0 113 ; HARD: vadd.f64 {{d[0-9]+}}, d0 121 ; HARD: vadd.i64 d0 130 ; HARD: vadd.f64 {{d[0-9]+}}, d0 [all …]
|
D | default-float-abi.ll | 1 ; RUN: llc -mtriple=armv7-linux-gnueabihf %s -o - | FileCheck %s --check-prefix=CHECK-HARD 2 ; RUN: llc -mtriple=armv7-linux-musleabihf %s -o - | FileCheck %s --check-prefix=CHECK-HARD 3 ; RUN: llc -mtriple=armv7-linux-eabihf %s -o - | FileCheck %s --check-prefix=CHECK-HARD 8 …RUN: llc -mtriple=armv7-linux-eabi -float-abi=hard %s -o - | FileCheck %s --check-prefix=CHECK-HARD 15 ; CHECK-HARD-LABEL: test_abi: 16 ; CHECK-HARD-NOT: vmov 17 ; CHECK-HARD: vadd.f32 s0, s0, s1 18 ; CHECK-HARD-NOT: vmov
|
/external/llvm/test/CodeGen/Thumb2/ |
D | float-cmp.ll | 2 …-none-eabihf -mcpu=cortex-m4 | FileCheck %s -check-prefix=CHECK -check-prefix=HARD -check-prefix=SP 3 …-none-eabihf -mcpu=cortex-m7 | FileCheck %s -check-prefix=CHECK -check-prefix=HARD -check-prefix=DP 4 …-none-eabihf -mcpu=cortex-a8 | FileCheck %s -check-prefix=CHECK -check-prefix=HARD -check-prefix=DP 11 ; HARD: movs r0, #0 18 ; HARD: vcmpe.f32 19 ; HARD: moveq r0, #1 26 ; HARD: vcmpe.f32 27 ; HARD: movgt r0, #1 34 ; HARD: vcmpe.f32 35 ; HARD: movge r0, #1 [all …]
|
D | float-ops.ll | 2 …e-eabihf -mcpu=cortex-m4 | FileCheck %s -check-prefix=CHECK -check-prefix=HARD -check-prefix=SP -c… 3 …e-eabihf -mcpu=cortex-m7 | FileCheck %s -check-prefix=CHECK -check-prefix=HARD -check-prefix=DP -c… 4 …e-eabihf -mcpu=cortex-a8 | FileCheck %s -check-prefix=CHECK -check-prefix=HARD -check-prefix=DP -c… 10 ; HARD: vadd.f32 s0, s0, s1 29 ; HARD: vsub.f32 s 48 ; HARD: vmul.f32 s 67 ; HARD: vdiv.f32 s 86 ; HARD: b fmodf 95 ; HARD: b fmod 104 ; HARD: vldr s0, [r0] [all …]
|
/external/llvm-project/llvm/test/CodeGen/Thumb2/ |
D | float-cmp.ll | 2 …-none-eabihf -mcpu=cortex-m4 | FileCheck %s -check-prefix=CHECK -check-prefix=HARD -check-prefix=SP 3 …-none-eabihf -mcpu=cortex-m7 | FileCheck %s -check-prefix=CHECK -check-prefix=HARD -check-prefix=DP 4 …-none-eabihf -mcpu=cortex-a8 | FileCheck %s -check-prefix=CHECK -check-prefix=HARD -check-prefix=DP 11 ; HARD: movs r0, #0 18 ; HARD: vcmp.f32 19 ; HARD: moveq r0, #1 26 ; HARD: vcmp.f32 27 ; HARD: movgt r0, #1 34 ; HARD: vcmp.f32 35 ; HARD: movge r0, #1 [all …]
|
D | float-ops.ll | 2 …e-eabihf -mcpu=cortex-m4 | FileCheck %s -check-prefix=CHECK -check-prefix=HARD -check-prefix=SP -c… 3 …e-eabihf -mcpu=cortex-m7 | FileCheck %s -check-prefix=CHECK -check-prefix=HARD -check-prefix=DP -c… 4 …e-eabihf -mcpu=cortex-a8 | FileCheck %s -check-prefix=CHECK -check-prefix=HARD -check-prefix=DP -c… 11 ; HARD: vadd.f32 s0, s0, s1 30 ; HARD: vsub.f32 s 49 ; HARD: vmul.f32 s 68 ; HARD: vdiv.f32 s 87 ; HARD: b fmodf 96 ; HARD: b fmod 105 ; HARD: vldr s0, [r0] [all …]
|
/external/llvm-project/llvm/test/CodeGen/SPARC/ |
D | 32abi.ll | 1 …isable-sparc-leaf-proc | FileCheck %s --check-prefix=CHECK --check-prefix=HARD --check-prefix=CHEC… 2 …isable-sparc-leaf-proc | FileCheck %s --check-prefix=CHECK --check-prefix=HARD --check-prefix=CHEC… 59 ; HARD: save %sp, -120, %sp 60 ; HARD: mov %i5, %g2 61 ; HARD-NEXT: ld [%fp+92], %g3 62 ; HARD-NEXT: mov %i4, %i5 63 ; HARD-NEXT: ! kill 64 ; HARD-NEXT: std %g2, [%fp+-24] 65 ; HARD-NEXT: mov %i3, %i4 66 ; HARD-NEXT: std %i4, [%fp+-16] [all …]
|
D | 64abi.ll | 1 …sparc-delay-filler -disable-sparc-leaf-proc | FileCheck %s --check-prefix=CHECK --check-prefix=HARD 58 ; HARD: save %sp, -128, %sp 59 ; HARD: ld [%fp+2307], [[F:%f[0-9]+]] 60 ; HARD: fstod %f1, 61 ; HARD: faddd %f2, 62 ; HARD: faddd %f4, 63 ; HARD: faddd %f6, 64 ; HARD: fadds %f31, [[F]] 105 ; HARD: std %f2, [%sp+2311] 107 ; HARD: st %f1, [%sp+2307] [all …]
|
D | fp128.ll | 1 …rc -mattr=hard-quad-float | FileCheck %s --check-prefix=CHECK --check-prefix=HARD --check-prefix=BE 2 …el -mattr=hard-quad-float | FileCheck %s --check-prefix=CHECK --check-prefix=HARD --check-prefix=EL 11 ; HARD: faddq [[R0:.+]], [[R1:.+]], [[R2:.+]] 12 ; HARD: fsubq [[R2]], [[R3:.+]], [[R4:.+]] 13 ; HARD: fmulq [[R4]], [[R5:.+]], [[R6:.+]] 14 ; HARD: fdivq [[R6]], [[R2]] 79 ; HARD: fcmpq 80 ; HARD-NEXT: nop 93 ; HARD: fcmpq 94 ; HARD: fb{{ule|g}} [all …]
|
/external/llvm/test/CodeGen/SPARC/ |
D | 32abi.ll | 1 …isable-sparc-leaf-proc | FileCheck %s --check-prefix=CHECK --check-prefix=HARD --check-prefix=CHEC… 2 …isable-sparc-leaf-proc | FileCheck %s --check-prefix=CHECK --check-prefix=HARD --check-prefix=CHEC… 59 ; HARD: save %sp, -120, %sp 60 ; HARD: mov %i5, %g2 61 ; HARD-NEXT: ld [%fp+92], %g3 62 ; HARD-NEXT: mov %i4, %i5 63 ; HARD-NEXT: ! kill 64 ; HARD-NEXT: std %g2, [%fp+-24] 65 ; HARD-NEXT: mov %i3, %i4 66 ; HARD-NEXT: std %i4, [%fp+-16] [all …]
|
D | 64abi.ll | 1 …sparc-delay-filler -disable-sparc-leaf-proc | FileCheck %s --check-prefix=CHECK --check-prefix=HARD 58 ; HARD: save %sp, -128, %sp 59 ; HARD: ld [%fp+2307], [[F:%f[0-9]+]] 60 ; HARD: fstod %f1, 61 ; HARD: faddd %f2, 62 ; HARD: faddd %f4, 63 ; HARD: faddd %f6, 64 ; HARD: fadds %f31, [[F]] 105 ; HARD: std %f2, [%sp+2311] 107 ; HARD: st %f1, [%sp+2307] [all …]
|
D | fp128.ll | 1 …rc -mattr=hard-quad-float | FileCheck %s --check-prefix=CHECK --check-prefix=HARD --check-prefix=BE 2 …el -mattr=hard-quad-float | FileCheck %s --check-prefix=CHECK --check-prefix=HARD --check-prefix=EL 12 ; HARD: faddq [[R0:.+]], [[R1:.+]], [[R2:.+]] 13 ; HARD: fsubq [[R2]], [[R3:.+]], [[R4:.+]] 14 ; HARD: fmulq [[R4]], [[R5:.+]], [[R6:.+]] 15 ; HARD: fdivq [[R6]], [[R2]] 53 ; HARD: fcmpq 54 ; HARD-NEXT: nop 67 ; HARD: fcmpq 68 ; HARD: fb{{ule|g}} [all …]
|
/external/llvm-project/llvm/test/CodeGen/ARM/GlobalISel/ |
D | arm-legalize-vfp4.mir | 1 …4 -float-abi=hard -run-pass=legalizer %s -o - | FileCheck %s -check-prefix CHECK -check-prefix HARD 2 …pass=legalizer %s -o - | FileCheck %s -check-prefix CHECK -check-prefix SOFT -check-prefix HARD-ABI 32 ; HARD: [[R:%[0-9]+]]:_(s32) = G_FMA [[X]], [[Y]], [[Z]] 40 ; HARD-ABI-DAG: $s0 = COPY [[X]] 41 ; HARD-ABI-DAG: $s1 = COPY [[Y]] 42 ; HARD-ABI-DAG: $s2 = COPY [[Z]] 43 ; HARD-ABI: BL &fmaf, {{.*}}, implicit $s0, implicit $s1, implicit $s2, implicit-def $s0 44 ; HARD-ABI: [[R:%[0-9]+]]:_(s32) = COPY $s0 82 ; HARD-DAG: [[X:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[X0]] 83 ; HARD-DAG: [[Y:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[Y0]] [all …]
|
D | arm-isel-fp.ll | 1 …tr=+vfp2 -float-abi=hard -global-isel %s -o - | FileCheck %s -check-prefix CHECK -check-prefix HARD 37 ; HARD: vadd.f32 46 ; HARD: vadd.f64 55 ; HARD: vsub.f32 64 ; HARD: vsub.f64 72 ; HARD: vcmp.f32 73 ; HARD: vmrs APSR_nzcv, fpscr 74 ; HARD-NEXT: movgt 85 ; HARD: vcmp.f32 86 ; HARD: vmrs APSR_nzcv, fpscr [all …]
|