Author: pallavimathew
Date: 2011-04-13 13:41:30 -0400 (Wed, 13 Apr 2011)
New Revision: 3552
Modified:
trunk/osprey/be/lno/sclrze.cxx
Log:
Fix for bug# 763 - do not scalarize MTYPE_M loads.
Approved by Sun.
Modified: trunk/osprey/be/lno/sclrze.cxx
===================================================================
--- trunk/osprey/be/lno/sclrze.cxx 2011-04-13 10:37:18 UTC (rev 3551)
+++ trunk/osprey/be/lno/sclrze.cxx 2011-04-13 17:41:30 UTC (rev 3552)
@@ -197,7 +197,12 @@
WN *load_wn = dep_graph->Get_Wn(sink);
OPCODE opcode = WN_opcode(load_wn);
if (OPCODE_is_load(opcode)) {
- if (OPCODE_operator(opcode) != OPR_LDID) {
+ if (OPCODE_operator(opcode) != OPR_LDID &&
+ // Do not scalarize MTYPE_M loads as this may result in a parent
MTYPE_M store
+ // having a child that is not MTYPE_M and function 'Add_def' may not
be able to
+ // handle such stores during coderep creation. The check here catches
'uses' involving
+ // MTYPE_M whereas the check at the beginning of 'Process_Store'
catches 'defs'.
+ (WN_rtype(load_wn) != MTYPE_M) && (WN_desc(load_wn) != MTYPE_M)) {
ACCESS_ARRAY *load = (ACCESS_ARRAY *)
WN_MAP_Get(LNO_Info_Map,WN_kid0(load_wn));
if (WN_operator(WN_kid0(load_wn)) == OPR_ARRAY &&
------------------------------------------------------------------------------
Forrester Wave Report - Recovery time is now measured in hours and minutes
not days. Key insights are discussed in the 2010 Forrester Wave Report as
part of an in-depth evaluation of disaster recovery service providers.
Forrester found the best-in-class provider in terms of services and vision.
Read this report now! http://p.sf.net/sfu/ibm-webcastpromo
_______________________________________________
Open64-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/open64-devel