Author: yiran Date: 2011-04-20 04:20:21 -0400 (Wed, 20 Apr 2011) New Revision: 3565
Modified: trunk/osprey/be/cg/cflow.cxx Log: If the compare instruction has an operator in memory, it is not possible to evaluate it at compile time. Modified: trunk/osprey/be/cg/cflow.cxx =================================================================== --- trunk/osprey/be/cg/cflow.cxx 2011-04-20 08:18:24 UTC (rev 3564) +++ trunk/osprey/be/cg/cflow.cxx 2011-04-20 08:20:21 UTC (rev 3565) @@ -2686,6 +2686,14 @@ tn1 = BBINFO_condval1(bp); tn2 = BBINFO_condval2(bp); compare_op = BBINFO_compare_op(bp); + +#ifdef TARG_X8664 + /* load execute TOP access memory, so is not possible to be evaluated + * at compile time. */ + if (TOP_is_load_exe(OP_code(compare_op))) + return FALSE; +#endif + #ifdef TARG_LOONGSON /* for loongson, there are some branch instructions with only one operand, such as: "mipsbgez", ------------------------------------------------------------------------------ Benefiting from Server Virtualization: Beyond Initial Workload Consolidation -- Increasing the use of server virtualization is a top priority.Virtualization can reduce costs, simplify management, and improve application availability and disaster protection. Learn more about boosting the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev _______________________________________________ Open64-devel mailing list Open64-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/open64-devel