Skip to content

Commit b107258

Browse files
author
Daniel Kroening
committed
fill in missing bytcode table entries
1 parent af259fa commit b107258

File tree

1 file changed

+55
-0
lines changed

1 file changed

+55
-0
lines changed

jbmc/src/java_bytecode/bytecode_info.cpp

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -218,8 +218,63 @@ struct bytecode_infot const bytecode_info[]=
218218
{ "goto_w", 0xc8, 'O', 0, 0, ' ' }, // [no change]; goes to another instruction at branchoffset (signed int constructed from unsigned bytes branchbyte1 << 24 + branchbyte2 << 16 + branchbyte3 << 8 + branchbyte4) NOLINT(*)
219219
{ "jsr_w", 0xc9, 'O', 0, 1, 'a' }, // → address; jump to subroutine at branchoffset (signed int constructed from unsigned bytes branchbyte1 << 24 + branchbyte2 << 16 + branchbyte3 << 8 + branchbyte4) and place the return address on the stack NOLINT(*)
220220
{ "breakpoint", 0xca, ' ', 0, 0, ' ' }, // ; reserved for breakpoints in Java debuggers; should not appear in any class file NOLINT(*)
221+
{ nullptr, 0xcb, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
222+
{ nullptr, 0xcc, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
223+
{ nullptr, 0xcd, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
224+
{ nullptr, 0xce, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
225+
{ nullptr, 0xcf, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
226+
{ nullptr, 0xd0, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
227+
{ nullptr, 0xd1, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
228+
{ nullptr, 0xd2, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
229+
{ nullptr, 0xd3, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
230+
{ nullptr, 0xd4, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
231+
{ nullptr, 0xd5, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
232+
{ nullptr, 0xd6, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
233+
{ nullptr, 0xd7, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
234+
{ nullptr, 0xd8, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
235+
{ nullptr, 0xd9, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
236+
{ nullptr, 0xda, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
237+
{ nullptr, 0xdb, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
238+
{ nullptr, 0xdc, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
239+
{ nullptr, 0xdd, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
240+
{ nullptr, 0xde, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
241+
{ nullptr, 0xdf, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
242+
{ nullptr, 0xe0, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
243+
{ nullptr, 0xe1, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
244+
{ nullptr, 0xe2, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
245+
{ nullptr, 0xe3, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
246+
{ nullptr, 0xe4, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
247+
{ nullptr, 0xe5, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
248+
{ nullptr, 0xe6, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
249+
{ nullptr, 0xe7, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
250+
{ nullptr, 0xe8, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
251+
{ nullptr, 0xe9, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
252+
{ nullptr, 0xea, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
253+
{ nullptr, 0xeb, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
254+
{ nullptr, 0xec, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
255+
{ nullptr, 0xed, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
256+
{ nullptr, 0xee, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
257+
{ nullptr, 0xef, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
258+
{ nullptr, 0xf0, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
259+
{ nullptr, 0xf1, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
260+
{ nullptr, 0xf2, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
261+
{ nullptr, 0xf3, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
262+
{ nullptr, 0xf4, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
263+
{ nullptr, 0xf5, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
264+
{ nullptr, 0xf6, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
265+
{ nullptr, 0xf7, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
266+
{ nullptr, 0xf8, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
267+
{ nullptr, 0xf9, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
268+
{ nullptr, 0xfa, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
269+
{ nullptr, 0xfb, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
270+
{ nullptr, 0xfc, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
271+
{ nullptr, 0xfd, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
221272
{ "impdep1", 0xfe, ' ', 0, 0, ' ' }, // ; reserved for implementation-dependent operations within debuggers; should not appear in any class file NOLINT(*)
222273
{ "impdep2", 0xff, ' ', 0, 0, ' ' }, // ; reserved for implementation-dependent operations within debuggers; should not appear in any class file NOLINT(*)
223274
{ nullptr, 0x00, '\0',0, 0, '\0'}, // zero-initialized NOLINT (*)
224275
};
225276
// clang-format on
277+
278+
static_assert(
279+
sizeof(bytecode_info) == sizeof(bytecode_infot) * 257,
280+
"bytecode table has right size");

0 commit comments

Comments
 (0)