summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>2015-10-07 13:47:12 +0000
committerhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>2015-10-07 13:47:12 +0000
commitf305527d2212c63ffcc599b4d0330ee822dd9180 (patch)
treec5bb438da0da4a01d633e77654d41639f71614d5
parentc5b80c2522869e69f09312484bb43a844a8ea819 (diff)
downloadgcc-f305527d2212c63ffcc599b4d0330ee822dd9180.tar.gz
Define x86 CALL_USED_REGISTERS_MASK
Define x86 CALL_USED_REGISTERS_MASK used on x86 CALL_USED_REGISTERS. * config/i386/i386.c (ix86_conditional_register_usage): Use CALL_USED_REGISTERS_MASK. * config/i386/i386.h (CALL_USED_REGISTERS_MASK): New macro. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@228568 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/i386/i386.c4
-rw-r--r--gcc/config/i386/i386.h3
3 files changed, 10 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7d578791196..ea7d4167802 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2015-10-07 H.J. Lu <hongjiu.lu@intel.com>
+ * config/i386/i386.c (ix86_conditional_register_usage): Use
+ CALL_USED_REGISTERS_MASK.
+ * config/i386/i386.h (CALL_USED_REGISTERS_MASK): New macro.
+
+2015-10-07 H.J. Lu <hongjiu.lu@intel.com>
+
PR bootstrap/67385
* configure.ac (gcc_cv_readelf): Check $READELF_FOR_TARGET.
* configure: Regenerated.
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index c44f0af9528..c5ebff5eaaf 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -5583,9 +5583,7 @@ ix86_conditional_register_usage (void)
}
/* See the definition of CALL_USED_REGISTERS in i386.h. */
- c_mask = (TARGET_64BIT_MS_ABI ? (1 << 3)
- : TARGET_64BIT ? (1 << 2)
- : (1 << 1));
+ c_mask = CALL_USED_REGISTERS_MASK (TARGET_64BIT_MS_ABI);
CLEAR_HARD_REG_SET (reg_class_contents[(int)CLOBBERED_REGS]);
diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h
index a24dea544c6..ad174608850 100644
--- a/gcc/config/i386/i386.h
+++ b/gcc/config/i386/i386.h
@@ -1018,6 +1018,9 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
Proper values are computed in TARGET_CONDITIONAL_REGISTER_USAGE. */
+#define CALL_USED_REGISTERS_MASK(IS_64BIT_MS_ABI) \
+ ((IS_64BIT_MS_ABI) ? (1 << 3) : TARGET_64BIT ? (1 << 2) : (1 << 1))
+
#define CALL_USED_REGISTERS \
/*ax,dx,cx,bx,si,di,bp,sp,st,st1,st2,st3,st4,st5,st6,st7*/ \
{ 1, 1, 1, 0, 4, 4, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, \