Author: ycwu
Date: 2010-09-07 22:24:23 -0400 (Tue, 07 Sep 2010)
New Revision: 3336
Modified:
trunk/configure
trunk/configure.ac
trunk/osprey/be/cg/cgdriver.cxx
trunk/osprey/be/cg/ebo.cxx
trunk/osprey/be/com/emulate.cxx
trunk/osprey/be/com/wn_lower.cxx
trunk/osprey/be/opt/opt_combine.cxx
trunk/osprey/be/opt/opt_htable.cxx
trunk/osprey/be/opt/opt_project.h
trunk/osprey/be/opt/opt_reasso.cxx
trunk/osprey/common/com/mtypes.cxx
trunk/osprey/common/com/opcode_gen_core.h
trunk/osprey/common/com/wn_simp_code.h
trunk/osprey/libfi/mathlb/mathlb.gmakeinclude
Log:
fixed IA64 compilation bug since revision 3314
this check in enclose some of the x8664 only code with #ifdef macros.
Approved by Jianxin
Modified: trunk/configure
===================================================================
--- trunk/configure 2010-09-07 07:11:58 UTC (rev 3335)
+++ trunk/configure 2010-09-08 02:24:23 UTC (rev 3336)
@@ -1638,7 +1638,11 @@
if test "${BUILD_TARGET}" = "SL"; then
LIBLIST="include libelf"
else
-LIBLIST="include libelf libopenmp libfortran libhugetlbfs libmv libu"
+ if test "${BUILD_TARGET}" = "IA64"; then
+ LIBLIST="include libelf libopenmp libfortran libmv libu"
+ else
+ LIBLIST="include libelf libopenmp libfortran libhugetlbfs libmv libu"
+ fi
fi
ac_config_files="$ac_config_files osprey/targdir_lib/Makefile
osprey/targdir_lib/include/Makefile osprey/targdir_lib/libelf/Makefile
osprey/targdir_lib/libopenmp/Makefile osprey/targdir_lib/libfortran/Makefile
osprey/targdir_lib/libhugetlbfs/Makefile osprey/targdir_lib/libmv/Makefile
osprey/targdir_lib/libu/Makefile"
Modified: trunk/configure.ac
===================================================================
--- trunk/configure.ac 2010-09-07 07:11:58 UTC (rev 3335)
+++ trunk/configure.ac 2010-09-08 02:24:23 UTC (rev 3336)
@@ -350,7 +350,11 @@
if test "${BUILD_TARGET}" = "SL"; then
LIBLIST="include libelf"
else
-LIBLIST="include libelf libopenmp libfortran libhugetlbfs libmv libu"
+ if test "${BUILD_TARGET}" = "IA64"; then
+ LIBLIST="include libelf libopenmp libfortran libmv libu"
+ else
+ LIBLIST="include libelf libopenmp libfortran libhugetlbfs libmv libu"
+ fi
fi
AC_CONFIG_FILES([
Modified: trunk/osprey/be/cg/cgdriver.cxx
===================================================================
--- trunk/osprey/be/cg/cgdriver.cxx 2010-09-07 07:11:58 UTC (rev 3335)
+++ trunk/osprey/be/cg/cgdriver.cxx 2010-09-08 02:24:23 UTC (rev 3336)
@@ -2611,12 +2611,14 @@
" conflicts with -CG:local_sched_alg\n");
}
}
+#ifdef TARG_X8664
if (Is_Target_Orochi()) {
// TODO: add CG_dispatch_schedule set to TRUE once
// we have binutils support
if (CG_loop32 == FALSE)
CG_loop32 = TRUE;
}
+#endif //TARG_X8664
#endif // KEY
} /* CG_Init */
Modified: trunk/osprey/be/cg/ebo.cxx
===================================================================
--- trunk/osprey/be/cg/ebo.cxx 2010-09-07 07:11:58 UTC (rev 3335)
+++ trunk/osprey/be/cg/ebo.cxx 2010-09-08 02:24:23 UTC (rev 3336)
@@ -182,9 +182,11 @@
static void Mark_LRA_Spill_Reference(OP *op, BS **bs, MEM_POOL *pool);
static BOOL Delete_Dead_LRA_Spill(OP *op, BS **bs);
#endif
+#ifdef TARG_X8664
void EBO_swap_subtract_operands();
void EBO_Eliminate_movaps();
BOOL Is_Copy_Instruction(OP *op);
+#endif
/* ===================================================================== */
/* Global Data:
*/
/* ===================================================================== */
@@ -277,8 +279,10 @@
}s;
} EBO_REG_ENTRY;
+#ifdef TARG_X8664
extern void expand_strcmp_bb(BB * call_bb);
void Expand_strcmp(BB *bb);
+#endif
#define EBO_REG_ENTRY_ptr(re) (re.ptr)
#define EBO_REG_ENTRY_def_count(re) (re.s.def_count)
#define EBO_REG_ENTRY_reg_assigned(re) (re.s.reg_assigned)
@@ -3814,12 +3818,14 @@
CFLOW_Optimize(CFLOW_BRANCH | CFLOW_UNREACHABLE, "CFLOW (from ebo)");
#endif
}
+#ifdef TARG_X8664
if (EBO_in_pre || EBO_in_peep)
EBO_swap_subtract_operands();
/* Check for movaps with same source and destination registers and eliminate
them */
if(EBO_in_peep)
EBO_Eliminate_movaps();
+#endif
EBO_Finish();
@@ -4181,6 +4187,7 @@
}
}
+#ifdef TARG_X8664
// TO DO: replace the bb walks in the following 4 functions by using the more
// efficient CG_DEP_Compute_Graph.
@@ -4635,7 +4642,6 @@
}
return FALSE;
}
-#ifdef TARG_X8664
void Expand_strcmp(BB *bb)
{
if(EBO_in_pre && (Is_Target_Orochi() || Is_Target_Barcelona())
Modified: trunk/osprey/be/com/emulate.cxx
===================================================================
--- trunk/osprey/be/com/emulate.cxx 2010-09-07 07:11:58 UTC (rev 3335)
+++ trunk/osprey/be/com/emulate.cxx 2010-09-08 02:24:23 UTC (rev 3336)
@@ -845,6 +845,7 @@
Is_True(MTYPE_is_float(type), ("unexpected type"));
+#ifdef TARG_X8664
if (type != MTYPE_V16C8)
cond = WN_EQ(type,
WN_LdidPreg(type, xN),
@@ -857,7 +858,12 @@
WN_EQ(MTYPE_F8, WN_Unary(OPR_SECONDPART, MTYPE_F8,
WN_LdidPreg(type, xN)), WN_Zerocon(MTYPE_F8)));
}
+#else
+ cond = WN_EQ(type,
+ WN_LdidPreg(type, xN),
+ WN_Zerocon(type));
+#endif
IF = WN_CreateIf(cond, if_then, if_else);
WN_INSERT_BlockLast(block, IF);
}
@@ -2653,8 +2659,10 @@
static WN *em_complex_sqrt_preg(WN *block, TYPE_ID type, PREG_NUM zN_in)
{
PREG_NUM ziN, zN, absN, t1N, t2N, t3N;
+#ifdef TARG_X8664
if (type == MTYPE_V16C8)
type = MTYPE_C8;
+#endif
TYPE_ID rtype = Mtype_complex_to_real(type);
Modified: trunk/osprey/be/com/wn_lower.cxx
===================================================================
--- trunk/osprey/be/com/wn_lower.cxx 2010-09-07 07:11:58 UTC (rev 3335)
+++ trunk/osprey/be/com/wn_lower.cxx 2010-09-08 02:24:23 UTC (rev 3336)
@@ -384,7 +384,7 @@
MTYPE_U8, /* MTYPE_U8 */
MTYPE_F4, /* MTYPE_F4 */
MTYPE_F8, /* MTYPE_F8 */
-#if defined(TARG_I64) || defined(TARG_X8664)
+#if defined(TARG_IA64) || defined(TARG_X8664)
MTYPE_F10, /* MTYPE_F10 */
#else
MTYPE_UNKNOWN, /* MTYPE_F10 */
@@ -401,7 +401,7 @@
,MTYPE_UNKNOWN, /* MTYPE_BS */
MTYPE_UNKNOWN, /* MTYPE_A4 */
MTYPE_UNKNOWN, /* MTYPE_A8 */
-#if defined(TARG_I64) || defined(TARG_X8664)
+#if defined(TARG_IA64) || defined(TARG_X8664)
MTYPE_C10, /* MTYPE_C10 */
#else
MTYPE_UNKNOWN, /* MTYPE_C10 */
@@ -2096,7 +2096,11 @@
*/
TYPE_ID ctype = WN_rtype(tree);
+#ifdef TARG_X8664
if (!MTYPE_is_complex(ctype) && !(ctype == MTYPE_V16C8))
+#else
+ if (!MTYPE_is_complex(ctype))
+#endif
{
*realpart = tree;
*imagpart = NULL;
@@ -2183,7 +2187,11 @@
{
TYPE_ID ltype = WN_rtype(WN_kid0(tree));
+#ifdef TARG_X8664
if (ltype == MTYPE_V16C8 || MTYPE_is_complex(ltype))
+#else
+ if (MTYPE_is_complex(ltype))
+#endif
lower_complex_expr(block, WN_kid0(tree), actions, &rz, &iz);
else
{
@@ -2193,7 +2201,11 @@
}
{
TYPE_ID ltype = WN_rtype(WN_kid1(tree));
+#ifdef TARG_X8664
if (ltype == MTYPE_V16C8 || MTYPE_is_complex(ltype))
+#else
+ if (MTYPE_is_complex(ltype))
+#endif
lower_complex_expr(block, WN_kid1(tree), actions, &rw, &iw);
else
{
@@ -2230,7 +2242,11 @@
{
TYPE_ID ltype = WN_rtype(WN_kid0(tree));
+#ifdef TARG_X8664
if (ltype == MTYPE_V16C8 || MTYPE_is_complex(ltype))
+#else
+ if (MTYPE_is_complex(ltype))
+#endif
lower_complex_expr(block, WN_kid0(tree), actions, &rz, &iz);
else
{
@@ -2240,7 +2256,11 @@
}
{
TYPE_ID ltype = WN_rtype(WN_kid1(tree));
+#ifdef TARG_X8664
if (ltype == MTYPE_V16C8 || MTYPE_is_complex(ltype))
+#else
+ if (MTYPE_is_complex(ltype))
+#endif
lower_complex_expr(block, WN_kid1(tree), actions, &rw, &iw);
else
{
@@ -2279,7 +2299,11 @@
{
TYPE_ID ltype = WN_rtype(WN_kid0(tree));
+#ifdef TARG_X8664
if (ltype == MTYPE_V16C8 || MTYPE_is_complex(ltype))
+#else
+ if (MTYPE_is_complex(ltype))
+#endif
lower_complex_expr(block, WN_kid0(tree), actions, &rz, &iz);
else
{
@@ -2289,7 +2313,11 @@
}
{
TYPE_ID ltype = WN_rtype(WN_kid1(tree));
+#ifdef TARG_X8664
if (ltype == MTYPE_V16C8 || MTYPE_is_complex(ltype))
+#else
+ if (MTYPE_is_complex(ltype))
+#endif
lower_complex_expr(block, WN_kid1(tree), actions, &rw, &iw);
else
{
@@ -2604,7 +2632,11 @@
{
TYPE_ID ltype = WN_rtype(WN_kid0(tree));
+#ifdef TARG_X8664
if (ltype == MTYPE_V16C8 || MTYPE_is_complex(ltype))
+#else
+ if (MTYPE_is_complex(ltype))
+#endif
lower_complex_expr(block, WN_kid0(tree), actions, &rz, &iz);
else
{
@@ -2614,7 +2646,11 @@
}
{
TYPE_ID ltype = WN_rtype(WN_kid1(tree));
+#ifdef TARG_X8664
if (ltype == MTYPE_V16C8 || MTYPE_is_complex(ltype))
+#else
+ if (MTYPE_is_complex(ltype))
+#endif
lower_complex_expr(block, WN_kid1(tree), actions, &rw, &iw);
else
{
@@ -2850,6 +2886,7 @@
WN_Delete(tree);
}
break;
+#ifdef TARG_X8664
case INTRN_V16C8MPY_ADDSUB:
{
lower_complex_expr(block, WN_CreateExp2(OPR_MPY, MTYPE_V16C8,
MTYPE_V,
@@ -2857,6 +2894,7 @@
realpart, imagpart);
}
break;
+#endif
//*****************************************************************
//
@@ -5903,6 +5941,7 @@
tree = lower_emulation(block, tree, actions, intrinsic_lowered);
tree = WN_Simplify_Rebuild_Expr_Tree(tree, alias_manager);
+#ifdef TARG_X8664
if (Action(LOWER_COMPLEX))
{
OPCODE opcode = WN_opcode(tree);
@@ -5911,6 +5950,7 @@
if (OPCODE_desc(opcode) == MTYPE_C8)
WN_set_desc(tree, MTYPE_V16C8);
}
+#endif
kids_lowered = TRUE;
}
@@ -6352,8 +6392,8 @@
if (WN_rtype(WN_kid0(tree)) == MTYPE_C8)
WN_set_rtype(WN_kid0(tree), MTYPE_V16C8);
}
+#endif
}
-#endif
break;
case OPR_COMPLEX:
if (Action(LOWER_COMPLEX) && MTYPE_is_complex(WN_desc(tree)))
@@ -6361,8 +6401,10 @@
ST *st;
TYPE_ID type = WN_rtype(tree);
TYPE_ID ftype = Mtype_complex_to_real(type);
+#ifdef TARG_X8664
if ( type == MTYPE_C8)
type = MTYPE_V16C8;
+#endif
PREG_NUM r, i;
st = New_ST(CURRENT_SYMTAB);
ST_Init (st,
@@ -6383,7 +6425,10 @@
break;
case OPR_EQ:
if (Action(LOWER_COMPLEX) && (MTYPE_is_complex(WN_desc(tree))
- || MTYPE_V16C8 == WN_desc(tree)))
+#ifdef TARG_X8664
+ || MTYPE_V16C8 == WN_desc(tree)
+#endif
+ ))
{
/*
* x == y
@@ -6404,7 +6449,10 @@
case OPR_NE:
if (Action(LOWER_COMPLEX) && (MTYPE_is_complex(WN_desc(tree))
- || MTYPE_V16C8 == WN_desc(tree)))
+#ifdef TARG_X8664
+ || MTYPE_V16C8 == WN_desc(tree)
+#endif
+ ))
{
/*
* x != y
@@ -7052,7 +7100,6 @@
return tree;
}
-
/* ====================================================================
*
* static TY_IDX coerceTY(TY_IDX type, TYPE_ID btype)
@@ -8176,6 +8223,7 @@
imagexp_copy = WN_LdidPreg(realTY, imagexpN);
}
+#ifdef TARG_X8664
if (ST_class(WN_st(tree)) == CLASS_PREG && WN_desc(tree)== MTYPE_C8
&& Is_Target_SSE3() && Vcast_Complex &&
!(ST_sclass(WN_st(tree)) == SCLASS_REG &&
@@ -8198,7 +8246,9 @@
wn = WN_Stid(type, offset, WN_st(tree), ty,
WN_LdidPreg(type, zN));
return wn;
- } else {
+ } else
+#endif
+ {
wn = WN_Stid(realTY,
offset,
coerceST(WN_st(tree), realTY),
@@ -10419,7 +10469,7 @@
else
#endif
{
-//#if defined(TARG_X8664)
+#if defined(TARG_X8664)
// if (Is_Target_SSE3() && Vcast_Complex)
// {
if (WN_rtype(wn) == MTYPE_V16C8)
@@ -10427,7 +10477,7 @@
if (WN_desc(wn) == MTYPE_V16C8)
WN_set_desc(wn, MTYPE_C8);
// }
-//#endif
+#endif
lower_complex_expr(block, wn, actions, realpart, imagpart);
}
}
@@ -10610,11 +10660,13 @@
call = lower_intrinsic_call(block, call, actions);
WN_INSERT_BlockLast(block, call);
+#ifdef TARG_X8664
if (complex_mtyp == MTYPE_C8 && Is_Target_SSE3() && Vcast_Complex)
{
complex_mtyp = MTYPE_V16C8;
complex_ty = MTYPE_To_TY(complex_mtyp);
}
+#endif
WN *ldid = WN_Ldid(complex_mtyp, 0, return_sincos, complex_ty);
return lower_expr(block, ldid, actions);
}
Modified: trunk/osprey/be/opt/opt_combine.cxx
===================================================================
--- trunk/osprey/be/opt/opt_combine.cxx 2010-09-07 07:11:58 UTC (rev 3335)
+++ trunk/osprey/be/opt/opt_combine.cxx 2010-09-08 02:24:23 UTC (rev 3336)
@@ -344,6 +344,7 @@
return FALSE;
}
+#ifdef TARG_X8664
static TYPE_ID unify_recip_mpy_div_rtype(TYPE_ID dividend, TYPE_ID divisor)
{
if (dividend == MTYPE_V16C8 || divisor == MTYPE_V16C8)
@@ -351,6 +352,7 @@
else
return dividend;
}
+#endif
// ====================================================================
// handle the MPY operator
// ====================================================================
@@ -377,10 +379,15 @@
// Transform: MPY into DIV
// a RECIP a b
// b
+#ifdef TARG_X8664
TYPE_ID rtype = unify_recip_mpy_div_rtype(OPCODE_rtype(kid0_opc),
OPCODE_rtype(kid1_opc));
const OPCODE div_opc = OPCODE_make_op(OPR_DIV,
rtype, OPCODE_desc(kid1_opc) );
+#else
+ const OPCODE div_opc = OPCODE_make_op(OPR_DIV,
+ OPCODE_rtype(kid1_opc),OPCODE_desc(kid1_opc) );
+#endif
WN *div = WN_CreateExp2(div_opc, WN_kid0(old_wn), WN_kid0(kid1));
*new_wn = div;
return TRUE;
@@ -390,10 +397,16 @@
// Transform: MPY into DIV
// RECIP b b a
// a
+#ifdef TARG_X8664
TYPE_ID rtype = unify_recip_mpy_div_rtype(OPCODE_rtype(kid0_opc),
OPCODE_rtype(kid1_opc));
const OPCODE div_opc = OPCODE_make_op(OPR_DIV,
rtype,OPCODE_desc(kid0_opc) );
+#else
+ const OPCODE div_opc = OPCODE_make_op(OPR_DIV,
+ OPCODE_rtype(kid0_opc),OPCODE_desc(kid0_opc) );
+
+#endif
WN *div = WN_CreateExp2(div_opc, WN_kid1(old_wn), WN_kid0(kid0));
*new_wn = div;
return TRUE;
Modified: trunk/osprey/be/opt/opt_htable.cxx
===================================================================
--- trunk/osprey/be/opt/opt_htable.cxx 2010-09-07 07:11:58 UTC (rev 3335)
+++ trunk/osprey/be/opt/opt_htable.cxx 2010-09-08 02:24:23 UTC (rev 3336)
@@ -2829,7 +2829,9 @@
case MTYPE_FQ:
case MTYPE_C4:
case MTYPE_C8:
+#ifdef TARG_X8664
case MTYPE_V16C8:
+#endif
case MTYPE_CQ:
case MTYPE_F16:
case MTYPE_C16:
Modified: trunk/osprey/be/opt/opt_project.h
===================================================================
--- trunk/osprey/be/opt/opt_project.h 2010-09-07 07:11:58 UTC (rev 3335)
+++ trunk/osprey/be/opt/opt_project.h 2010-09-08 02:24:23 UTC (rev 3336)
@@ -194,7 +194,11 @@
inline BOOL
Projectable_operation(const CODEREP *const cr)
{
+#ifdef TARG_X8664
return (Projectable_operation(cr->Op()) || OPCODE_rtype(cr->Op()) ==
MTYPE_V16C8 ||
+#else
+ return (Projectable_operation(cr->Op()) ||
+#endif
(OPCODE_operator(cr->Op()) == OPR_INTRINSIC_OP &&
Sin_cos_intrinsic((INTRINSIC) cr->Intrinsic())));
}
Modified: trunk/osprey/be/opt/opt_reasso.cxx
===================================================================
--- trunk/osprey/be/opt/opt_reasso.cxx 2010-09-07 07:11:58 UTC (rev 3335)
+++ trunk/osprey/be/opt/opt_reasso.cxx 2010-09-08 02:24:23 UTC (rev 3336)
@@ -2325,9 +2325,9 @@
if (
#ifdef TARG_X8664
WN_desc(wn) != MTYPE_V16F8
- && WN_desc(wn) != MTYPE_V16F4
+ && WN_desc(wn) != MTYPE_V16F4 &&
#endif
- && WN_desc(wn) != MTYPE_F8
+ WN_desc(wn) != MTYPE_F8
&& WN_desc(wn) != MTYPE_F4)
continue;
if(whirlmap.find(WN_ver(wn))
Modified: trunk/osprey/common/com/mtypes.cxx
===================================================================
--- trunk/osprey/common/com/mtypes.cxx 2010-09-07 07:11:58 UTC (rev 3335)
+++ trunk/osprey/common/com/mtypes.cxx 2010-09-08 02:24:23 UTC (rev 3336)
@@ -132,8 +132,8 @@
{ MTYPE_M8I2, 64,64,64,8, 8,8, 0, 1, 0,
"M8I2",MTYPE_CLASS_INTEGER|MTYPE_CLASS_MVECTOR,8, MTYPE_M8I2 },
{ MTYPE_M8I4, 64,64,64,8, 8,8, 0, 1, 0,
"M8I4",MTYPE_CLASS_INTEGER|MTYPE_CLASS_MVECTOR,8, MTYPE_M8I4 },
{ MTYPE_M8F4, 64,64,64,8, 8,8, 0, 1, 0,
"M8F4",MTYPE_CLASS_FLOAT|MTYPE_CLASS_MVECTOR,8, MTYPE_M8F4 },
- { MTYPE_V32C4, 256,256,256,32, 32,32, 0, 1, 0,
"V32C4",MTYPE_CLASS_COMPLEX_FLOAT|MTYPE_CLASS_AVECTOR,32, MTYPE_V32C4 },
- { MTYPE_V32C8, 256,256,256,32, 32,32, 0, 1, 0,
"V32C8",MTYPE_CLASS_COMPLEX_FLOAT|MTYPE_CLASS_AVECTOR,32, MTYPE_V32C8 },
+ { MTYPE_V32C4, 256,256,256,32, 32,32, 0, 1, 0,
"V32C4",MTYPE_CLASS_FLOAT|MTYPE_CLASS_AVECTOR,32, MTYPE_V32C4 },
+ { MTYPE_V32C8, 256,256,256,32, 32,32, 0, 1, 0,
"V32C8",MTYPE_CLASS_FLOAT|MTYPE_CLASS_AVECTOR,32, MTYPE_V32C8 },
{ MTYPE_V32I1, 256,256,256,32, 32,32, 0, 1, 0,
"V32I1",MTYPE_CLASS_INTEGER|MTYPE_CLASS_AVECTOR,32, MTYPE_V32I1 },
{ MTYPE_V32I2, 256,256,256,32, 32,32, 0, 1, 0,
"V32I2",MTYPE_CLASS_INTEGER|MTYPE_CLASS_AVECTOR,32, MTYPE_V32I2 },
{ MTYPE_V32I4, 256,256,256,32, 32,32, 0, 1, 0,
"V32I4",MTYPE_CLASS_INTEGER|MTYPE_CLASS_AVECTOR,32, MTYPE_V32I4 },
Modified: trunk/osprey/common/com/opcode_gen_core.h
===================================================================
--- trunk/osprey/common/com/opcode_gen_core.h 2010-09-07 07:11:58 UTC (rev
3335)
+++ trunk/osprey/common/com/opcode_gen_core.h 2010-09-08 02:24:23 UTC (rev
3336)
@@ -961,7 +961,6 @@
OPC_I4F16EQ = OPR_EQ + RTYPE(MTYPE_I4) + DESC(MTYPE_F16),
OPC_I4C4EQ = OPR_EQ + RTYPE(MTYPE_I4) + DESC(MTYPE_C4),
OPC_I4C8EQ = OPR_EQ + RTYPE(MTYPE_I4) + DESC(MTYPE_C8),
- OPC_I4V18C8EQ = OPR_EQ + RTYPE(MTYPE_I4) + DESC(MTYPE_V16C8),
OPC_I4CQEQ = OPR_EQ + RTYPE(MTYPE_I4) + DESC(MTYPE_CQ),
OPC_I4A4EQ = OPR_EQ + RTYPE(MTYPE_I4) + DESC(MTYPE_A4),
OPC_I4A8EQ = OPR_EQ + RTYPE(MTYPE_I4) + DESC(MTYPE_A8),
@@ -971,6 +970,7 @@
OPC_I4I16EQ = OPR_EQ + RTYPE(MTYPE_I4) + DESC(MTYPE_I16),
OPC_I4U16EQ = OPR_EQ + RTYPE(MTYPE_I4) + DESC(MTYPE_U16),
#else
+ OPC_I4V16C8EQ = OPR_EQ + RTYPE(MTYPE_I4) + DESC(MTYPE_V16C8),
OPC_V16I4V16F4EQ = OPR_EQ + RTYPE(MTYPE_V16I4) + DESC(MTYPE_V16F4),
OPC_V16I8V16F8EQ = OPR_EQ + RTYPE(MTYPE_V16I8) + DESC(MTYPE_V16F8),
#endif /* TARG_X8664 */
Modified: trunk/osprey/common/com/wn_simp_code.h
===================================================================
--- trunk/osprey/common/com/wn_simp_code.h 2010-09-07 07:11:58 UTC (rev
3335)
+++ trunk/osprey/common/com/wn_simp_code.h 2010-09-08 02:24:23 UTC (rev
3336)
@@ -274,7 +274,9 @@
(rtype == MTYPE_F10 && tcon_type == MTYPE_C10) ||
#endif
(rtype == MTYPE_F8 && tcon_type == MTYPE_C8) ||
+#ifdef TARG_X8664
(rtype == MTYPE_F8 && tcon_type == MTYPE_V16C8) ||
+#endif
(rtype == MTYPE_F4 && tcon_type == MTYPE_C4))
return TRUE;
@@ -411,7 +413,12 @@
return c;
}
- else if (rtype == MTYPE_F8 && (tcon_type == MTYPE_C8 || tcon_type ==
MTYPE_V16C8))
+ else if (rtype == MTYPE_F8 && (tcon_type == MTYPE_C8
+#ifdef TARG_X8664
+ || tcon_type == MTYPE_V16C8))
+#else
+ ))
+#endif
{
TCON c;
if (SIMPNODE_load_offset (x) == 0)
@@ -463,7 +470,12 @@
return c;
}
- else if (rtype == MTYPE_F8 && (tcon_type == MTYPE_C8 || tcon_type ==
MTYPE_V16C8))
+ else if (rtype == MTYPE_F8 && (tcon_type == MTYPE_C8
+#ifdef TARG_X8664
+ || tcon_type == MTYPE_V16C8))
+#else
+ ))
+#endif
{
TCON c;
if (ofst == 0)
Modified: trunk/osprey/libfi/mathlb/mathlb.gmakeinclude
===================================================================
--- trunk/osprey/libfi/mathlb/mathlb.gmakeinclude 2010-09-07 07:11:58 UTC
(rev 3335)
+++ trunk/osprey/libfi/mathlb/mathlb.gmakeinclude 2010-09-08 02:24:23 UTC
(rev 3336)
@@ -81,12 +81,14 @@
ieee_exponent_i2.c \
ieee_exponent_n.c \
ieee_exponent_r.c \
- ieee_int.c
-CFILES += \
- ieee_module_support.c \
+ ieee_int.c \
ieee_next_after.c \
iso_c_binding_support.c
+ifneq ($(BUILD_TARGET), IA64)
CFILES += \
+ ieee_module_support.c
+endif
+CFILES += \
ilen.c \
itoi.c \
nabs.c \
------------------------------------------------------------------------------
This SF.net Dev2Dev email is sponsored by:
Show off your parallel programming skills.
Enter the Intel(R) Threading Challenge 2010.
http://p.sf.net/sfu/intel-thread-sfd
_______________________________________________
Open64-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/open64-devel