aboutsummaryrefslogtreecommitdiff
path: root/src/test/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2023-06-12 23:01:54 +0100
committerMichael Williamson <mike@zwobble.org>2023-06-12 23:01:54 +0100
commit106e45c80866713291e6bd013b15b5a595cf22ae (patch)
tree813a49e4e1d0dd9396ec3b371424434e387f420a /src/test/java
parent7820f289bee49a8e748f63c04e85566c907f6c6f (diff)
Support private LLVM globals
Diffstat (limited to 'src/test/java')
-rw-r--r--src/test/java/org/shedlang/compiler/backends/llvm/ir/LlvmIrSerializerGlobalDefinitionTests.java19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/test/java/org/shedlang/compiler/backends/llvm/ir/LlvmIrSerializerGlobalDefinitionTests.java b/src/test/java/org/shedlang/compiler/backends/llvm/ir/LlvmIrSerializerGlobalDefinitionTests.java
index f1535cce..c2460540 100644
--- a/src/test/java/org/shedlang/compiler/backends/llvm/ir/LlvmIrSerializerGlobalDefinitionTests.java
+++ b/src/test/java/org/shedlang/compiler/backends/llvm/ir/LlvmIrSerializerGlobalDefinitionTests.java
@@ -17,6 +17,7 @@ public class LlvmIrSerializerGlobalDefinitionTests {
LlvmTypes.INT_64,
LlvmIr.operandInt(42),
false,
+ false,
false
);
@@ -32,6 +33,7 @@ public class LlvmIrSerializerGlobalDefinitionTests {
LlvmTypes.INT_64,
LlvmIr.operandInt(42),
true,
+ false,
false
);
@@ -41,12 +43,29 @@ public class LlvmIrSerializerGlobalDefinitionTests {
}
@Test
+ public void canSerializePrivate() {
+ var definition = new LlvmGlobalDefinition(
+ "x",
+ LlvmTypes.INT_64,
+ LlvmIr.operandInt(42),
+ false,
+ true,
+ false
+ );
+
+ var result = serializeToString(definition, LlvmIrSerializer::serializeTopLevelEntity);
+
+ assertThat(result, equalTo("@x = private global i64 42\n"));
+ }
+
+ @Test
public void canSerializeUnnamedAddr() {
var definition = new LlvmGlobalDefinition(
"x",
LlvmTypes.INT_64,
LlvmIr.operandInt(42),
false,
+ false,
true
);