From 3b8d200e8d0033ca9d2b8f72a069ea88b95b858b Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 29 Jan 2002 23:05:03 +0100 Subject: [PATCH] i386.h (LIMIT_RELOAD_CLASS): Handle LEGACY_REGS and INDEX_REGS the same as GENERAL_REGS. * config/i386/i386.h (LIMIT_RELOAD_CLASS): Handle LEGACY_REGS and INDEX_REGS the same as GENERAL_REGS. (SECONDARY_OUTPUT_RELOAD_CLASS): Likewise. From-SVN: r49327 --- gcc/ChangeLog | 6 ++++++ gcc/config/i386/i386.h | 6 ++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4f292420f3d..fc8ce5c39cc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2002-01-29 Jakub Jelinek + + * config/i386/i386.h (LIMIT_RELOAD_CLASS): Handle LEGACY_REGS + and INDEX_REGS the same as GENERAL_REGS. + (SECONDARY_OUTPUT_RELOAD_CLASS): Likewise. + 2002-01-29 Neil Booth * tree.c (build_nonstandard_integer_type): Correct prototype. diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h index 25705e6420c..58f65c11908 100644 --- a/gcc/config/i386/i386.h +++ b/gcc/config/i386/i386.h @@ -1456,7 +1456,8 @@ enum reg_class #define LIMIT_RELOAD_CLASS(MODE, CLASS) \ ((MODE) == QImode && !TARGET_64BIT \ - && ((CLASS) == ALL_REGS || (CLASS) == GENERAL_REGS) \ + && ((CLASS) == ALL_REGS || (CLASS) == GENERAL_REGS \ + || (CLASS) == LEGACY_REGS || (CLASS) == INDEX_REGS) \ ? Q_REGS : (CLASS)) /* Given an rtx X being reloaded into a reg required to be @@ -1485,7 +1486,8 @@ enum reg_class pseudo. */ #define SECONDARY_OUTPUT_RELOAD_CLASS(CLASS, MODE, OUT) \ - ((CLASS) == GENERAL_REGS && !TARGET_64BIT && (MODE) == QImode \ + (((CLASS) == GENERAL_REGS || (CLASS) == LEGACY_REGS \ + || (CLASS) == INDEX_REGS) && !TARGET_64BIT && (MODE) == QImode \ ? Q_REGS : NO_REGS) /* Return the maximum number of consecutive registers -- 2.30.2