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

Reply via email to