From 106e45c80866713291e6bd013b15b5a595cf22ae Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Mon, 12 Jun 2023 23:01:54 +0100 Subject: Support private LLVM globals --- .../ir/LlvmIrSerializerGlobalDefinitionTests.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'src/test/java') 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 ); @@ -40,6 +42,22 @@ public class LlvmIrSerializerGlobalDefinitionTests { assertThat(result, equalTo("@x = constant i64 42\n")); } + @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( @@ -47,6 +65,7 @@ public class LlvmIrSerializerGlobalDefinitionTests { LlvmTypes.INT_64, LlvmIr.operandInt(42), false, + false, true ); -- cgit v1.2.3