re PR target/27696 (g++.dg/other/i386-2.C ICEs on the mainline on x86_64)

gcc/
	PR target/27696
	* config/i386/i386.c (ix86_expand_builtin): Use
	gen_sse3_monitor64 for TARGET_64BIT.

testsuite/gcc/
	PR target/27696
	* gcc.target/i386/pr27696.c: New.

From-SVN: r114012
This commit is contained in:
Kazu Hirata 2006-05-23 04:52:19 +00:00 committed by Kazu Hirata
parent 1a1a5f4b25
commit 546be53558
4 changed files with 27 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2006-05-23 Kazu Hirata <kazu@codesourcery.com>
PR target/27696
* config/i386/i386.c (ix86_expand_builtin): Use
gen_sse3_monitor64 for TARGET_64BIT.
2006-05-22 Kenneth Zadeck <zadeck@naturalbridge.com>
PR rtl-optimization/26375

View File

@ -16151,12 +16151,15 @@ ix86_expand_builtin (tree exp, rtx target, rtx subtarget ATTRIBUTE_UNUSED,
op1 = expand_normal (arg1);
op2 = expand_normal (arg2);
if (!REG_P (op0))
op0 = copy_to_mode_reg (SImode, op0);
op0 = copy_to_mode_reg (Pmode, op0);
if (!REG_P (op1))
op1 = copy_to_mode_reg (SImode, op1);
if (!REG_P (op2))
op2 = copy_to_mode_reg (SImode, op2);
emit_insn (gen_sse3_monitor (op0, op1, op2));
if (!TARGET_64BIT)
emit_insn (gen_sse3_monitor (op0, op1, op2));
else
emit_insn (gen_sse3_monitor64 (op0, op1, op2));
return 0;
case IX86_BUILTIN_MWAIT:

View File

@ -1,3 +1,8 @@
2006-05-23 Kazu Hirata <kazu@codesourcery.com>
PR target/27696
* gcc.target/i386/pr27696.c: New.
2006-05-22 Janis Johnson <janis187@us.ibm.com>
* gcc.dg/vmx/pr27006.c: Remove dg-do directive; use default.

View File

@ -0,0 +1,11 @@
/* PR target/27696
The testcase below uses to trigger an ICE. */
/* { dg-do compile } */
/* { dg-options "-msse3" } */
void
foo (void const * P, unsigned int E, unsigned int H)
{
__builtin_ia32_monitor (P, E, H);
}