diff options
Diffstat (limited to 'clang/test/CodeGen/address-space-avr.c')
-rw-r--r-- | clang/test/CodeGen/address-space-avr.c | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/clang/test/CodeGen/address-space-avr.c b/clang/test/CodeGen/address-space-avr.c index 6c32dff2d0fe..ea78c895f63d 100644 --- a/clang/test/CodeGen/address-space-avr.c +++ b/clang/test/CodeGen/address-space-avr.c @@ -1,12 +1,21 @@ // RUN: %clang_cc1 -triple avr -emit-llvm < %s | FileCheck %s -// Test that function declarations in nonzero address spaces without prototype -// are called correctly. +// CHECK: @var0 {{.*}} addrspace(1) constant [3 x i16] +// CHECK: @bar.var2 {{.*}} addrspace(1) constant [3 x i16] +// CHECK: @var1 {{.*}} addrspace(1) constant [3 x i16] // CHECK: define{{.*}} void @bar() addrspace(1) -// CHECK: call addrspace(1) void bitcast (void (...) addrspace(1)* @foo to void (i16) addrspace(1)*)(i16 3) +// CHECK: call addrspace(1) void bitcast (void (...) addrspace(1)* @foo to void (i16) addrspace(1)*) // CHECK: declare void @foo(...) addrspace(1) + +__flash const int var0[] = {999, 888, 777}; +__flash static const int var1[] = {111, 222, 333}; + +int i; + void foo(); -void bar(void) { - foo(3); + +void bar() { + static __flash const int var2[] = {555, 666, 777}; + foo(var1[i]); } |