diff options
author | Björn Gustavsson <[email protected]> | 2017-09-15 12:29:58 +0200 |
---|---|---|
committer | Björn Gustavsson <[email protected]> | 2017-10-05 12:37:57 +0200 |
commit | 985524704ddd62cf85385a323861377608d66c9c (patch) | |
tree | ae1deb50e492837ee0ca8837b4dff2447d6a9301 /erts/emulator/beam/beam_emu.c | |
parent | f88bd45a2c76f84a16b004922945579898cc35ac (diff) | |
download | otp-985524704ddd62cf85385a323861377608d66c9c.tar.gz otp-985524704ddd62cf85385a323861377608d66c9c.tar.bz2 otp-985524704ddd62cf85385a323861377608d66c9c.zip |
Optimize instruction prefetch
Diffstat (limited to 'erts/emulator/beam/beam_emu.c')
-rw-r--r-- | erts/emulator/beam/beam_emu.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/erts/emulator/beam/beam_emu.c b/erts/emulator/beam/beam_emu.c index 73c4e3532b..aa94fbf536 100644 --- a/erts/emulator/beam/beam_emu.c +++ b/erts/emulator/beam/beam_emu.c @@ -52,11 +52,13 @@ # define CountCase(OpCode) case op_count_##OpCode # define IsOpCode(InstrWord, OpCode) (BeamCodeAddr(InstrWord) == (BeamInstr)op_##OpCode) # define Goto(Rel) {Go = BeamCodeAddr(Rel); goto emulator_loop;} +# define GotoPF(Rel) Goto(Rel) #else # define OpCase(OpCode) lb_##OpCode # define CountCase(OpCode) lb_count_##OpCode # define IsOpCode(InstrWord, OpCode) (BeamCodeAddr(InstrWord) == (BeamInstr)&&lb_##OpCode) # define Goto(Rel) goto *((void *)BeamCodeAddr(Rel)) +# define GotoPF(Rel) goto *((void *)Rel) # define LabelAddr(Label) &&Label #endif |