Please open the followed url to find the Details. Thx very much.
https://bugs.open64.net/show_bug.cgi?id=872
This patch has gone through SL’s regressiontest.
Index: osprey/be/opt/opt_cfg.cxx
===================================================================
--- osprey/be/opt/opt_cfg.cxx (revision 3739)
+++ osprey/be/opt/opt_cfg.cxx (working copy)
@@ -3100,7 +3100,23 @@
*ends_bb = END_BREAK;
break;
- case OPR_FALSEBR:
+ case OPR_ZDLBR:
+ label_bb = Get_bb_from_label(WN_label_number(wn));
+ if (label_bb == NULL) {
+ label_bb = Create_bb();
+ // the _current_bb needs to be in the label map
+ Append_label_map(WN_label_number(wn), label_bb);
+ }
+
+ Connect_predsucc(_current_bb, label_bb);
+ Append_wn_in(_current_bb, wn);
+ _current_bb->Set_kind(BB_LOGIF);
+
+ if (ends_bb)
+ *ends_bb = END_FALLTHRU;
+ break;
+
+ case OPR_FALSEBR:
case OPR_TRUEBR:
label_bb = Get_bb_from_label( WN_label_number(wn) );
if (label_bb == NULL) {
-----Original Message-----
From: bugzilla-dae...@open64.net [mailto:bugzilla-dae...@open64.net]
Sent: Wednesday, September 21, 2011 10:49 AM
To: shenr...@gmail.com
Subject: [Bug 872] ZDL-- Error loop body
https://bugs.open64.net/show_bug.cgi?id=872
Gang, Yu <yugang...@gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |yugang...@gmail.com
--- Comment #2 from Gang, Yu <yugang...@gmail.com> 2011-09-20 22:49:08 EDT ---
I have an investigation for this bug under ITANIUM(a potential ZDL target)
platform. Yes, it does also exists in ITANIUM.
a cutted case:
int main()
{
short var_out;
int iteration;
int L_num = 8000;
int L_denom = 4000;
for(iteration=0;iteration<16;iteration++)
{
L_num = L_num - 4000;
}
printf("L_num: %x\n", L_num);
}
the command:
$TOOLROOT/bin/opencc -S -show -keep -WOPT:zdl zrf.c -Wb,-tt25:0x10000
the dump shows:
at RVI_phase2:
---- BB3 (RPO 3) (Lab2050) (GOTO) (e) LINE 0 (call) (rid_id:0) (flag:87)
Preds:2
Succs:4
Fallthrough: 4
Next : BB4
Prev : BB2
dom_dfs_id(0), dom_dfs_last(0)
pdom_dfs_id(0), pdom_dfs_last(0)
LABEL L2050 0 {line: 0/0} {freq: 0, ln: 0, col: 0}
LOOP_INFO 0 1 1
U8U8LDID 264 <st 1281> T<9,.predef_U8,4>
I8INTCONST 16 (0x10)
END_LOOP_INFO
COMMENT <st 3586> # {line: 0/0} {freq: 0, ln: 0, col: 0}
COMMENT <st 3842> # {line: 1/8} {freq: 0, ln: 8, col: 0}
U8U8LDID 265 <st 1281> T<9,.predef_U8,4>
I8INTCONST -4000 (0xfffffffffffff060)
I8ADD
U8STID 265 <st 1281> T<9,.predef_U8,4> {line: 1/10} {freq: 0, ln: 10, col: 0}
COMMENT <st 4098> # {line: 1/8} {freq: 0, ln: 8, col: 0}
ZDLBR L2050 {line: 0/0} {freq: 0, ln: 0, col: 0}
COMMENT <st 4354> # {line: 0/0} {freq: 0, ln: 0, col: 0}
COMMENT <st 4610> # {line: 1/8} {freq: 0, ln: 8, col: 0}
U8LDA 0 <st 5633> T<33,anon_ptr.,8>
U8PARM 2 T<29,anon_ptr.,8> # by_value
U8U8LDID 265 <st 1281> T<9,.predef_U8,4>
I4PARM 2 T<4,.predef_I4,4> # by_value
VCALL 126 <st 5377> # flags 0x7e {line: 1/13} {freq: 0, ln: 13, col: 0}
ZDLBR does not split the BB, so it is a bug
--
Configure bugmail: https://bugs.open64.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You reported the bug.
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel