aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2026-04-04 10:27:06 +0100
committerMichael Williamson <mike@zwobble.org>2026-04-04 10:28:17 +0100
commitd68a12290bc715e5dea98186a47d84f0b0dfcdef (patch)
treea879c8c8c7ebd8cbba48db5ca6b771c923831037 /src
parent58fb4a1352c8667bf627ded1ac4171cd568dcf37 (diff)
Rename offset field to elementOffsets
Diffstat (limited to 'src')
-rw-r--r--src/main/java/org/shedlang/compiler/backends/llvm/codegen/PatioToLlvm.java36
-rw-r--r--src/main/java/org/shedlang/compiler/backends/wasm/PatioToWasm.java6
-rw-r--r--src/main/java/org/shedlang/compiler/patio/PatioSerializer.java10
-rw-r--r--src/main/java/org/shedlang/compiler/patio/instructions/PatioMemoryLoad.java2
-rw-r--r--src/main/java/org/shedlang/compiler/patio/instructions/PatioMemoryStore.java2
-rw-r--r--src/main/java/org/shedlang/compiler/patio/serialization/PatioToFlatbuffers.java30
-rw-r--r--src/main/java/org/shedlang/compiler/patio/values/PatioIntValueByteOffsetOf.java2
-rw-r--r--src/test/java/org/shedlang/compiler/patio/PatioSerializerTests.java4
8 files changed, 46 insertions, 46 deletions
diff --git a/src/main/java/org/shedlang/compiler/backends/llvm/codegen/PatioToLlvm.java b/src/main/java/org/shedlang/compiler/backends/llvm/codegen/PatioToLlvm.java
index a93b9337..5f554710 100644
--- a/src/main/java/org/shedlang/compiler/backends/llvm/codegen/PatioToLlvm.java
+++ b/src/main/java/org/shedlang/compiler/backends/llvm/codegen/PatioToLlvm.java
@@ -572,14 +572,14 @@ public class PatioToLlvm {
context.target()
)),
patioOperandToLlvmOperand(patioMemoryLoad.pointer(), context),
- patioDataOffsetsToLlvmOffsets(patioMemoryLoad.layout(), patioMemoryLoad.offset())
+ patioDataElementOffsetsToLlvmOffsets(patioMemoryLoad.layout(), patioMemoryLoad.elementOffsets())
));
context = context.addInstruction(new LlvmLoad(
destination,
patioDataOffsetToLlvmType(
patioMemoryLoad.layout(),
- patioMemoryLoad.offset(),
+ patioMemoryLoad.elementOffsets(),
context.target()
),
pointer
@@ -600,13 +600,13 @@ public class PatioToLlvm {
context.target()
)),
patioOperandToLlvmOperand(patioMemoryStore.pointer(), context),
- patioDataOffsetsToLlvmOffsets(patioMemoryStore.layout(), patioMemoryStore.offset())
+ patioDataElementOffsetsToLlvmOffsets(patioMemoryStore.layout(), patioMemoryStore.elementOffsets())
));
context = context.addInstruction(new LlvmStore(
patioDataOffsetToLlvmType(
patioMemoryStore.layout(),
- patioMemoryStore.offset(),
+ patioMemoryStore.elementOffsets(),
context.target()
),
patioOperandToLlvmOperand(patioMemoryStore.value(), context),
@@ -985,32 +985,32 @@ public class PatioToLlvm {
return context;
}
- private static PVector<LlvmTypedOperand> patioDataOffsetsToLlvmOffsets(
+ private static PVector<LlvmTypedOperand> patioDataElementOffsetsToLlvmOffsets(
PatioDataLayout patioDataLayout,
- List<Integer> patioOffsets
+ List<Integer> patioElementOffsets
) {
- return patioDataOffsetsToLlvmOffsets(
+ return patioDataElementOffsetsToLlvmOffsets(
patioDataLayout,
- TreePVector.from(patioOffsets),
+ TreePVector.from(patioElementOffsets),
P.vector()
).plus(0, LlvmTypedOperand.arrayIndex(0));
}
- private static PVector<LlvmTypedOperand> patioDataOffsetsToLlvmOffsets(
+ private static PVector<LlvmTypedOperand> patioDataElementOffsetsToLlvmOffsets(
PatioDataLayout patioDataLayout,
- PVector<Integer> patioOffsets,
+ PVector<Integer> patioElementOffsets,
PVector<LlvmTypedOperand> llvmOffsets
) {
- if (patioOffsets.isEmpty()) {
+ if (patioElementOffsets.isEmpty()) {
return llvmOffsets;
} else {
- var patioOffset = patioOffsets.get(0);
+ var patioOffset = patioElementOffsets.get(0);
return switch (patioDataLayout) {
case PatioDataLayoutArray patioDataLayoutArray ->
- patioDataOffsetsToLlvmOffsets(
+ patioDataElementOffsetsToLlvmOffsets(
patioDataLayoutArray.element(),
- patioOffsets.minus(0),
+ patioElementOffsets.minus(0),
llvmOffsets.plus(LlvmTypedOperand.arrayIndex(patioOffset))
);
@@ -1033,9 +1033,9 @@ public class PatioToLlvm {
throw new RuntimeException("offset not allowed for int32s");
case PatioDataLayoutStruct patioDataLayoutStruct ->
- patioDataOffsetsToLlvmOffsets(
+ patioDataElementOffsetsToLlvmOffsets(
patioDataLayoutStruct.elements().get(patioOffset),
- patioOffsets.minus(0),
+ patioElementOffsets.minus(0),
llvmOffsets.plus(LlvmTypedOperand.structureIndex(patioOffset))
);
};
@@ -1145,7 +1145,7 @@ public class PatioToLlvm {
case PatioIntValueByteOffsetOf byteOffsetOf ->
offsetOf(
byteOffsetOf.layout(),
- byteOffsetOf.offset(),
+ byteOffsetOf.elementOffsets(),
patioDestinationType,
target
);
@@ -1376,7 +1376,7 @@ public class PatioToLlvm {
target
)),
new LlvmOperandNull(),
- patioDataOffsetsToLlvmOffsets(patioDataLayout, patioOffset)
+ patioDataElementOffsetsToLlvmOffsets(patioDataLayout, patioOffset)
);
return new LlvmOperandPtrToInt(
offsetPtr,
diff --git a/src/main/java/org/shedlang/compiler/backends/wasm/PatioToWasm.java b/src/main/java/org/shedlang/compiler/backends/wasm/PatioToWasm.java
index c9f47659..356b016f 100644
--- a/src/main/java/org/shedlang/compiler/backends/wasm/PatioToWasm.java
+++ b/src/main/java/org/shedlang/compiler/backends/wasm/PatioToWasm.java
@@ -313,7 +313,7 @@ public class PatioToWasm {
context.wasmLocalType(patioMemoryLoad.destination()),
wasmMemoryArg(
patioMemoryLoad.layout(),
- patioMemoryLoad.offset(),
+ patioMemoryLoad.elementOffsets(),
target
)
));
@@ -332,7 +332,7 @@ public class PatioToWasm {
patioOperandToWasmValueType(patioMemoryStore.value(), context),
wasmMemoryArg(
patioMemoryStore.layout(),
- patioMemoryStore.offset(),
+ patioMemoryStore.elementOffsets(),
target
)
));
@@ -588,7 +588,7 @@ public class PatioToWasm {
case PatioIntValueByteOffsetOf byteOffsetOf ->
offsetOf(
byteOffsetOf.layout(),
- byteOffsetOf.offset(),
+ byteOffsetOf.elementOffsets(),
target
);
diff --git a/src/main/java/org/shedlang/compiler/patio/PatioSerializer.java b/src/main/java/org/shedlang/compiler/patio/PatioSerializer.java
index 412dd932..d9ca8c37 100644
--- a/src/main/java/org/shedlang/compiler/patio/PatioSerializer.java
+++ b/src/main/java/org/shedlang/compiler/patio/PatioSerializer.java
@@ -281,7 +281,7 @@ public class PatioSerializer {
operandToTree(memoryLoad.destination()),
treeNamed("pointer", operandToTree(memoryLoad.pointer())),
treeNamed("layout", dataLayoutToTree(memoryLoad.layout())),
- treeNamed("offset", offsetToTree(memoryLoad.offset()))
+ treeNamed("element-offsets", elementOffsetsToTree(memoryLoad.elementOffsets()))
);
case PatioMemoryStore memoryStore ->
@@ -289,7 +289,7 @@ public class PatioSerializer {
treeIdentifier("memory-store"),
treeNamed("pointer", operandToTree(memoryStore.pointer())),
treeNamed("layout", dataLayoutToTree(memoryStore.layout())),
- treeNamed("offset", offsetToTree(memoryStore.offset())),
+ treeNamed("element-offsets", elementOffsetsToTree(memoryStore.elementOffsets())),
treeNamed("value", operandToTree(memoryStore.value()))
);
@@ -580,7 +580,7 @@ public class PatioSerializer {
treeList(
treeIdentifier("byte-offset-of"),
dataLayoutToTree(byteOffsetOf.layout()),
- offsetToTree(byteOffsetOf.offset())
+ elementOffsetsToTree(byteOffsetOf.elementOffsets())
);
case PatioIntValueByteSizeOf byteSizeOf ->
@@ -594,9 +594,9 @@ public class PatioSerializer {
};
}
- private static Tree offsetToTree(List<Integer> memoryLoad) {
+ private static Tree elementOffsetsToTree(List<Integer> elementOffsets) {
return treeList(
- memoryLoad.stream()
+ elementOffsets.stream()
.map(offset -> treeInt(offset))
.toList()
);
diff --git a/src/main/java/org/shedlang/compiler/patio/instructions/PatioMemoryLoad.java b/src/main/java/org/shedlang/compiler/patio/instructions/PatioMemoryLoad.java
index 2251ae91..1262d040 100644
--- a/src/main/java/org/shedlang/compiler/patio/instructions/PatioMemoryLoad.java
+++ b/src/main/java/org/shedlang/compiler/patio/instructions/PatioMemoryLoad.java
@@ -15,7 +15,7 @@ public record PatioMemoryLoad(
PatioLocalRef destination,
PatioOperand pointer,
PatioDataLayout layout,
- List<Integer> offset,
+ List<Integer> elementOffsets,
Source source
) implements PatioInstruction {
@Override
diff --git a/src/main/java/org/shedlang/compiler/patio/instructions/PatioMemoryStore.java b/src/main/java/org/shedlang/compiler/patio/instructions/PatioMemoryStore.java
index ccc5c36a..cfcdf9a7 100644
--- a/src/main/java/org/shedlang/compiler/patio/instructions/PatioMemoryStore.java
+++ b/src/main/java/org/shedlang/compiler/patio/instructions/PatioMemoryStore.java
@@ -12,7 +12,7 @@ import java.util.List;
public record PatioMemoryStore(
PatioOperand pointer,
PatioDataLayout layout,
- List<Integer> offset,
+ List<Integer> elementOffsets,
PatioOperand value,
Source source
) implements PatioInstruction {
diff --git a/src/main/java/org/shedlang/compiler/patio/serialization/PatioToFlatbuffers.java b/src/main/java/org/shedlang/compiler/patio/serialization/PatioToFlatbuffers.java
index cc631f36..20c5f9f9 100644
--- a/src/main/java/org/shedlang/compiler/patio/serialization/PatioToFlatbuffers.java
+++ b/src/main/java/org/shedlang/compiler/patio/serialization/PatioToFlatbuffers.java
@@ -1561,9 +1561,9 @@ public class PatioToFlatbuffers {
var destinationFbs = serializeLocalRef(builder, instruction.destination());
var pointerFbs = serializeOperand(builder, instruction.pointer());
var layoutFbs = serializeDataLayout(builder, instruction.layout());
- var offsetFbs = PatioMemoryLoadFbs.createOffsetVector(
+ var elementOffsetsFb = PatioMemoryLoadFbs.createElementOffsetsVector(
builder,
- serializeListOfInts(instruction.offset())
+ serializeListOfInts(instruction.elementOffsets())
);
PatioMemoryLoadFbs.startPatioMemoryLoadFbs(builder);
@@ -1571,7 +1571,7 @@ public class PatioToFlatbuffers {
PatioMemoryLoadFbs.addDestination(builder, destinationFbs);
PatioMemoryLoadFbs.addPointer(builder, pointerFbs);
PatioMemoryLoadFbs.addLayout(builder, layoutFbs);
- PatioMemoryLoadFbs.addOffset(builder, offsetFbs);
+ PatioMemoryLoadFbs.addElementOffsets(builder, elementOffsetsFb);
return PatioMemoryLoadFbs.endPatioMemoryLoadFbs(builder);
}
@@ -1584,9 +1584,9 @@ public class PatioToFlatbuffers {
var destination = deserializeLocalRef(instructionFbs.destination());
var pointer = deserializeOperand(instructionFbs.pointer());
var layout = deserializeDataLayout(instructionFbs.layout());
- var offset = deserializeListOfInts(instructionFbs.offsetVector());
+ var elementOffsets = deserializeListOfInts(instructionFbs.elementOffsetsVector());
- return new PatioMemoryLoad(destination, pointer, layout, offset, source);
+ return new PatioMemoryLoad(destination, pointer, layout, elementOffsets, source);
}
public static int serializeMemoryStore(
@@ -1602,9 +1602,9 @@ public class PatioToFlatbuffers {
var pointerFbs = serializeOperand(builder, instruction.pointer());
var layoutFbs = serializeDataLayout(builder, instruction.layout());
- var offsetFbs = PatioMemoryStoreFbs.createOffsetVector(
+ var elementOffsetsFbs = PatioMemoryStoreFbs.createElementOffsetsVector(
builder,
- serializeListOfInts(instruction.offset())
+ serializeListOfInts(instruction.elementOffsets())
);
var valueFbs = serializeOperand(builder, instruction.value());
@@ -1612,7 +1612,7 @@ public class PatioToFlatbuffers {
PatioMemoryStoreFbs.addSource(builder, sourceFbs);
PatioMemoryStoreFbs.addPointer(builder, pointerFbs);
PatioMemoryStoreFbs.addLayout(builder, layoutFbs);
- PatioMemoryStoreFbs.addOffset(builder, offsetFbs);
+ PatioMemoryStoreFbs.addElementOffsets(builder, elementOffsetsFbs);
PatioMemoryStoreFbs.addValue(builder, valueFbs);
return PatioMemoryStoreFbs.endPatioMemoryStoreFbs(builder);
}
@@ -1625,10 +1625,10 @@ public class PatioToFlatbuffers {
var pointer = deserializeOperand(instructionFbs.pointer());
var layout = deserializeDataLayout(instructionFbs.layout());
- var offset = deserializeListOfInts(instructionFbs.offsetVector());
+ var elementOffsets = deserializeListOfInts(instructionFbs.elementOffsetsVector());
var value = deserializeOperand(instructionFbs.value());
- return new PatioMemoryStore(pointer, layout, offset, value, source);
+ return new PatioMemoryStore(pointer, layout, elementOffsets, value, source);
}
public static int serializeResume(
@@ -2267,15 +2267,15 @@ public class PatioToFlatbuffers {
return switch (value) {
case PatioIntValueByteOffsetOf byteOffsetOf -> {
var layoutFbs = serializeDataLayout(builder, byteOffsetOf.layout());
- var offsetFbs = PatioIntValueByteOffsetOfFbs.createOffsetVector(
+ var elementOffsetsFbs = PatioIntValueByteOffsetOfFbs.createElementOffsetsVector(
builder,
- serializeListOfInts(byteOffsetOf.offset())
+ serializeListOfInts(byteOffsetOf.elementOffsets())
);
var byteOffsetOfFbs = PatioIntValueByteOffsetOfFbs.createPatioIntValueByteOffsetOfFbs(
builder,
layoutFbs,
- offsetFbs
+ elementOffsetsFbs
);
PatioIntValueFbs.startPatioIntValueFbs(builder);
@@ -2311,8 +2311,8 @@ public class PatioToFlatbuffers {
case PatioIntValueValueFbs.PatioIntValueByteOffsetOfFbs -> {
var byteOffsetOfFbs = (PatioIntValueByteOffsetOfFbs) valueFbs.value(new PatioIntValueByteOffsetOfFbs());
var layout = deserializeDataLayout(byteOffsetOfFbs.layout());
- var offset = deserializeListOfInts(byteOffsetOfFbs.offsetVector());
- yield new PatioIntValueByteOffsetOf(layout, offset);
+ var elementOffsets = deserializeListOfInts(byteOffsetOfFbs.elementOffsetsVector());
+ yield new PatioIntValueByteOffsetOf(layout, elementOffsets);
}
case PatioIntValueValueFbs.PatioIntValueByteSizeOfFbs -> {
diff --git a/src/main/java/org/shedlang/compiler/patio/values/PatioIntValueByteOffsetOf.java b/src/main/java/org/shedlang/compiler/patio/values/PatioIntValueByteOffsetOf.java
index 90aef911..24219048 100644
--- a/src/main/java/org/shedlang/compiler/patio/values/PatioIntValueByteOffsetOf.java
+++ b/src/main/java/org/shedlang/compiler/patio/values/PatioIntValueByteOffsetOf.java
@@ -9,6 +9,6 @@ import java.util.List;
*/
public record PatioIntValueByteOffsetOf(
PatioDataLayout layout,
- List<Integer> offset
+ List<Integer> elementOffsets
) implements PatioIntValue {
}
diff --git a/src/test/java/org/shedlang/compiler/patio/PatioSerializerTests.java b/src/test/java/org/shedlang/compiler/patio/PatioSerializerTests.java
index 448da19c..525091ba 100644
--- a/src/test/java/org/shedlang/compiler/patio/PatioSerializerTests.java
+++ b/src/test/java/org/shedlang/compiler/patio/PatioSerializerTests.java
@@ -446,7 +446,7 @@ public class PatioSerializerTests {
(local "destination")
pointer=(local "pointer")
layout=(struct (int int byte))
- offset=(1)
+ element-offsets=(1)
)"""
));
}
@@ -467,7 +467,7 @@ public class PatioSerializerTests {
memory-store
pointer=(local "pointer")
layout=(struct (int int byte))
- offset=(1)
+ element-offsets=(1)
value=(local "value")
)"""
));