Home | History | Annotate | Download | only in Driver
      1 // RUN: %clang -target x86_64-apple-darwin -arch armv6m -resource-dir=%S/Inputs/resource_dir %s -### 2> %t
      2 // RUN: %clang -target x86_64-apple-darwin -arch armv7em -resource-dir=%S/Inputs/resource_dir %s -### 2>> %t
      3 // RUN: %clang -target x86_64-apple-darwin -arch armv7em -mhard-float -resource-dir=%S/Inputs/resource_dir %s -### 2>> %t
      4 
      5 // RUN: %clang -target x86_64-apple-darwin -arch armv7m -fPIC -resource-dir=%S/Inputs/resource_dir %s -### 2>> %t
      6 // RUN: %clang -target x86_64-apple-darwin -arch armv7em -fPIC -mfloat-abi=hard -resource-dir=%S/Inputs/resource_dir %s -### 2>> %t
      7 // RUN: %clang -target x86_64-apple-darwin -arch armv7em -fPIC -mfloat-abi=softfp -resource-dir=%S/Inputs/resource_dir %s -### 2>> %t
      8 // RUN: %clang -target x86_64-apple-none-macho -arch armv7 -mhard-float -resource-dir=%S/Inputs/resource_dir %s -### 2>> %t
      9 // RUN: %clang -target x86_64-apple-none-macho -arch armv7 -msoft-float -fPIC -resource-dir=%S/Inputs/resource_dir %s -### 2>> %t
     10 
     11 
     12 // RUN: FileCheck %s < %t
     13 
     14 // ARMv6m has no float
     15 // CHECK-LABEL: Target:
     16 // CHECK-NOT: warning: unknown platform
     17 // CHECK: "-mfloat-abi" "soft"
     18 // CHECK: libclang_rt.soft_static.a
     19 
     20 // ARMv7em does, but defaults to soft
     21 // CHECK-LABEL: Target:
     22 // CHECK-NOT: warning: unknown platform
     23 // CHECK: "-mfloat-abi" "soft"
     24 // CHECK: libclang_rt.soft_static.a
     25 
     26 // Which can be overridden
     27 // CHECK-LABEL: Target:
     28 // CHECK-NOT: warning: unknown platform
     29 // CHECK: "-mfloat-abi" "hard"
     30 // CHECK: libclang_rt.hard_static.a
     31 
     32 // ARMv7m has no float either
     33 // CHECK-LABEL: Target:
     34 // CHECK-NOT: warning: unknown platform
     35 // CHECK: "-mfloat-abi" "soft"
     36 // CHECK: libclang_rt.soft_pic.a
     37 
     38 // But it can be enabled on ARMv7em
     39 // CHECK-LABEL: Target:
     40 // CHECK-NOT: warning: unknown platform
     41 // CHECK: "-mfloat-abi" "hard"
     42 // CHECK: libclang_rt.hard_pic.a
     43 
     44 // "softfp" must link against a soft-float library since that's what the
     45 // callers we're compiling will expect.
     46 // CHECK-LABEL: Target:
     47 // CHECK-NOT: warning: unknown platform
     48 // CHECK: "-mfloat-abi" "soft"
     49 // CHECK: libclang_rt.soft_pic.a
     50 
     51 // -arch "armv7" (== embedded v7a) can be used in a couple of variants:
     52 // CHECK-LABEL: Target:
     53 // CHECK-NOT: warning: unknown platform
     54 // CHECK: "-mfloat-abi" "hard"
     55 // CHECK: libclang_rt.hard_static.a
     56 
     57 // CHECK-LABEL: Target:
     58 // CHECK-NOT: warning: unknown platform
     59 // CHECK: "-mfloat-abi" "soft"
     60 // CHECK: libclang_rt.soft_pic.a
     61