diff options
| author | Benjamin Gregoire | 2015-03-30 10:47:12 +0200 |
|---|---|---|
| committer | Benjamin Gregoire | 2015-03-30 10:49:27 +0200 |
| commit | 596a4a5251cc50f50bd6d25e36c81341bf65cfed (patch) | |
| tree | f656bd4e4aea17d79e9d86b7de7a6657de748df5 /kernel/byterun/coq_interp.c | |
| parent | ab299ba2d7d9ff18d65cc999dca127d2ce5e9c5d (diff) | |
fix code and bound for SWITCH instruction.
Diffstat (limited to 'kernel/byterun/coq_interp.c')
| -rw-r--r-- | kernel/byterun/coq_interp.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/byterun/coq_interp.c b/kernel/byterun/coq_interp.c index df71f4585a..0ab9f89ffa 100644 --- a/kernel/byterun/coq_interp.c +++ b/kernel/byterun/coq_interp.c @@ -791,12 +791,12 @@ value coq_interprete Instruct(SWITCH) { uint32_t sizes = *pc++; print_instr("SWITCH"); - print_int(sizes & 0x7FFFFF); + print_int(sizes & 0xFFFFFF); if (Is_block(accu)) { long index = Tag_val(accu); print_instr("block"); print_int(index); - pc += pc[(sizes & 0xFFFFF) + index]; + pc += pc[(sizes & 0xFFFFFF) + index]; } else { long index = Long_val(accu); print_instr("constant"); |
