| // RUN: %clang_cc1 -triple wasm32-unknown-unknown-wasm -emit-llvm -o - %s | FileCheck %s | |
| // Test export_name with explicit name on addrspace(1) global | |
| int __attribute__((address_space(1))) exported_g | |
| __attribute__((export_name("global_g"))) = 42; | |
| // Test export_name with explicit name on addrspace(0) memory global | |
| int exported_mem __attribute__((export_name("mem_g"))) = 100; | |
| // Test export_name on forward declaration propagating to definition | |
| extern int var_propagate __attribute__((export_name("exported_propagate"))); | |
| int var_propagate = 102; | |
| // CHECK: @exported_g = addrspace(1) global i32 42, align 4 #0 | |
| // CHECK: @exported_mem = global i32 100, align 4 #1 | |
| // CHECK: @var_propagate = global i32 102, align 4 #2 | |
| // CHECK: attributes #0 = { "wasm-export-name"="global_g" } | |
| // CHECK: attributes #1 = { "wasm-export-name"="mem_g" } | |
| // CHECK: attributes #2 = { "wasm-export-name"="exported_propagate" } |