Hello All:

A gentle reminder for review of bug fix ID 784.

Thanks & Regards
Ajit

From: Agarwal, Ajit
Sent: Friday, October 14, 2011 5:08 PM
To: 'Open64-devel@lists.sourceforge.net'
Cc: Lai, Michael
Subject: Code review for bug fix 784

Hello All:

Could gatekeepers approve this patch for the fix bug Id 784.

Following file is modified.

Osprey/be/opt/opt_emit_template.h

The problem is related to ILOAD being assigned rtype = MTYPE_U4 and Desc = 
MTYPE_I8.
Setting of rtype and desc to child of ASM_Input which is ILOAD at function 
Gen_exp_wn
For the case OPR_ASM_INPUT. This is happening because at whirl generation 
following
Whirl node has been set.

ASM_INPUTS
        U8U8LDID 0 <2,2,stat> T<57,anon_ptr.,8>
       I8I8ILOAD 0 T<55,kstat,8> T<57,anon_ptr.,8> <field_id:2>
      U4I8CVT

Because of U4I8 type conversion rtype is set as MTYPE_U4 and desc is set as 
MTYPE_I8.

Changes are made to remain the same rtype and desc for ILOAD if CVT is there 
with U4 and I8.
We can't have valid opcode U4I8ILOAD by checking the valid opcode by using 
Is_Valid_Opcode_parts.

I have checked the assembly file gcc output and opencc output is correct.

Index: osprey/be/opt/opt_emit_template.h
===================================================================
--- osprey/be/opt/opt_emit_template.h   (revision 3763)
+++ osprey/be/opt/opt_emit_template.h   (working copy)
@@ -393,8 +393,12 @@
               else if (
                       ! MTYPE_is_float(exp->Asm_input_rtype()) &&
                       exp->Asm_input_rtype() != exp->Asm_input_dsctype()) {
-                WN_set_rtype(WN_kid(wn, i), exp->Asm_input_rtype());
-                WN_set_desc(WN_kid(wn, i), exp->Asm_input_dsctype());
+                   if(Is_Valid_Opcode_Parts(WN_operator(WN_kid(wn, i)),
+                      exp->Asm_input_rtype(),exp->Asm_input_dsctype()))
+                   {
+                     WN_set_rtype(WN_kid(wn, i), exp->Asm_input_rtype());
+                     WN_set_desc(WN_kid(wn, i), exp->Asm_input_dsctype());
+                   }
               }
             }
             else{

Thanks & Regards
Ajit
AMD(open source compiler Engineering)


------------------------------------------------------------------------------
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-d2d-oct
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to