Here is the patch,
1. the first one used #if defined to remove some code that specific in
X8664 and loogson, not in IA64.
2. the second one , in IA64, _wn_to_val_num_map->Get_val((POINTER)
wn_cond) return a *void type, it must convert to a type INTPTR before
convert to IF_CMP_VAL(actually UINT32)
Index: osprey/be/cg/cgemit.cxx
===================================================================
--- osprey/be/cg/cgemit.cxx (revision 3624)
+++ osprey/be/cg/cgemit.cxx (working copy)
@@ -4864,8 +4864,10 @@
// alt-entry
if ( Assembly ) {
fprintf ( Asm_File, "\t%s\t%s\n", AS_AENT,
ST_name(entry_sym)); // KEY
+#if defined(TARG_X8664) || defined(TARG_LOONGSON)
if (CG_p2align != 0)
fputs ("\t.p2align 5,,\n", Asm_File);
+#endif
Print_Label (Asm_File, entry_sym, 0 );
}
EMT_Put_Elf_Symbol (entry_sym);
Index: osprey/be/opt/opt_proactive.cxx
===================================================================
--- osprey/be/opt/opt_proactive.cxx (revision 3624)
+++ osprey/be/opt/opt_proactive.cxx (working copy)
@@ -10357,7 +10357,7 @@
UINT32 key;
STACK<WN *> * stk;
- IF_CMP_VAL ret_val = (IF_CMP_VAL)
_wn_to_val_num_map->Get_val((POINTER) wn_cond);
+ IF_CMP_VAL ret_val = (IF_CMP_VAL)(INTPTR)
_wn_to_val_num_map->Get_val((POINTER) wn_cond);
if (ret_val) {
*val = ((*val) << MAX_IF_CMP_BITS) + ret_val;
return;
@@ -10373,7 +10373,7 @@
for (int i = 0; i < stk->Elements(); i++) {
WN * wn_iter = stk->Top_nth(i);
if ((wn_cond == wn_iter) || (WN_Simp_Compare_Trees(wn_cond,
wn_iter) == 0)) {
- ret_val = (IF_CMP_VAL) _wn_to_val_num_map->Get_val((POINTER) wn_iter);
+ ret_val = (IF_CMP_VAL)(INTPTR)
_wn_to_val_num_map->Get_val((POINTER) wn_iter);
break;
}
}
--
yongchong
------------------------------------------------------------------------------
vRanger cuts backup time in half-while increasing security.
With the market-leading solution for virtual backup and recovery,
you get blazing-fast, flexible, and affordable data protection.
Download your free trial now.
http://p.sf.net/sfu/quest-d2dcopy1
_______________________________________________
Open64-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/open64-devel