mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-01-07 06:22:32 +00:00
Don't load values out of global constants with weak
linkage: the value may be replaced with something different at link time. (Frontends that want to allow values to be loaded out of weak constants can give their constants weak_odr linkage). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67407 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
12
test/FrontendC/weak_constant.c
Normal file
12
test/FrontendC/weak_constant.c
Normal file
@@ -0,0 +1,12 @@
|
||||
// RUN: %llvmgcc -S %s -O1 -o - | grep {ret.*123}
|
||||
// Check for bug compatibility with gcc.
|
||||
|
||||
const int x __attribute((weak)) = 123;
|
||||
|
||||
int* f(void) {
|
||||
return &x;
|
||||
}
|
||||
|
||||
int g(void) {
|
||||
return *f();
|
||||
}
|
||||
Reference in New Issue
Block a user