1 // RUN: %clang_cc1 -triple aarch64-unknown-none-gnu %s -target-feature +reserve-x4 -target-feature +reserve-x15 -verify -verify=no_x18 -fsyntax-only
2 // RUN: %clang_cc1 -triple aarch64-unknown-android %s -target-feature +reserve-x4 -target-feature +reserve-x15 -verify -fsyntax-only
4 register int w0
__asm__ ("w0");
5 register long x0
__asm__ ("x0");
6 register char i1
__asm__ ("x15"); // expected-error {{size of register 'x15' does not match variable size}}
7 register long long l2
__asm__ ("w15"); // expected-error {{size of register 'w15' does not match variable size}}
8 register int w3
__asm__ ("w3"); // expected-error {{register 'w3' unsuitable for global register variables on this target}}
9 register long x3
__asm__ ("x3"); // expected-error {{register 'x3' unsuitable for global register variables on this target}}
10 register int w4
__asm__ ("w4");
11 register long x4
__asm__ ("x4");
12 register int w18
__asm__ ("w18"); // no_x18-error {{register 'w18' unsuitable for global register variables on this target}}
13 register long x18
__asm__ ("x18"); // no_x18-error {{register 'x18' unsuitable for global register variables on this target}}