aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Analysis/NaCl/PNaClABIVerifyModule.cpp4
-rw-r--r--test/NaCl/PNaClABI/global-attributes.ll3
2 files changed, 7 insertions, 0 deletions
diff --git a/lib/Analysis/NaCl/PNaClABIVerifyModule.cpp b/lib/Analysis/NaCl/PNaClABIVerifyModule.cpp
index 288d5da2ad..64b7eb67c5 100644
--- a/lib/Analysis/NaCl/PNaClABIVerifyModule.cpp
+++ b/lib/Analysis/NaCl/PNaClABIVerifyModule.cpp
@@ -370,6 +370,10 @@ bool PNaClABIVerifyModule::runOnModule(Module &M) {
Reporter->addError() << "Variable " << MI->getName() <<
" has disallowed \"thread_local\" attribute\n";
}
+ if (MI->isExternallyInitialized()) {
+ Reporter->addError() << "Variable " << MI->getName() <<
+ " has disallowed \"externally_initialized\" attribute\n";
+ }
}
// No aliases allowed for now.
diff --git a/test/NaCl/PNaClABI/global-attributes.ll b/test/NaCl/PNaClABI/global-attributes.ll
index eda7b7fb61..c5253b3b63 100644
--- a/test/NaCl/PNaClABI/global-attributes.ll
+++ b/test/NaCl/PNaClABI/global-attributes.ll
@@ -17,6 +17,9 @@
; CHECK-NEXT: Variable var_with_unnamed_addr has disallowed "unnamed_addr" attribute
@var_with_unnamed_addr = internal unnamed_addr constant [1 x i8] c"x"
+; CHECK-NEXT: Variable var_ext_init has disallowed "externally_initialized" attribute
+@var_ext_init = internal externally_initialized global [1 x i8] c"x"
+
; Function attributes