History

FIX:Revert commit 3f05d88d5bda06b40280710089bd3ede3a8fdaa0

The function should to be saved to stack in some cases (fastcall on i386, struct argument on arm etc.). But I neglected. So I revert this commit.

Pursuer committed 7 years ago

Commit ecb90de1 parent 8482f9e3 files · +3 −3Browse files

Unified · Split

3 files
  1. arm-gen.c +1 −1
  2. arm64-gen.c +1 −1
  3. i386-gen.c +1 −1
arm-gen.c+1−1
@@ -1187,7 +1187,7 @@ again: · 1186 unmodified lines
11871187
11881188 /* Manually free remaining registers since next parameters are loaded
11891189 * manually, without the help of gv(int). */
1190− save_regs(nb_args+1);
1190+ save_regs(nb_args);
11911191
11921192 if(todo) {
11931193 o(0xE8BD0000|todo); /* pop {todo} */
arm64-gen.c+1−1
@@ -948,7 +948,7 @@ ST_FUNC void gfunc_call(int nb_args) · 947 unmodified lines
948948 vswap();
949949 }
950950
951− save_regs(1);
951+ save_regs(0);
952952 arm64_gen_bl_or_b(0);
953953 --vtop;
954954 if (stack)
i386-gen.c+1−1
@@ -475,7 +475,7 @@ ST_FUNC void gfunc_call(int nb_args) · 474 unmodified lines
475475 }
476476 vtop--;
477477 }
478− save_regs(1); /* save used temporary registers */
478+ save_regs(0); /* save used temporary registers */
479479 func_sym = vtop->type.ref;
480480 func_call = func_sym->f.func_call;
481481 /* fast call case */

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t