| // RUN: %clang_cc1 -emit-llvm -triple x86_64-unknown-unknown %s -o - | FileCheck %s |
| |
| // CHECK: @_ZL2v1 ={{.*}} global i32 0, code_model "small" |
| static int v1 __attribute__((model("small"))); |
| |
| void use1() { |
| v1 = 1; |
| } |
| |
| // CHECK: @v2 ={{.*}} global float 0.000000e+00, code_model "large" |
| float v2 __attribute__((model("large"))); |
| |
| // CHECK: @_ZL2v3IiE ={{.*}} global i32 0, code_model "small" |
| template <typename T> |
| static T v3 __attribute__((model("small"))); |
| |
| void use2() { |
| v3<int> = 1; |
| } |
| struct S { |
| double d; |
| }; |
| |
| typedef void (*F)(); |
| |
| // CHECK: @v4 ={{.*}} global ptr null, code_model "large" |
| F v4 __attribute__((model("large"))); |