From: Graham Stott Date: Mon, 7 Aug 2000 11:26:59 +0000 (+0000) Subject: * mn10300.h (PREFERRED_RELOAD_CLASS): Limit memory reloads. X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a7fef47884e8198809c9106c0c06a138db6a6a6d;p=platform%2Fupstream%2Fgcc.git * mn10300.h (PREFERRED_RELOAD_CLASS): Limit memory reloads. From-SVN: r35550 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a25c60c..4427590 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2000-08-07 Graham Stott + + * mn10300.h (PREFERRED_RELOAD_CLASS): Limit memory reloads. + 2000-08-07 Alexandre Oliva * sh.h (EXTRA_CONSTRAINT_Q): Adjust to GNU Coding Standards. diff --git a/gcc/config/mn10300/mn10300.h b/gcc/config/mn10300/mn10300.h index 2e20ee1..78c5902 100644 --- a/gcc/config/mn10300/mn10300.h +++ b/gcc/config/mn10300/mn10300.h @@ -379,9 +379,12 @@ enum reg_class { In general this is just CLASS; but on some machines in some cases it is preferable to use a more restrictive class. */ -#define PREFERRED_RELOAD_CLASS(X,CLASS) \ - (X == stack_pointer_rtx && CLASS != SP_REGS \ - ? ADDRESS_OR_EXTENDED_REGS : CLASS) +#define PREFERRED_RELOAD_CLASS(X,CLASS) \ + ((X) == stack_pointer_rtx && (CLASS) != SP_REGS \ + ? ADDRESS_OR_EXTENDED_REGS \ + : (GET_CODE (X) == MEM \ + ? LIMIT_RELOAD_CLASS (GET_MODE (X), CLASS) \ + : (CLASS))) #define PREFERRED_OUTPUT_RELOAD_CLASS(X,CLASS) \ (X == stack_pointer_rtx && CLASS != SP_REGS \