| // RUN: %clang_cc1 -x c++ -triple riscv32-unknown-elf -emit-llvm  -DCHECK_IR < %s | FileCheck %s | 
 | // RUN: %clang_cc1 -x c++ -triple riscv64-unknown-elf -emit-llvm  -DCHECK_IR < %s | FileCheck %s | 
 | // RUN: %clang_cc1 %s -triple riscv32-unknown-elf -verify -fsyntax-only | 
 | // RUN: %clang_cc1 %s -triple riscv64-unknown-elf -verify -fsyntax-only | 
 |  | 
 | #if defined(CHECK_IR) | 
 | // CHECK-LABEL: @_Z11foo_defaultv() #0 | 
 | // CHECK: ret void | 
 | [[gnu::interrupt]] void foo_default() {} | 
 | // CHECK: attributes #0 | 
 | // CHECK: "interrupt"="machine" | 
 | #else | 
 | [[gnu::interrupt]] [[gnu::interrupt]] void foo1() {} // expected-warning {{repeated RISC-V 'interrupt' attribute}} \ | 
 |                                                      // expected-note {{repeated RISC-V 'interrupt' attribute is here}} | 
 | [[gnu::interrupt]] void foo2() {} | 
 | #endif |