Hi,
Can a gate keeper review the code changes for compilation errors on IA-64
caused by r3583? Thank you very much.
The first change is to use "INTPTR" for type conversion. Because IA-64 is
64-bit and convert void * to int is illegal.
The second change is to mark some code to be x86 specific. They are added by
r3583.
Index: osprey/be/cg/lra.cxx
===================================================================
--- osprey/be/cg/lra.cxx (revision 3596)
+++ osprey/be/cg/lra.cxx (working copy)
@@ -861,8 +861,8 @@
INT num_conflicts;
if (TN_register_class(tn) != rclass) continue;
if (LR_use_cnt(lr) == 0) continue;
- INT orig_conflicts = (INT)TN_MAP_Get(orig_map, tn);
- INT new_conflicts = (INT)TN_MAP_Get(new_map, tn);
+ INT orig_conflicts = (INTPTR)TN_MAP_Get(orig_map, tn);
+ INT new_conflicts = (INTPTR)TN_MAP_Get(new_map, tn);
if ((orig_conflicts < num_pr) && (new_conflicts < num_pr)) continue;
// Do not count the cases where we do not change.
if (orig_conflicts > new_conflicts)
Index: osprey/be/cg/gra_live.cxx
===================================================================
--- osprey/be/cg/gra_live.cxx (revision 3596)
+++ osprey/be/cg/gra_live.cxx (working copy)
@@ -2451,7 +2451,9 @@
TN *tn = OP_result(op, i);
// Don't rename under the following conditions.
if (TN_is_dedicated(tn) || OP_cond_def(op) ||
+#if defined(TARG_X8664)
TN_is_norename(tn) || OP_res_norename(op) ||
+#endif
OP_same_res(op)) continue;
OP *last_def = (OP *) TN_MAP_Get (op_for_tn, tn);
--
Regards,
Lai Jian-Xin
------------------------------------------------------------------------------
Achieve unprecedented app performance and reliability
What every C/C++ and Fortran developer should know.
Learn how Intel has extended the reach of its next-generation tools
to help boost performance applications - inlcuding clusters.
http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel