From: Jan Hubicka Date: Wed, 2 Apr 2003 22:42:59 +0000 (+0200) Subject: re PR inline-asm/8808 (Internal compiler error in extract_constrain_insn_cached) X-Git-Tag: releases/gcc-3.4.0~7510 X-Git-Url: https://gcc.gnu.org/git/?a=commitdiff_plain;h=a67a3220ed2db65ffacde4f4dd91f18d9ff76b0f;p=gcc.git re PR inline-asm/8808 (Internal compiler error in extract_constrain_insn_cached) PR inline-asm/8088 * i386.c (ix86_hard_regno_mode_ok): Return 0 for MMX/SSE registers when MMX/SSE is not available. From-SVN: r65181 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0977704b2ec2..514256844f3b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +Thu Apr 3 00:31:21 CEST 2003 Jan Hubicka + + PR inline-asm/8088 + * i386.c (ix86_hard_regno_mode_ok): Return 0 for MMX/SSE registers + when MMX/SSE is not available. + 2003-04-02 Mike Stump * doc/install.texi (Specific): Update pointers to apple.com. diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 80a280fbcf03..a96c6ecc4362 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -6080,13 +6080,11 @@ legitimate_address_p (mode, addr, strict) that never results in lea, this seems to be easier and correct fix for crash to disable this test. */ } -#if 0 else if (!CONSTANT_ADDRESS_P (disp)) { reason = "displacement is not constant"; goto report_error; } -#endif else if (TARGET_64BIT && !x86_64_sign_extended_value (disp)) { reason = "displacement is out of range"; @@ -14817,9 +14815,10 @@ ix86_hard_regno_mode_ok (regno, mode) if (FP_REGNO_P (regno)) return VALID_FP_MODE_P (mode); if (SSE_REGNO_P (regno)) - return VALID_SSE_REG_MODE (mode); + return (TARGET_SSE ? VALID_SSE_REG_MODE (mode) : 0); if (MMX_REGNO_P (regno)) - return VALID_MMX_REG_MODE (mode) || VALID_MMX_REG_MODE_3DNOW (mode); + return (TARGET_MMX + ? VALID_MMX_REG_MODE (mode) || VALID_MMX_REG_MODE_3DNOW (mode) : 0); /* We handle both integer and floats in the general purpose registers. In future we should be able to handle vector modes as well. */ if (!VALID_INT_MODE_P (mode) && !VALID_FP_MODE_P (mode))