comparison mc-code-ia32.c @ 578:dbde3b869a0f

try to remove code_fix_frame_pointer(); PowerPC fixed.
author kono
date Sun, 15 Jan 2006 19:28:50 +0900
parents 266ded1a8fef
children 74bea4129e15
comparison
equal deleted inserted replaced
577:7e0076617c76 578:dbde3b869a0f
281 #define REG_EBP 6 281 #define REG_EBP 6
282 #define REG_ESP 7 282 #define REG_ESP 7
283 #define is_int_reg(reg) (reg<REG_EBP) 283 #define is_int_reg(reg) (reg<REG_EBP)
284 #define REG_LCREG 8 284 #define REG_LCREG 8
285 #define REG_L 9 285 #define REG_L 9
286 #define REG_fp REG_EBP
286 287
287 #define regv_l(r) (virtual(r==REG_L?REG_ESI:REG_EAX)) 288 #define regv_l(r) (virtual(r==REG_L?REG_ESI:REG_EAX))
288 #define regv_h(r) (virtual(r==REG_L?REG_EDI:REG_EDX)) 289 #define regv_h(r) (virtual(r==REG_L?REG_EDI:REG_EDX))
289 290
290 291
1499 code_frame_pointer(int e3) { 1500 code_frame_pointer(int e3) {
1500 use_int(e3); 1501 use_int(e3);
1501 printf("\tmovl %s,%%ebp\n",register_name(e3,0)); 1502 printf("\tmovl %s,%%ebp\n",register_name(e3,0));
1502 } 1503 }
1503 1504
1505 int
1506 code_frame_pointer_register()
1507 {
1508 return list2(REGISTER,virtual(REG_fp));
1509 }
1504 1510
1505 void 1511 void
1506 code_fix_frame_pointer(int disp_offset) { 1512 code_fix_frame_pointer(int disp_offset) {
1507 printf("\tlea %d(%%ebp),%%ebp\n",disp_offset); 1513 printf("\tlea %d(%%ebp),%%ebp\n",disp_offset);
1508 } 1514 }