aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/hipe/hipe_amd64_bifs.m4
diff options
context:
space:
mode:
authorSverker Eriksson <sverker@erlang.org>2011-10-12 16:12:53 +0200
committerSverker Eriksson <sverker@erlang.org>2011-10-26 11:36:00 +0200
commit9dbccbfa2759e2232cba8b3ffb7c5c44d564ec69 (patch)
tree3076a3963d881fe1087fecde321ee370de4bba49 /erts/emulator/hipe/hipe_amd64_bifs.m4
parentf167442302b722c1b963a2647ffa3557b75de94a (diff)
downloadotp-9dbccbfa2759e2232cba8b3ffb7c5c44d564ec69.tar.gz
otp-9dbccbfa2759e2232cba8b3ffb7c5c44d564ec69.tar.bz2
otp-9dbccbfa2759e2232cba8b3ffb7c5c44d564ec69.zip
erts-hipe: Remove obscuring macros in generated assembler code
No semantic change. Just easier to debug when jumps are spelled out and not obscured by yet another layer of macros.
Diffstat (limited to 'erts/emulator/hipe/hipe_amd64_bifs.m4')
-rw-r--r--erts/emulator/hipe/hipe_amd64_bifs.m410
1 files changed, 7 insertions, 3 deletions
diff --git a/erts/emulator/hipe/hipe_amd64_bifs.m4 b/erts/emulator/hipe/hipe_amd64_bifs.m4
index 0ba763cbea..4d53947998 100644
--- a/erts/emulator/hipe/hipe_amd64_bifs.m4
+++ b/erts/emulator/hipe/hipe_amd64_bifs.m4
@@ -28,9 +28,13 @@ include(`hipe/hipe_amd64_asm.m4')
#define TEST_GOT_EXN cmpq $THE_NON_VALUE, %rax
#endif'
-`#define TEST_GOT_MBUF movq P_MBUF(P), %rdx; testq %rdx, %rdx; jnz 3f; 2:
-#define JOIN3(A,B,C) A##B##C
-#define HANDLE_GOT_MBUF(ARITY) 3: call JOIN3(nbif_,ARITY,_gc_after_bif); jmp 2b'
+define(TEST_GOT_MBUF,`movq P_MBUF(P), %rdx # `TEST_GOT_MBUF'
+ testq %rdx, %rdx
+ jnz 3f
+2:')
+define(HANDLE_GOT_MBUF,`
+3: call nbif_$1_gc_after_bif # `HANDLE_GOT_MBUF'
+ jmp 2b')
/*
* standard_bif_interface_1(nbif_name, cbif_name)