blob: a01999b3a1071982da5d5c1d059ec4a2ff14360f [file] [log] [blame]
Ana Pazos1eee1b72018-07-26 17:37:45 +00001// RUN: %clang_cc1 -x c++ -triple riscv32-unknown-elf -emit-llvm -DCHECK_IR < %s | FileCheck %s
2// RUN: %clang_cc1 -x c++ -triple riscv64-unknown-elf -emit-llvm -DCHECK_IR < %s | FileCheck %s
3// RUN: %clang_cc1 %s -triple riscv32-unknown-elf -verify -fsyntax-only
4// RUN: %clang_cc1 %s -triple riscv64-unknown-elf -verify -fsyntax-only
5
6#if defined(CHECK_IR)
7// CHECK-LABEL: @_Z11foo_defaultv() #0
8// CHECK: ret void
9[[gnu::interrupt]] void foo_default() {}
10// CHECK: attributes #0
11// CHECK: "interrupt"="machine"
12#else
13[[gnu::interrupt]] [[gnu::interrupt]] void foo1() {} // expected-warning {{repeated RISC-V 'interrupt' attribute}} \
14 // expected-note {{repeated RISC-V 'interrupt' attribute is here}}
15[[gnu::interrupt]] void foo2() {}
16#endif