brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.2 KiB · 107a8fd Raw
35 lines · c
1// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu %s -emit-llvm -o - | FileCheck %s --check-prefix=X86_64_LINUX2// RUN: %clang_cc1 -triple i386-unknown-linux-gnu %s -emit-llvm -o - | FileCheck %s --check-prefix=X86_LINUX3// RUN: %clang_cc1 -triple x86_64-pc-win32 %s -emit-llvm -o - | FileCheck %s --check-prefix=X86_64_WIN4// RUN: %clang_cc1 -triple i386-pc-win32 %s -emit-llvm -o - | FileCheck %s --check-prefix=X86_WIN5// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnux32 %s -emit-llvm -o - | FileCheck %s --check-prefix=X86_64_LINUX6 7#ifdef __x86_64__8typedef __UINT64_TYPE__ uword;9#else10typedef __UINT32_TYPE__ uword;11#endif12 13__attribute__((interrupt)) void foo7(int *a, uword b) {}14__attribute__((interrupt)) void foo8(int *a) {}15// X86_64_LINUX: @llvm.compiler.used = appending global [2 x ptr] [ptr @foo7, ptr @foo8], section "llvm.metadata"16// X86_64_LINUX: define{{.*}} x86_intrcc void @foo7(ptr noundef byval(i32) %{{.+}}, i64 noundef %{{.+}})17// X86_64_LINUX: define{{.*}} x86_intrcc void @foo8(ptr noundef byval(i32) %{{.+}})18// X86_64_LINUX: "disable-tail-calls"="true"19// X86_64_LINUX-NOT: "disable-tail-calls"="false"20// X86_LINUX: @llvm.compiler.used = appending global [2 x ptr] [ptr @foo7, ptr @foo8], section "llvm.metadata"21// X86_LINUX: define{{.*}} x86_intrcc void @foo7(ptr noundef byval(i32) %{{.+}}, i32 noundef %{{.+}})22// X86_LINUX: define{{.*}} x86_intrcc void @foo8(ptr noundef byval(i32) %{{.+}})23// X86_LINUX: "disable-tail-calls"="true"24// X86_LINUX-NOT: "disable-tail-calls"="false"25// X86_64_WIN: @llvm.used = appending global [2 x ptr] [ptr @foo7, ptr @foo8], section "llvm.metadata"26// X86_64_WIN: define dso_local x86_intrcc void @foo7(ptr noundef byval(i32) %{{.+}}, i64 noundef %{{.+}})27// X86_64_WIN: define dso_local x86_intrcc void @foo8(ptr noundef byval(i32) %{{.+}})28// X86_64_WIN: "disable-tail-calls"="true"29// X86_64_WIN-NOT: "disable-tail-calls"="false"30// X86_WIN: @llvm.used = appending global [2 x ptr] [ptr @foo7, ptr @foo8], section "llvm.metadata"31// X86_WIN: define dso_local x86_intrcc void @foo7(ptr noundef byval(i32) %{{.+}}, i32 noundef %{{.+}})32// X86_WIN: define dso_local x86_intrcc void @foo8(ptr noundef byval(i32) %{{.+}})33// X86_WIN: "disable-tail-calls"="true"34// X86_WIN-NOT: "disable-tail-calls"="false"35