diff options
Diffstat (limited to 'test/LTO/ARM')
-rw-r--r-- | test/LTO/ARM/inline-asm.ll | 9 | ||||
-rw-r--r-- | test/LTO/ARM/lit.local.cfg | 2 | ||||
-rw-r--r-- | test/LTO/ARM/runtime-library-subtarget.ll | 18 |
3 files changed, 29 insertions, 0 deletions
diff --git a/test/LTO/ARM/inline-asm.ll b/test/LTO/ARM/inline-asm.ll new file mode 100644 index 0000000..23fb904 --- /dev/null +++ b/test/LTO/ARM/inline-asm.ll @@ -0,0 +1,9 @@ +; Check that we don't crash on target-specific inline asm directives. +; +; RUN: llvm-as < %s > %t +; RUN: llvm-lto -o /dev/null %t -mcpu armv4t + +target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" +target triple = "armv4t-unknown-linux" + +module asm ".fnstart" diff --git a/test/LTO/ARM/lit.local.cfg b/test/LTO/ARM/lit.local.cfg new file mode 100644 index 0000000..20e19ae --- /dev/null +++ b/test/LTO/ARM/lit.local.cfg @@ -0,0 +1,2 @@ +if not 'ARM' in config.root.targets: + config.unsupported = True diff --git a/test/LTO/ARM/runtime-library-subtarget.ll b/test/LTO/ARM/runtime-library-subtarget.ll new file mode 100644 index 0000000..aab1d90 --- /dev/null +++ b/test/LTO/ARM/runtime-library-subtarget.ll @@ -0,0 +1,18 @@ +; Check that user-defined runtime library function __addsf3vfp is not removed +; +; RUN: llvm-as <%s >%t1 +; RUN: llvm-lto -o %t2 %t1 -mcpu arm1176jz-s +; RUN: llvm-nm %t2 | FileCheck %s + +target datalayout = "e-m:o-p:32:32-f64:32:64-v64:32:64-v128:32:128-a:0:32-n32-S32" +target triple = "thumbv7-apple-ios" + +; CHECK: ___addsf3vfp + +define float @__addsf3vfp(float %a, float %b) #0 { +entry: + %add = fadd float %a, %b + ret float %add +} + +attributes #0 = { "target-cpu"="arm1176jzf-s"} |