diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 153770ac329..5fa77591e4a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +Sat Mar 11 23:54:26 2000 Jim Wilson + + * config/ia64/ia64.c (ia64_compute_frame_size): Align size to + STACK_BOUNDARY. + * config/ia64/ia64.h (REGISTER_MOVE_COST): Add missing parentheses. + 2000-03-11 Kaveh R. Ghazi * cppinit.c (no_arg, no_ass, no_dir, no_fil, no_mac, no_pth): diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index 9dee885d3f5..e12fd38de6e 100644 --- a/gcc/config/ia64/ia64.c +++ b/gcc/config/ia64/ia64.c @@ -521,6 +521,10 @@ ia64_compute_frame_size (size) int regno; HARD_REG_SET mask; + /* Reload used to round the frame size to STACK_BOUNDARY. Now we do it + here. */ + size = IA64_STACK_ALIGN (size); + CLEAR_HARD_REG_SET (mask); /* Calculate space needed for general registers. */ diff --git a/gcc/config/ia64/ia64.h b/gcc/config/ia64/ia64.h index 2a18d6edeb1..a5951a5cbb9 100644 --- a/gcc/config/ia64/ia64.h +++ b/gcc/config/ia64/ia64.h @@ -1907,10 +1907,10 @@ do { \ #define REGISTER_MOVE_COST(FROM, TO) \ ((FROM) == BR_REGS && (TO) == BR_REGS ? 8 \ - : ((FROM) == BR_REGS && (TO) != GENERAL_REGS \ - || (TO) == BR_REGS && (FROM) != GENERAL_REGS) ? 6 \ - : ((FROM) == FR_FP_REGS && (TO) == FR_INT_REGS \ - || (FROM) == FR_INT_REGS && (TO) == FR_FP_REGS) ? 4 \ + : (((FROM) == BR_REGS && (TO) != GENERAL_REGS) \ + || ((TO) == BR_REGS && (FROM) != GENERAL_REGS)) ? 6 \ + : (((FROM) == FR_FP_REGS && (TO) == FR_INT_REGS) \ + || ((FROM) == FR_INT_REGS && (TO) == FR_FP_REGS)) ? 4 \ : 2) /* A C expression for the cost of moving data of mode M between a register and