Skip to content

Commit 5d9e7d4

Browse files
committed
minor: Move 'SizeOf' call out of the loop in Java API arrays
1 parent 75a993c commit 5d9e7d4

File tree

1 file changed

+4
-6
lines changed

1 file changed

+4
-6
lines changed

langkit/templates/java_api/array.mako

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -102,10 +102,9 @@
102102
${elem_ni_ref_type} toRead;
103103
104104
// Iterate over all array elements
105+
final int elemSize = SizeOf.get(${elem_ni_type}.class);
105106
for(int i = 0 ; i < size ; i++) {
106-
nativeItem = nativeItems.add(
107-
i * SizeOf.get(${elem_ni_type}.class)
108-
);
107+
nativeItem = nativeItems.add(i * elemSize);
109108
toRead = WordFactory.unsigned(nativeItem.rawValue());
110109
content[i] = ${
111110
api.ni_wrap(cls.element_type, "toRead", [])
@@ -166,10 +165,9 @@
166165
${elem_ni_ref_type} toWrite;
167166
168167
// Place all elements in the native array
168+
final int elemSize = SizeOf.get(${elem_ni_type}.class);
169169
for(int i = 0 ; i < this.content.length ; i++) {
170-
nativeItem = nativeItems.add(
171-
i * SizeOf.get(${elem_ni_type}.class)
172-
);
170+
nativeItem = nativeItems.add(i * elemSize);
173171
toWrite = WordFactory.unsigned(
174172
nativeItem.rawValue()
175173
);

0 commit comments

Comments
 (0)