[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Dotgnu-pnet-commits] CVS: pnet/codegen cg_nodes.tc,1.66,1.67 cg_lvalue.
From: |
Gopal.V <address@hidden> |
Subject: |
[Dotgnu-pnet-commits] CVS: pnet/codegen cg_nodes.tc,1.66,1.67 cg_lvalue.tc,1.16,1.17 |
Date: |
Sun, 03 Nov 2002 03:09:26 -0500 |
Update of /cvsroot/dotgnu-pnet/pnet/codegen
In directory subversions:/tmp/cvs-serv29417/codegen
Modified Files:
cg_nodes.tc cg_lvalue.tc
Log Message:
BaseAccess for properties
Index: cg_nodes.tc
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/codegen/cg_nodes.tc,v
retrieving revision 1.66
retrieving revision 1.67
diff -C2 -r1.66 -r1.67
*** cg_nodes.tc 20 Oct 2002 20:38:28 -0000 1.66
--- cg_nodes.tc 3 Nov 2002 08:09:24 -0000 1.67
***************
*** 551,558 ****
--- 551,560 ----
ILField *field;
%nocreate ILUInt32 tempVar = {0};
+ %nocreate ILUInt32 baseCall = {0};
}
%node ILNode_StaticProperty ILNode_LValueNoRef =
{
ILProperty *property;
+ %nocreate ILUInt32 baseCall = {0};
}
%node ILNode_MemberProperty ILNode_LValueNoRef =
***************
*** 561,564 ****
--- 563,567 ----
ILProperty *property;
%nocreate ILUInt32 tempVar = {0};
+ %nocreate ILUInt32 baseCall = {0};
}
%node ILNode_ArrayAccess ILNode_LValue =
Index: cg_lvalue.tc
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/codegen/cg_lvalue.tc,v
retrieving revision 1.16
retrieving revision 1.17
diff -C2 -r1.16 -r1.17
*** cg_lvalue.tc 19 Sep 2002 04:32:11 -0000 1.16
--- cg_lvalue.tc 3 Nov 2002 08:09:24 -0000 1.17
***************
*** 315,319 ****
unsigned tempVar = ILGenPrepareForThisAccess
(info, node->expr, ILProperty_Owner(node->property), 0);
! ILGenCallMethod(info, getter);
ILGenFreeThisVar(info, tempVar);
return ILTypeToMachineType(ILTypeGetReturn(signature));
--- 315,326 ----
unsigned tempVar = ILGenPrepareForThisAccess
(info, node->expr, ILProperty_Owner(node->property), 0);
! if(node->baseCall)
! {
! ILGenCallByMethod(info, getter);
! }
! else
! {
! ILGenCallMethod(info,getter);
! }
ILGenFreeThisVar(info, tempVar);
return ILTypeToMachineType(ILTypeGetReturn(signature));
***************
*** 712,716 ****
ILGenSimple(info, IL_OP_DUP);
ILGenAdjust(info, 1);
! ILGenCallMethod(info, getter);
/* Store the current value into a temporary local */
--- 719,730 ----
ILGenSimple(info, IL_OP_DUP);
ILGenAdjust(info, 1);
! if(node->baseCall)
! {
! ILGenCallByMethod(info, getter);
! }
! else
! {
! ILGenCallMethod(info, getter);
! }
/* Store the current value into a temporary local */
***************
*** 731,735 ****
/* Load the current value from the property */
! ILGenCallMethod(info, getter);
/* We don't need to reload a previous value in "Store" */
--- 745,756 ----
/* Load the current value from the property */
! if(node->baseCall)
! {
! ILGenCallByMethod(info, getter);
! }
! else
! {
! ILGenCallMethod(info, getter);
! }
/* We don't need to reload a previous value in "Store" */
***************
*** 1234,1240 ****
ILGenStoreLocal(info, temp);
ILGenExtend(info, 1);
!
! /* Store the value into the property */
! ILGenCallMethod(info, setter);
ILGenAdjust(info, -2);
--- 1255,1267 ----
ILGenStoreLocal(info, temp);
ILGenExtend(info, 1);
! if(node->baseCall)
! {
! ILGenCallByMethod(info,setter);
! }
! else
! {
! /* Store the value into the property */
! ILGenCallMethod(info, setter);
! }
ILGenAdjust(info, -2);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Dotgnu-pnet-commits] CVS: pnet/codegen cg_nodes.tc,1.66,1.67 cg_lvalue.tc,1.16,1.17,
Gopal.V <address@hidden> <=