VM Maker: VMMaker.oscog-cb.2045.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

VM Maker: VMMaker.oscog-cb.2045.mcz

commits-2
 
ClementBera uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-cb.2045.mcz

==================== Summary ====================

Name: VMMaker.oscog-cb.2045
Author: cb
Time: 21 December 2016, 2:59:29.957723 pm
UUID: c23c0e96-df64-4990-b40a-d34c40e5c1fa
Ancestors: VMMaker.oscog-nice.2044

use cmacro instead of hand-written constant.

=============== Diff against VMMaker.oscog-nice.2044 ===============

Item was changed:
  ----- Method: SimpleStackBasedCogit>>genExtPushRemoteTempOrInstVarLongBytecode (in category 'bytecode generators') -----
  genExtPushRemoteTempOrInstVarLongBytecode
  | index |
+ ^ (byte2 noMask: coInterpreter remoteIsInstVarAccess)
- ^ (byte2 noMask: 1 << 7)
  ifTrue: [ self genPushRemoteTempLongBytecode ]
  ifFalse:
  [ index := byte1 + (extA << 8).
  extA := 0.
  extB := 0. "don't use flags in the simple cogit"
  (coInterpreter isReadMediatedContextInstVarIndex: index)
+ ifTrue: [self
+ genPushMaybeContextRemoteInstVar: index
+ inObjectAt: byte2 - coInterpreter remoteIsInstVarAccess]
+ ifFalse: [self
+ genPushRemoteInstVar: index
+ inObjectAt: byte2 - coInterpreter remoteIsInstVarAccess]]!
- ifTrue: [ self genPushMaybeContextRemoteInstVar: index inObjectAt: byte2 - (1 << 7) ]
- ifFalse: [ self genPushRemoteInstVar: index inObjectAt: byte2 - (1 << 7) ] ]!

Item was changed:
  ----- Method: SimpleStackBasedCogit>>genExtStorePopRemoteTempOrInstVarLongBytecodePopBoolean: (in category 'bytecode generators') -----
  genExtStorePopRemoteTempOrInstVarLongBytecodePopBoolean: popBoolean
  | index |
  extB := 0. "simple cogit don't use the extra flag"
+ (byte2 noMask: coInterpreter remoteIsInstVarAccess)
- (byte2 noMask: 1 << 7)
  ifTrue:
  [ self genStorePop: popBoolean RemoteTemp: byte1 At: byte2.
  self cppIf: IMMUTABILITY ifTrue: [ self annotateBytecode: self Label ] ]
  ifFalse:
  [ index := byte1 + (extA << 8).
  extA := 0.
  (coInterpreter isWriteMediatedContextInstVarIndex: index)
  ifTrue: [ self
  genStorePop: popBoolean
  MaybeContextRemoteInstVar: index
+ ofObjectAt: byte2 - coInterpreter remoteIsInstVarAccess ]
- ofObjectAt: byte2 - (1 << 7) ]
  ifFalse: [ self
  genStorePop: popBoolean
  RemoteInstVar: index
+ ofObjectAt: byte2 - coInterpreter remoteIsInstVarAccess  ] ].
- ofObjectAt: byte2 - (1 << 7)  ] ].
  ^ 0!