[Vm-dev] VM Maker: VMMaker.oscog-tpr.1278.mcz
commits at source.squeak.org
commits at source.squeak.org
Mon May 4 17:26:26 UTC 2015
tim Rowledge uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-tpr.1278.mcz
==================== Summary ====================
Name: VMMaker.oscog-tpr.1278
Author: tpr
Time: 4 May 2015, 10:24:57.661 am
UUID: d4f57d4d-5a8f-4cfa-8f0c-fd7dd187e3fa
Ancestors: VMMaker.oscog-tpr.1277
Converting #bitAt: 24 to bitshiftery with 24 just isn't going to work, dummy. It needs to be shift by 23.
Coming soon- changes to memMxr:reg:base:u:b:l:imm: - hold onto your cat!
=============== Diff against VMMaker.oscog-tpr.1277 ===============
Item was changed:
----- Method: CogARMCompiler>>extractOffsetFromBL: (in category 'testing') -----
extractOffsetFromBL: instr
"we are told this is a BL <offset> instruction, so work out the offset it encodes"
<inline: true>
| relativeJump |
relativeJump := instr bitAnd: 16r00FFFFFF.
+ relativeJump := ((relativeJump bitAnd: 1<<23) >> 23) = 1
- relativeJump := ((relativeJump bitAnd: 1<<24) >> 24) = 1
ifTrue: [((relativeJump bitOr: 16r3F000000) << 2) signedIntFromLong]
ifFalse: [relativeJump << 2].
^relativeJump!
More information about the Vm-dev
mailing list