aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/beam_load.c
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2012-03-30 11:54:04 +0200
committerBjörn Gustavsson <[email protected]>2015-07-03 14:28:03 +0200
commite1019cbba7a66788a068b6df1a1caf2d643ef65b (patch)
tree8b460ce8101eec734a4baf4df9fb5096ec129334 /erts/emulator/beam/beam_load.c
parent1f996cc46a8c935b8f4e33a4a96804f9fb852da3 (diff)
downloadotp-e1019cbba7a66788a068b6df1a1caf2d643ef65b.tar.gz
otp-e1019cbba7a66788a068b6df1a1caf2d643ef65b.tar.bz2
otp-e1019cbba7a66788a068b6df1a1caf2d643ef65b.zip
Eliminate R_REG_DEF
Diffstat (limited to 'erts/emulator/beam/beam_load.c')
-rw-r--r--erts/emulator/beam/beam_load.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/erts/emulator/beam/beam_load.c b/erts/emulator/beam/beam_load.c
index f5f1147261..495e92d600 100644
--- a/erts/emulator/beam/beam_load.c
+++ b/erts/emulator/beam/beam_load.c
@@ -2167,7 +2167,7 @@ load_code(LoaderState* stp)
case 's': /* Any source (tagged constant or register) */
switch (tag) {
case TAG_r:
- code[ci++] = make_rreg();
+ code[ci++] = make_xreg(0);
break;
case TAG_x:
code[ci++] = make_xreg(tmp_op->a[arg].val);
@@ -2193,7 +2193,7 @@ load_code(LoaderState* stp)
case 'd': /* Destination (x(0), x(N), y(N) */
switch (tag) {
case TAG_r:
- code[ci++] = make_rreg();
+ code[ci++] = make_xreg(0);
break;
case TAG_x:
code[ci++] = make_xreg(tmp_op->a[arg].val);
@@ -2357,10 +2357,6 @@ load_code(LoaderState* stp)
ci++;
break;
case TAG_r:
- CodeNeed(1);
- code[ci++] = (R_REG_DEF << _TAG_PRIMARY_SIZE) |
- TAG_PRIMARY_HEADER;
- break;
case TAG_x:
CodeNeed(1);
code[ci++] = (tmp_op->a[arg].val << _TAG_IMMED1_SIZE) |