[prev in list] [next in list] [prev in thread] [next in thread]
List: squeak-vm-dev
Subject: [Vm-dev] Re: Building VMMaker image supporting AMD64 and AArch64 ISAs on Linux
From: Jan Vrany <jan () vrany ! io>
Date: 2023-10-04 15:28:03
Message-ID: 399ab40184ca94b0f9543a71e95fe06040205674.camel () vrany ! io
[Download RAW message or body]
Hi Eliot,
> > 9 | #include <aarch64/config.h>
> > > ^~~~~~~~~~~~~~~~~~
> > compilation terminated.
> > make[1]: *** [Makefile:197: sqGdbARMv8Plugin.lo] Error 1
> > make: *** [Makefile:557: GdbARMv8Plugin.la] Error 2
>
> I got bitten by this recently too. Someone changed the way we include config.h \
> and that fucked everything up. It was a house of cards, but there we are. I'm \
> not sure how to fix this. It works on macos, and that's my need.
>
With some rather wild hacking I got the thing to compile (and it was not only \
config.h). See attached patch.
Now I'm getting different error when trying to compile some method in image, see \
below.
Best, Jan
=================
4 October 2023 4:25:15.314171 pm
VM: unix - Smalltalk
Image: Squeak6.1alpha [latest update: #22780]
SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir /home/jv/Projects/Squeak/opensmalltalk-vm/image
Trusted Dir /home/jv/Projects/Squeak/opensmalltalk-vm/image/secure
Untrusted Dir /home/jv/Projects/Squeak/opensmalltalk-vm/image/My Squeak
SmallInteger(Object)>>error:
Receiver: 158
Arguments and temporary variables:
aString: 'Case not found (158), and no otherwise clause'
Receiver's instance variables:
158
SmallInteger(Object)>>caseError
Receiver: 158
Arguments and temporary variables:
Receiver's instance variables:
158
CogARMv8Compiler>>dispatchConcretize
Receiver: a CogARMv8Compiler (MovePerfCnt64RRL @3E8)
Arguments and temporary variables:
Receiver's instance variables:
opcode: 158
machineCodeSize: nil
maxSize: 4
annotation: nil
machineCode: a CArrayAccessor on: a WordArray(0 0 0)
operands: a CArrayAccessor on: #(0 #undefined 536346624)
address: 1000
dependent: nil
cogit: a StackToRegisterMappingCogit
objectMemory: a CurrentImageCoInterpreterFacadeForSpurObjectRepresentation
bcpc: nil
CogARMv8Compiler(CogAbstractInstruction)>>concretizeAt:
Receiver: a CogARMv8Compiler (MovePerfCnt64RRL @3E8)
Arguments and temporary variables:
actualAddress: 1000
Receiver's instance variables:
opcode: 158
machineCodeSize: nil
maxSize: 4
annotation: nil
machineCode: a CArrayAccessor on: a WordArray(0 0 0)
operands: a CArrayAccessor on: #(0 #undefined 536346624)
address: 1000
dependent: nil
cogit: a StackToRegisterMappingCogit
objectMemory: a CurrentImageCoInterpreterFacadeForSpurObjectRepresentation
bcpc: nil
StackToRegisterMappingCogit>>generateInstructionsAt:
Receiver: a StackToRegisterMappingCogit
Arguments and temporary variables:
eventualAbsoluteAddress: 1000
absoluteAddress: 1000
pcDependentIndex: 0
abstractInstruction: a CogARMv8Compiler (MovePerfCnt64RRL @3E8)
fixup: nil
i: 0
iLimiT: 2
j: nil
jLimiT: nil
Receiver's instance variables:
coInterpreter: a CurrentImageCoInterpreterFacadeForSpurObjectRepresentation
objectMemory: a CurrentImageCoInterpreterFacadeForSpurObjectRepresentation
objectRepresentation: a CogObjectRepresentationFor32BitSpur
processor: a GdbARMv8Alien64
r28: 0000000000000000 fp: 00000000003FFBD0 (419323...etc...
processorLock: a Mutex()
methodZone: a CogMethodZone
methodZoneBase: 1024
codeBase: 1024
lastNInstructions: an OrderedCollection()
simulatedAddresses: a Dictionary(#argumentCount->2147483708 \
#framePointer->2147...etc... simulatedTrampolines: a Dictionary()
simulatedVariableGetters: a Dictionary()
simulatedVariableSetters: a Dictionary()
printRegisters: false
printInstructions: false
compilationTrace: 0
clickConfirm: false
clickStepping: false
breakPC: nil
breakBlock: nil
singleStep: true
guardPageSize: 1024
traceFlags: 8
traceStores: 0
breakMethod: nil
methodObj: nil
enumeratingCogMethod: nil
methodHeader: nil
initialPC: 0
endPC: nil
methodOrBlockNumArgs: nil
inBlock: nil
needsFrame: nil
hasYoungReferent: nil
hasMovableLiteral: nil
primitiveIndex: nil
backEnd: a CogARMv8Compiler
literalsManager: an OutOfLineLiteralsManagerFor64Bits
methodLabel: a CogARMv8Compiler (Label 0 @3E8)
stackCheckLabel: nil
blockEntryLabel: nil
blockEntryNoContextSwitch: nil
blockNoContextSwitchOffset: nil
stackOverflowCall: nil
sendMiss: nil
missOffset: nil
entryPointMask: nil
checkedEntryAlignment: nil
uncheckedEntryAlignment: nil
cmEntryOffset: nil
entry: nil
cmNoCheckEntryOffset: nil
noCheckEntry: nil
fullBlockEntry: nil
cbEntryOffset: nil
fullBlockNoContextSwitchEntry: nil
cbNoSwitchEntryOffset: nil
picMNUAbort: nil
picInterpretAbort: nil
endCPICCase0: nil
endCPICCase1: nil
firstCPICCaseOffset: nil
cPICCaseSize: nil
cPICEndSize: nil
closedPICSize: nil
openPICSize: nil
fixups: a CArrayAccessor on: {a CogSSBytecodeFixup ( 0) . a CogSSBytecodeFixup \
...etc... abstractOpcodes: a CArrayAccessor on: {a CogARMv8Compiler \
(MovePerfCnt64RRL @3E...etc... generatorTable: a CArrayAccessor on: {a \
CogBytecodeDescriptor (genPushReceiverVariableBytecode...etc... byte0: nil
byte1: nil
byte2: nil
byte3: nil
bytecodePC: nil
bytecodeSetOffset: nil
opcodeIndex: 3
numAbstractOpcodes: 4
blockStarts: nil
blockCount: nil
labelCounter: 0
cStackAlignment: 16
expectedSPAlignment: 0
expectedFPAlignment: 0
codeModified: nil
maxLitIndex: nil
ceMethodAbortTrampoline: nil
cePICAbortTrampoline: nil
ceCheckForInterruptTrampoline: nil
ceCPICMissTrampoline: nil
ceReturnToInterpreterTrampoline: nil
ceBaseFrameReturnTrampoline: nil
ceReapAndResetErrorCodeTrampoline: nil
ceSendMustBeBooleanAddTrueTrampoline: nil
ceSendMustBeBooleanAddFalseTrampoline: nil
ceCannotResumeTrampoline: nil
ceEnterCogCodePopReceiverReg: nil
ceCallCogCodePopReceiverReg: nil
ceCallCogCodePopReceiverAndClassRegs: nil
cePrimReturnEnterCogCode: nil
cePrimReturnEnterCogCodeProfiling: nil
ceNonLocalReturnTrampoline: nil
ceFetchContextInstVarTrampoline: nil
ceStoreContextInstVarTrampoline: nil
ceEnclosingObjectTrampoline: nil
ceFlushDCache: nil
ceFlushICache: nil
ceTraceLinkedSendTrampoline: nil
ceTraceBlockActivationTrampoline: nil
ceTraceStoreTrampoline: nil
ceGetFP: nil
ceGetSP: nil
ceCaptureCStackPointers: nil
ceInvokeInterpret: nil
ordinarySendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
superSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
directedSuperSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
directedSuperBindingSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
dynamicSuperSendTrampolines: nil
outerSendTrampolines: nil
selfSendTrampolines: nil
firstSend: nil
lastSend: nil
realCEEnterCogCodePopReceiverReg: nil
realCECallCogCodePopReceiverReg: nil
realCECallCogCodePopReceiverAndClassRegs: nil
trampolineTableIndex: 0
trampolineAddresses: a CArrayAccessor on: #(nil nil nil nil nil nil nil nil \
nil...etc... objectReferencesInRuntime: a CArrayAccessor on: #()
runtimeObjectRefIndex: 0
cFramePointerInUse: nil
ceTryLockVMOwner: nil
extA: 0
extB: 0
numExtB: 0
tempOop: nil
numIRCs: nil
indexOfIRC: nil
theIRCs: nil
receiverTags: nil
implicitReceiverSendTrampolines: nil
cogMethodSurrogateClass: CogMethodSurrogate32
cogBlockMethodSurrogateClass: CogBlockMethodSurrogate32
nsSendCacheSurrogateClass: NSSendCacheSurrogate32
cPICPrototype: nil
cPICEndOfCodeOffset: nil
cPICEndOfCodeLabel: nil
ceMallocTrampoline: nil
ceFreeTrampoline: nil
ceFFICalloutTrampoline: nil
debugBytecodePointers: a Set()
debugOpcodeIndices: a Set()
disassemblingMethod: nil
cogConstituentIndex: nil
directedSendUsesBinding: false
processorFrameValid: false
codeToDataDelta: 0
varBaseAddress: 2097156
codeZoneIsExecutableNotWritable: false
debugAPISelector: nil
shortCutTrampolineBlocks: an \
IdentityDictionary(#ceShortCutTraceBlockActivation:...etc... ioHighResClock: nil
perMethodProfile: nil
instructionProfile: nil
primitiveGeneratorTable: a CArrayAccessor on: {a CogPrimitiveDescriptor . a \
CogPrimitiveDescriptor...etc... introspectionDataIndex: nil
introspectionData: nil
prevBCDescriptor: nil
numPushNilsFunction: #squeakV3orSistaV1:Num:Push:Nils:
pushNilSizeFunction: #squeakV3orSistaV1PushNilSize:numInitialNils:
methodOrBlockNumTemps: nil
regArgsHaveBeenPushed: nil
simStack: a CArrayAccessor on: {a CogSimStackEntry . a CogSimStackEntry . a \
CogSimStackEntry...etc... simStackPtr: nil
simSpillBase: nil
ceCallCogCodePopReceiverArg0Regs: nil
ceCallCogCodePopReceiverArg1Arg0Regs: nil
methodAbortTrampolines: a CArrayAccessor on: #(nil nil nil nil)
picAbortTrampolines: a CArrayAccessor on: #(nil nil nil nil)
picMissTrampolines: a CArrayAccessor on: #(nil nil nil nil)
ceCall0ArgsPIC: nil
ceCall1ArgsPIC: nil
ceCall2ArgsPIC: nil
debugStackPointers: nil
debugFixupBreaks: a Set()
realCECallCogCodePopReceiverArg0Regs: nil
realCECallCogCodePopReceiverArg1Arg0Regs: nil
deadCode: nil
useTwoPaths: nil
currentCallCleanUpSize: nil
simNativeStack: a CArrayAccessor on: {a CogSimStackNativeEntry . a \
CogSimStackNativeEntry...etc... simNativeStackPtr: nil
simNativeSpillBase: nil
simNativeStackSize: nil
hasNativeFrame: nil
compilationPass: nil
StackToRegisterMappingCogit(Cogit)>>outputInstructionsForGeneratedRuntimeAt:
Receiver: a StackToRegisterMappingCogit
Arguments and temporary variables:
startAddress: 1000
size: nil
endAddress: nil
Receiver's instance variables:
coInterpreter: a CurrentImageCoInterpreterFacadeForSpurObjectRepresentation
objectMemory: a CurrentImageCoInterpreterFacadeForSpurObjectRepresentation
objectRepresentation: a CogObjectRepresentationFor32BitSpur
processor: a GdbARMv8Alien64
r28: 0000000000000000 fp: 00000000003FFBD0 (419323...etc...
processorLock: a Mutex()
methodZone: a CogMethodZone
methodZoneBase: 1024
codeBase: 1024
lastNInstructions: an OrderedCollection()
simulatedAddresses: a Dictionary(#argumentCount->2147483708 \
#framePointer->2147...etc... simulatedTrampolines: a Dictionary()
simulatedVariableGetters: a Dictionary()
simulatedVariableSetters: a Dictionary()
printRegisters: false
printInstructions: false
compilationTrace: 0
clickConfirm: false
clickStepping: false
breakPC: nil
breakBlock: nil
singleStep: true
guardPageSize: 1024
traceFlags: 8
traceStores: 0
breakMethod: nil
methodObj: nil
enumeratingCogMethod: nil
methodHeader: nil
initialPC: 0
endPC: nil
methodOrBlockNumArgs: nil
inBlock: nil
needsFrame: nil
hasYoungReferent: nil
hasMovableLiteral: nil
primitiveIndex: nil
backEnd: a CogARMv8Compiler
literalsManager: an OutOfLineLiteralsManagerFor64Bits
methodLabel: a CogARMv8Compiler (Label 0 @3E8)
stackCheckLabel: nil
blockEntryLabel: nil
blockEntryNoContextSwitch: nil
blockNoContextSwitchOffset: nil
stackOverflowCall: nil
sendMiss: nil
missOffset: nil
entryPointMask: nil
checkedEntryAlignment: nil
uncheckedEntryAlignment: nil
cmEntryOffset: nil
entry: nil
cmNoCheckEntryOffset: nil
noCheckEntry: nil
fullBlockEntry: nil
cbEntryOffset: nil
fullBlockNoContextSwitchEntry: nil
cbNoSwitchEntryOffset: nil
picMNUAbort: nil
picInterpretAbort: nil
endCPICCase0: nil
endCPICCase1: nil
firstCPICCaseOffset: nil
cPICCaseSize: nil
cPICEndSize: nil
closedPICSize: nil
openPICSize: nil
fixups: a CArrayAccessor on: {a CogSSBytecodeFixup ( 0) . a CogSSBytecodeFixup \
...etc... abstractOpcodes: a CArrayAccessor on: {a CogARMv8Compiler \
(MovePerfCnt64RRL @3E...etc... generatorTable: a CArrayAccessor on: {a \
CogBytecodeDescriptor (genPushReceiverVariableBytecode...etc... byte0: nil
byte1: nil
byte2: nil
byte3: nil
bytecodePC: nil
bytecodeSetOffset: nil
opcodeIndex: 3
numAbstractOpcodes: 4
blockStarts: nil
blockCount: nil
labelCounter: 0
cStackAlignment: 16
expectedSPAlignment: 0
expectedFPAlignment: 0
codeModified: nil
maxLitIndex: nil
ceMethodAbortTrampoline: nil
cePICAbortTrampoline: nil
ceCheckForInterruptTrampoline: nil
ceCPICMissTrampoline: nil
ceReturnToInterpreterTrampoline: nil
ceBaseFrameReturnTrampoline: nil
ceReapAndResetErrorCodeTrampoline: nil
ceSendMustBeBooleanAddTrueTrampoline: nil
ceSendMustBeBooleanAddFalseTrampoline: nil
ceCannotResumeTrampoline: nil
ceEnterCogCodePopReceiverReg: nil
ceCallCogCodePopReceiverReg: nil
ceCallCogCodePopReceiverAndClassRegs: nil
cePrimReturnEnterCogCode: nil
cePrimReturnEnterCogCodeProfiling: nil
ceNonLocalReturnTrampoline: nil
ceFetchContextInstVarTrampoline: nil
ceStoreContextInstVarTrampoline: nil
ceEnclosingObjectTrampoline: nil
ceFlushDCache: nil
ceFlushICache: nil
ceTraceLinkedSendTrampoline: nil
ceTraceBlockActivationTrampoline: nil
ceTraceStoreTrampoline: nil
ceGetFP: nil
ceGetSP: nil
ceCaptureCStackPointers: nil
ceInvokeInterpret: nil
ordinarySendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
superSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
directedSuperSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
directedSuperBindingSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
dynamicSuperSendTrampolines: nil
outerSendTrampolines: nil
selfSendTrampolines: nil
firstSend: nil
lastSend: nil
realCEEnterCogCodePopReceiverReg: nil
realCECallCogCodePopReceiverReg: nil
realCECallCogCodePopReceiverAndClassRegs: nil
trampolineTableIndex: 0
trampolineAddresses: a CArrayAccessor on: #(nil nil nil nil nil nil nil nil \
nil...etc... objectReferencesInRuntime: a CArrayAccessor on: #()
runtimeObjectRefIndex: 0
cFramePointerInUse: nil
ceTryLockVMOwner: nil
extA: 0
extB: 0
numExtB: 0
tempOop: nil
numIRCs: nil
indexOfIRC: nil
theIRCs: nil
receiverTags: nil
implicitReceiverSendTrampolines: nil
cogMethodSurrogateClass: CogMethodSurrogate32
cogBlockMethodSurrogateClass: CogBlockMethodSurrogate32
nsSendCacheSurrogateClass: NSSendCacheSurrogate32
cPICPrototype: nil
cPICEndOfCodeOffset: nil
cPICEndOfCodeLabel: nil
ceMallocTrampoline: nil
ceFreeTrampoline: nil
ceFFICalloutTrampoline: nil
debugBytecodePointers: a Set()
debugOpcodeIndices: a Set()
disassemblingMethod: nil
cogConstituentIndex: nil
directedSendUsesBinding: false
processorFrameValid: false
codeToDataDelta: 0
varBaseAddress: 2097156
codeZoneIsExecutableNotWritable: false
debugAPISelector: nil
shortCutTrampolineBlocks: an \
IdentityDictionary(#ceShortCutTraceBlockActivation:...etc... ioHighResClock: nil
perMethodProfile: nil
instructionProfile: nil
primitiveGeneratorTable: a CArrayAccessor on: {a CogPrimitiveDescriptor . a \
CogPrimitiveDescriptor...etc... introspectionDataIndex: nil
introspectionData: nil
prevBCDescriptor: nil
numPushNilsFunction: #squeakV3orSistaV1:Num:Push:Nils:
pushNilSizeFunction: #squeakV3orSistaV1PushNilSize:numInitialNils:
methodOrBlockNumTemps: nil
regArgsHaveBeenPushed: nil
simStack: a CArrayAccessor on: {a CogSimStackEntry . a CogSimStackEntry . a \
CogSimStackEntry...etc... simStackPtr: nil
simSpillBase: nil
ceCallCogCodePopReceiverArg0Regs: nil
ceCallCogCodePopReceiverArg1Arg0Regs: nil
methodAbortTrampolines: a CArrayAccessor on: #(nil nil nil nil)
picAbortTrampolines: a CArrayAccessor on: #(nil nil nil nil)
picMissTrampolines: a CArrayAccessor on: #(nil nil nil nil)
ceCall0ArgsPIC: nil
ceCall1ArgsPIC: nil
ceCall2ArgsPIC: nil
debugStackPointers: nil
debugFixupBreaks: a Set()
realCECallCogCodePopReceiverArg0Regs: nil
realCECallCogCodePopReceiverArg1Arg0Regs: nil
deadCode: nil
useTwoPaths: nil
currentCallCleanUpSize: nil
simNativeStack: a CArrayAccessor on: {a CogSimStackNativeEntry . a \
CogSimStackNativeEntry...etc... simNativeStackPtr: nil
simNativeSpillBase: nil
simNativeStackSize: nil
hasNativeFrame: nil
compilationPass: nil
StackToRegisterMappingCogit(Cogit)>>initializeSimulationIOHighResClockForProfiling
Receiver: a StackToRegisterMappingCogit
Arguments and temporary variables:
Receiver's instance variables:
coInterpreter: a CurrentImageCoInterpreterFacadeForSpurObjectRepresentation
objectMemory: a CurrentImageCoInterpreterFacadeForSpurObjectRepresentation
objectRepresentation: a CogObjectRepresentationFor32BitSpur
processor: a GdbARMv8Alien64
r28: 0000000000000000 fp: 00000000003FFBD0 (419323...etc...
processorLock: a Mutex()
methodZone: a CogMethodZone
methodZoneBase: 1024
codeBase: 1024
lastNInstructions: an OrderedCollection()
simulatedAddresses: a Dictionary(#argumentCount->2147483708 \
#framePointer->2147...etc... simulatedTrampolines: a Dictionary()
simulatedVariableGetters: a Dictionary()
simulatedVariableSetters: a Dictionary()
printRegisters: false
printInstructions: false
compilationTrace: 0
clickConfirm: false
clickStepping: false
breakPC: nil
breakBlock: nil
singleStep: true
guardPageSize: 1024
traceFlags: 8
traceStores: 0
breakMethod: nil
methodObj: nil
enumeratingCogMethod: nil
methodHeader: nil
initialPC: 0
endPC: nil
methodOrBlockNumArgs: nil
inBlock: nil
needsFrame: nil
hasYoungReferent: nil
hasMovableLiteral: nil
primitiveIndex: nil
backEnd: a CogARMv8Compiler
literalsManager: an OutOfLineLiteralsManagerFor64Bits
methodLabel: a CogARMv8Compiler (Label 0 @3E8)
stackCheckLabel: nil
blockEntryLabel: nil
blockEntryNoContextSwitch: nil
blockNoContextSwitchOffset: nil
stackOverflowCall: nil
sendMiss: nil
missOffset: nil
entryPointMask: nil
checkedEntryAlignment: nil
uncheckedEntryAlignment: nil
cmEntryOffset: nil
entry: nil
cmNoCheckEntryOffset: nil
noCheckEntry: nil
fullBlockEntry: nil
cbEntryOffset: nil
fullBlockNoContextSwitchEntry: nil
cbNoSwitchEntryOffset: nil
picMNUAbort: nil
picInterpretAbort: nil
endCPICCase0: nil
endCPICCase1: nil
firstCPICCaseOffset: nil
cPICCaseSize: nil
cPICEndSize: nil
closedPICSize: nil
openPICSize: nil
fixups: a CArrayAccessor on: {a CogSSBytecodeFixup ( 0) . a CogSSBytecodeFixup \
...etc... abstractOpcodes: a CArrayAccessor on: {a CogARMv8Compiler \
(MovePerfCnt64RRL @3E...etc... generatorTable: a CArrayAccessor on: {a \
CogBytecodeDescriptor (genPushReceiverVariableBytecode...etc... byte0: nil
byte1: nil
byte2: nil
byte3: nil
bytecodePC: nil
bytecodeSetOffset: nil
opcodeIndex: 3
numAbstractOpcodes: 4
blockStarts: nil
blockCount: nil
labelCounter: 0
cStackAlignment: 16
expectedSPAlignment: 0
expectedFPAlignment: 0
codeModified: nil
maxLitIndex: nil
ceMethodAbortTrampoline: nil
cePICAbortTrampoline: nil
ceCheckForInterruptTrampoline: nil
ceCPICMissTrampoline: nil
ceReturnToInterpreterTrampoline: nil
ceBaseFrameReturnTrampoline: nil
ceReapAndResetErrorCodeTrampoline: nil
ceSendMustBeBooleanAddTrueTrampoline: nil
ceSendMustBeBooleanAddFalseTrampoline: nil
ceCannotResumeTrampoline: nil
ceEnterCogCodePopReceiverReg: nil
ceCallCogCodePopReceiverReg: nil
ceCallCogCodePopReceiverAndClassRegs: nil
cePrimReturnEnterCogCode: nil
cePrimReturnEnterCogCodeProfiling: nil
ceNonLocalReturnTrampoline: nil
ceFetchContextInstVarTrampoline: nil
ceStoreContextInstVarTrampoline: nil
ceEnclosingObjectTrampoline: nil
ceFlushDCache: nil
ceFlushICache: nil
ceTraceLinkedSendTrampoline: nil
ceTraceBlockActivationTrampoline: nil
ceTraceStoreTrampoline: nil
ceGetFP: nil
ceGetSP: nil
ceCaptureCStackPointers: nil
ceInvokeInterpret: nil
ordinarySendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
superSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
directedSuperSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
directedSuperBindingSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
dynamicSuperSendTrampolines: nil
outerSendTrampolines: nil
selfSendTrampolines: nil
firstSend: nil
lastSend: nil
realCEEnterCogCodePopReceiverReg: nil
realCECallCogCodePopReceiverReg: nil
realCECallCogCodePopReceiverAndClassRegs: nil
trampolineTableIndex: 0
trampolineAddresses: a CArrayAccessor on: #(nil nil nil nil nil nil nil nil \
nil...etc... objectReferencesInRuntime: a CArrayAccessor on: #()
runtimeObjectRefIndex: 0
cFramePointerInUse: nil
ceTryLockVMOwner: nil
extA: 0
extB: 0
numExtB: 0
tempOop: nil
numIRCs: nil
indexOfIRC: nil
theIRCs: nil
receiverTags: nil
implicitReceiverSendTrampolines: nil
cogMethodSurrogateClass: CogMethodSurrogate32
cogBlockMethodSurrogateClass: CogBlockMethodSurrogate32
nsSendCacheSurrogateClass: NSSendCacheSurrogate32
cPICPrototype: nil
cPICEndOfCodeOffset: nil
cPICEndOfCodeLabel: nil
ceMallocTrampoline: nil
ceFreeTrampoline: nil
ceFFICalloutTrampoline: nil
debugBytecodePointers: a Set()
debugOpcodeIndices: a Set()
disassemblingMethod: nil
cogConstituentIndex: nil
directedSendUsesBinding: false
processorFrameValid: false
codeToDataDelta: 0
varBaseAddress: 2097156
codeZoneIsExecutableNotWritable: false
debugAPISelector: nil
shortCutTrampolineBlocks: an \
IdentityDictionary(#ceShortCutTraceBlockActivation:...etc... ioHighResClock: nil
perMethodProfile: nil
instructionProfile: nil
primitiveGeneratorTable: a CArrayAccessor on: {a CogPrimitiveDescriptor . a \
CogPrimitiveDescriptor...etc... introspectionDataIndex: nil
introspectionData: nil
prevBCDescriptor: nil
numPushNilsFunction: #squeakV3orSistaV1:Num:Push:Nils:
pushNilSizeFunction: #squeakV3orSistaV1PushNilSize:numInitialNils:
methodOrBlockNumTemps: nil
regArgsHaveBeenPushed: nil
simStack: a CArrayAccessor on: {a CogSimStackEntry . a CogSimStackEntry . a \
CogSimStackEntry...etc... simStackPtr: nil
simSpillBase: nil
ceCallCogCodePopReceiverArg0Regs: nil
ceCallCogCodePopReceiverArg1Arg0Regs: nil
methodAbortTrampolines: a CArrayAccessor on: #(nil nil nil nil)
picAbortTrampolines: a CArrayAccessor on: #(nil nil nil nil)
picMissTrampolines: a CArrayAccessor on: #(nil nil nil nil)
ceCall0ArgsPIC: nil
ceCall1ArgsPIC: nil
ceCall2ArgsPIC: nil
debugStackPointers: nil
debugFixupBreaks: a Set()
realCECallCogCodePopReceiverArg0Regs: nil
realCECallCogCodePopReceiverArg1Arg0Regs: nil
deadCode: nil
useTwoPaths: nil
currentCallCleanUpSize: nil
simNativeStack: a CArrayAccessor on: {a CogSimStackNativeEntry . a \
CogSimStackNativeEntry...etc... simNativeStackPtr: nil
simNativeSpillBase: nil
simNativeStackSize: nil
hasNativeFrame: nil
compilationPass: nil
[] in StackToRegisterMappingCogit(Cogit)>>initializeCodeZoneFrom:upTo:
Receiver: a StackToRegisterMappingCogit
Arguments and temporary variables:
startAddress: 1024
endAddress: 4190208
Receiver's instance variables:
coInterpreter: a CurrentImageCoInterpreterFacadeForSpurObjectRepresentation
objectMemory: a CurrentImageCoInterpreterFacadeForSpurObjectRepresentation
objectRepresentation: a CogObjectRepresentationFor32BitSpur
processor: a GdbARMv8Alien64
r28: 0000000000000000 fp: 00000000003FFBD0 (419323...etc...
processorLock: a Mutex()
methodZone: a CogMethodZone
methodZoneBase: 1024
codeBase: 1024
lastNInstructions: an OrderedCollection()
simulatedAddresses: a Dictionary(#argumentCount->2147483708 \
#framePointer->2147...etc... simulatedTrampolines: a Dictionary()
simulatedVariableGetters: a Dictionary()
simulatedVariableSetters: a Dictionary()
printRegisters: false
printInstructions: false
compilationTrace: 0
clickConfirm: false
clickStepping: false
breakPC: nil
breakBlock: nil
singleStep: true
guardPageSize: 1024
traceFlags: 8
traceStores: 0
breakMethod: nil
methodObj: nil
enumeratingCogMethod: nil
methodHeader: nil
initialPC: 0
endPC: nil
methodOrBlockNumArgs: nil
inBlock: nil
needsFrame: nil
hasYoungReferent: nil
hasMovableLiteral: nil
primitiveIndex: nil
backEnd: a CogARMv8Compiler
literalsManager: an OutOfLineLiteralsManagerFor64Bits
methodLabel: a CogARMv8Compiler (Label 0 @3E8)
stackCheckLabel: nil
blockEntryLabel: nil
blockEntryNoContextSwitch: nil
blockNoContextSwitchOffset: nil
stackOverflowCall: nil
sendMiss: nil
missOffset: nil
entryPointMask: nil
checkedEntryAlignment: nil
uncheckedEntryAlignment: nil
cmEntryOffset: nil
entry: nil
cmNoCheckEntryOffset: nil
noCheckEntry: nil
fullBlockEntry: nil
cbEntryOffset: nil
fullBlockNoContextSwitchEntry: nil
cbNoSwitchEntryOffset: nil
picMNUAbort: nil
picInterpretAbort: nil
endCPICCase0: nil
endCPICCase1: nil
firstCPICCaseOffset: nil
cPICCaseSize: nil
cPICEndSize: nil
closedPICSize: nil
openPICSize: nil
fixups: a CArrayAccessor on: {a CogSSBytecodeFixup ( 0) . a CogSSBytecodeFixup \
...etc... abstractOpcodes: a CArrayAccessor on: {a CogARMv8Compiler \
(MovePerfCnt64RRL @3E...etc... generatorTable: a CArrayAccessor on: {a \
CogBytecodeDescriptor (genPushReceiverVariableBytecode...etc... byte0: nil
byte1: nil
byte2: nil
byte3: nil
bytecodePC: nil
bytecodeSetOffset: nil
opcodeIndex: 3
numAbstractOpcodes: 4
blockStarts: nil
blockCount: nil
labelCounter: 0
cStackAlignment: 16
expectedSPAlignment: 0
expectedFPAlignment: 0
codeModified: nil
maxLitIndex: nil
ceMethodAbortTrampoline: nil
cePICAbortTrampoline: nil
ceCheckForInterruptTrampoline: nil
ceCPICMissTrampoline: nil
ceReturnToInterpreterTrampoline: nil
ceBaseFrameReturnTrampoline: nil
ceReapAndResetErrorCodeTrampoline: nil
ceSendMustBeBooleanAddTrueTrampoline: nil
ceSendMustBeBooleanAddFalseTrampoline: nil
ceCannotResumeTrampoline: nil
ceEnterCogCodePopReceiverReg: nil
ceCallCogCodePopReceiverReg: nil
ceCallCogCodePopReceiverAndClassRegs: nil
cePrimReturnEnterCogCode: nil
cePrimReturnEnterCogCodeProfiling: nil
ceNonLocalReturnTrampoline: nil
ceFetchContextInstVarTrampoline: nil
ceStoreContextInstVarTrampoline: nil
ceEnclosingObjectTrampoline: nil
ceFlushDCache: nil
ceFlushICache: nil
ceTraceLinkedSendTrampoline: nil
ceTraceBlockActivationTrampoline: nil
ceTraceStoreTrampoline: nil
ceGetFP: nil
ceGetSP: nil
ceCaptureCStackPointers: nil
ceInvokeInterpret: nil
ordinarySendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
superSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
directedSuperSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
directedSuperBindingSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
dynamicSuperSendTrampolines: nil
outerSendTrampolines: nil
selfSendTrampolines: nil
firstSend: nil
lastSend: nil
realCEEnterCogCodePopReceiverReg: nil
realCECallCogCodePopReceiverReg: nil
realCECallCogCodePopReceiverAndClassRegs: nil
trampolineTableIndex: 0
trampolineAddresses: a CArrayAccessor on: #(nil nil nil nil nil nil nil nil \
nil...etc... objectReferencesInRuntime: a CArrayAccessor on: #()
runtimeObjectRefIndex: 0
cFramePointerInUse: nil
ceTryLockVMOwner: nil
extA: 0
extB: 0
numExtB: 0
tempOop: nil
numIRCs: nil
indexOfIRC: nil
theIRCs: nil
receiverTags: nil
implicitReceiverSendTrampolines: nil
cogMethodSurrogateClass: CogMethodSurrogate32
cogBlockMethodSurrogateClass: CogBlockMethodSurrogate32
nsSendCacheSurrogateClass: NSSendCacheSurrogate32
cPICPrototype: nil
cPICEndOfCodeOffset: nil
cPICEndOfCodeLabel: nil
ceMallocTrampoline: nil
ceFreeTrampoline: nil
ceFFICalloutTrampoline: nil
debugBytecodePointers: a Set()
debugOpcodeIndices: a Set()
disassemblingMethod: nil
cogConstituentIndex: nil
directedSendUsesBinding: false
processorFrameValid: false
codeToDataDelta: 0
varBaseAddress: 2097156
codeZoneIsExecutableNotWritable: false
debugAPISelector: nil
shortCutTrampolineBlocks: an \
IdentityDictionary(#ceShortCutTraceBlockActivation:...etc... ioHighResClock: nil
perMethodProfile: nil
instructionProfile: nil
primitiveGeneratorTable: a CArrayAccessor on: {a CogPrimitiveDescriptor . a \
CogPrimitiveDescriptor...etc... introspectionDataIndex: nil
introspectionData: nil
prevBCDescriptor: nil
numPushNilsFunction: #squeakV3orSistaV1:Num:Push:Nils:
pushNilSizeFunction: #squeakV3orSistaV1PushNilSize:numInitialNils:
methodOrBlockNumTemps: nil
regArgsHaveBeenPushed: nil
simStack: a CArrayAccessor on: {a CogSimStackEntry . a CogSimStackEntry . a \
CogSimStackEntry...etc... simStackPtr: nil
simSpillBase: nil
ceCallCogCodePopReceiverArg0Regs: nil
ceCallCogCodePopReceiverArg1Arg0Regs: nil
methodAbortTrampolines: a CArrayAccessor on: #(nil nil nil nil)
picAbortTrampolines: a CArrayAccessor on: #(nil nil nil nil)
picMissTrampolines: a CArrayAccessor on: #(nil nil nil nil)
ceCall0ArgsPIC: nil
ceCall1ArgsPIC: nil
ceCall2ArgsPIC: nil
debugStackPointers: nil
debugFixupBreaks: a Set()
realCECallCogCodePopReceiverArg0Regs: nil
realCECallCogCodePopReceiverArg1Arg0Regs: nil
deadCode: nil
useTwoPaths: nil
currentCallCleanUpSize: nil
simNativeStack: a CArrayAccessor on: {a CogSimStackNativeEntry . a \
CogSimStackNativeEntry...etc... simNativeStackPtr: nil
simNativeSpillBase: nil
simNativeStackSize: nil
hasNativeFrame: nil
compilationPass: nil
StackToRegisterMappingCogit(VMClass)>>cCode:inSmalltalk:
Receiver: a StackToRegisterMappingCogit
Arguments and temporary variables:
codeStringOrBlock: ''
aBlock: [closure] in \
StackToRegisterMappingCogit(Cogit)>>initializeCodeZoneFrom:upTo:...etc... Receiver's \
instance variables: coInterpreter: a \
CurrentImageCoInterpreterFacadeForSpurObjectRepresentation objectMemory: a \
CurrentImageCoInterpreterFacadeForSpurObjectRepresentation objectRepresentation: a \
CogObjectRepresentationFor32BitSpur processor: a GdbARMv8Alien64
r28: 0000000000000000 fp: 00000000003FFBD0 (419323...etc...
processorLock: a Mutex()
methodZone: a CogMethodZone
methodZoneBase: 1024
codeBase: 1024
lastNInstructions: an OrderedCollection()
simulatedAddresses: a Dictionary(#argumentCount->2147483708 \
#framePointer->2147...etc... simulatedTrampolines: a Dictionary()
simulatedVariableGetters: a Dictionary()
simulatedVariableSetters: a Dictionary()
printRegisters: false
printInstructions: false
compilationTrace: 0
clickConfirm: false
clickStepping: false
breakPC: nil
breakBlock: nil
singleStep: true
guardPageSize: 1024
traceFlags: 8
traceStores: 0
breakMethod: nil
methodObj: nil
enumeratingCogMethod: nil
methodHeader: nil
initialPC: 0
endPC: nil
methodOrBlockNumArgs: nil
inBlock: nil
needsFrame: nil
hasYoungReferent: nil
hasMovableLiteral: nil
primitiveIndex: nil
backEnd: a CogARMv8Compiler
literalsManager: an OutOfLineLiteralsManagerFor64Bits
methodLabel: a CogARMv8Compiler (Label 0 @3E8)
stackCheckLabel: nil
blockEntryLabel: nil
blockEntryNoContextSwitch: nil
blockNoContextSwitchOffset: nil
stackOverflowCall: nil
sendMiss: nil
missOffset: nil
entryPointMask: nil
checkedEntryAlignment: nil
uncheckedEntryAlignment: nil
cmEntryOffset: nil
entry: nil
cmNoCheckEntryOffset: nil
noCheckEntry: nil
fullBlockEntry: nil
cbEntryOffset: nil
fullBlockNoContextSwitchEntry: nil
cbNoSwitchEntryOffset: nil
picMNUAbort: nil
picInterpretAbort: nil
endCPICCase0: nil
endCPICCase1: nil
firstCPICCaseOffset: nil
cPICCaseSize: nil
cPICEndSize: nil
closedPICSize: nil
openPICSize: nil
fixups: a CArrayAccessor on: {a CogSSBytecodeFixup ( 0) . a CogSSBytecodeFixup \
...etc... abstractOpcodes: a CArrayAccessor on: {a CogARMv8Compiler \
(MovePerfCnt64RRL @3E...etc... generatorTable: a CArrayAccessor on: {a \
CogBytecodeDescriptor (genPushReceiverVariableBytecode...etc... byte0: nil
byte1: nil
byte2: nil
byte3: nil
bytecodePC: nil
bytecodeSetOffset: nil
opcodeIndex: 3
numAbstractOpcodes: 4
blockStarts: nil
blockCount: nil
labelCounter: 0
cStackAlignment: 16
expectedSPAlignment: 0
expectedFPAlignment: 0
codeModified: nil
maxLitIndex: nil
ceMethodAbortTrampoline: nil
cePICAbortTrampoline: nil
ceCheckForInterruptTrampoline: nil
ceCPICMissTrampoline: nil
ceReturnToInterpreterTrampoline: nil
ceBaseFrameReturnTrampoline: nil
ceReapAndResetErrorCodeTrampoline: nil
ceSendMustBeBooleanAddTrueTrampoline: nil
ceSendMustBeBooleanAddFalseTrampoline: nil
ceCannotResumeTrampoline: nil
ceEnterCogCodePopReceiverReg: nil
ceCallCogCodePopReceiverReg: nil
ceCallCogCodePopReceiverAndClassRegs: nil
cePrimReturnEnterCogCode: nil
cePrimReturnEnterCogCodeProfiling: nil
ceNonLocalReturnTrampoline: nil
ceFetchContextInstVarTrampoline: nil
ceStoreContextInstVarTrampoline: nil
ceEnclosingObjectTrampoline: nil
ceFlushDCache: nil
ceFlushICache: nil
ceTraceLinkedSendTrampoline: nil
ceTraceBlockActivationTrampoline: nil
ceTraceStoreTrampoline: nil
ceGetFP: nil
ceGetSP: nil
ceCaptureCStackPointers: nil
ceInvokeInterpret: nil
ordinarySendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
superSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
directedSuperSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
directedSuperBindingSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
dynamicSuperSendTrampolines: nil
outerSendTrampolines: nil
selfSendTrampolines: nil
firstSend: nil
lastSend: nil
realCEEnterCogCodePopReceiverReg: nil
realCECallCogCodePopReceiverReg: nil
realCECallCogCodePopReceiverAndClassRegs: nil
trampolineTableIndex: 0
trampolineAddresses: a CArrayAccessor on: #(nil nil nil nil nil nil nil nil \
nil...etc... objectReferencesInRuntime: a CArrayAccessor on: #()
runtimeObjectRefIndex: 0
cFramePointerInUse: nil
ceTryLockVMOwner: nil
extA: 0
extB: 0
numExtB: 0
tempOop: nil
numIRCs: nil
indexOfIRC: nil
theIRCs: nil
receiverTags: nil
implicitReceiverSendTrampolines: nil
cogMethodSurrogateClass: CogMethodSurrogate32
cogBlockMethodSurrogateClass: CogBlockMethodSurrogate32
nsSendCacheSurrogateClass: NSSendCacheSurrogate32
cPICPrototype: nil
cPICEndOfCodeOffset: nil
cPICEndOfCodeLabel: nil
ceMallocTrampoline: nil
ceFreeTrampoline: nil
ceFFICalloutTrampoline: nil
debugBytecodePointers: a Set()
debugOpcodeIndices: a Set()
disassemblingMethod: nil
cogConstituentIndex: nil
directedSendUsesBinding: false
processorFrameValid: false
codeToDataDelta: 0
varBaseAddress: 2097156
codeZoneIsExecutableNotWritable: false
debugAPISelector: nil
shortCutTrampolineBlocks: an \
IdentityDictionary(#ceShortCutTraceBlockActivation:...etc... ioHighResClock: nil
perMethodProfile: nil
instructionProfile: nil
primitiveGeneratorTable: a CArrayAccessor on: {a CogPrimitiveDescriptor . a \
CogPrimitiveDescriptor...etc... introspectionDataIndex: nil
introspectionData: nil
prevBCDescriptor: nil
numPushNilsFunction: #squeakV3orSistaV1:Num:Push:Nils:
pushNilSizeFunction: #squeakV3orSistaV1PushNilSize:numInitialNils:
methodOrBlockNumTemps: nil
regArgsHaveBeenPushed: nil
simStack: a CArrayAccessor on: {a CogSimStackEntry . a CogSimStackEntry . a \
CogSimStackEntry...etc... simStackPtr: nil
simSpillBase: nil
ceCallCogCodePopReceiverArg0Regs: nil
ceCallCogCodePopReceiverArg1Arg0Regs: nil
methodAbortTrampolines: a CArrayAccessor on: #(nil nil nil nil)
picAbortTrampolines: a CArrayAccessor on: #(nil nil nil nil)
picMissTrampolines: a CArrayAccessor on: #(nil nil nil nil)
ceCall0ArgsPIC: nil
ceCall1ArgsPIC: nil
ceCall2ArgsPIC: nil
debugStackPointers: nil
debugFixupBreaks: a Set()
realCECallCogCodePopReceiverArg0Regs: nil
realCECallCogCodePopReceiverArg1Arg0Regs: nil
deadCode: nil
useTwoPaths: nil
currentCallCleanUpSize: nil
simNativeStack: a CArrayAccessor on: {a CogSimStackNativeEntry . a \
CogSimStackNativeEntry...etc... simNativeStackPtr: nil
simNativeSpillBase: nil
simNativeStackSize: nil
hasNativeFrame: nil
compilationPass: nil
StackToRegisterMappingCogit(Cogit)>>initializeCodeZoneFrom:upTo:
Receiver: a StackToRegisterMappingCogit
Arguments and temporary variables:
startAddress: 1024
endAddress: 4190208
Receiver's instance variables:
coInterpreter: a CurrentImageCoInterpreterFacadeForSpurObjectRepresentation
objectMemory: a CurrentImageCoInterpreterFacadeForSpurObjectRepresentation
objectRepresentation: a CogObjectRepresentationFor32BitSpur
processor: a GdbARMv8Alien64
r28: 0000000000000000 fp: 00000000003FFBD0 (419323...etc...
processorLock: a Mutex()
methodZone: a CogMethodZone
methodZoneBase: 1024
codeBase: 1024
lastNInstructions: an OrderedCollection()
simulatedAddresses: a Dictionary(#argumentCount->2147483708 \
#framePointer->2147...etc... simulatedTrampolines: a Dictionary()
simulatedVariableGetters: a Dictionary()
simulatedVariableSetters: a Dictionary()
printRegisters: false
printInstructions: false
compilationTrace: 0
clickConfirm: false
clickStepping: false
breakPC: nil
breakBlock: nil
singleStep: true
guardPageSize: 1024
traceFlags: 8
traceStores: 0
breakMethod: nil
methodObj: nil
enumeratingCogMethod: nil
methodHeader: nil
initialPC: 0
endPC: nil
methodOrBlockNumArgs: nil
inBlock: nil
needsFrame: nil
hasYoungReferent: nil
hasMovableLiteral: nil
primitiveIndex: nil
backEnd: a CogARMv8Compiler
literalsManager: an OutOfLineLiteralsManagerFor64Bits
methodLabel: a CogARMv8Compiler (Label 0 @3E8)
stackCheckLabel: nil
blockEntryLabel: nil
blockEntryNoContextSwitch: nil
blockNoContextSwitchOffset: nil
stackOverflowCall: nil
sendMiss: nil
missOffset: nil
entryPointMask: nil
checkedEntryAlignment: nil
uncheckedEntryAlignment: nil
cmEntryOffset: nil
entry: nil
cmNoCheckEntryOffset: nil
noCheckEntry: nil
fullBlockEntry: nil
cbEntryOffset: nil
fullBlockNoContextSwitchEntry: nil
cbNoSwitchEntryOffset: nil
picMNUAbort: nil
picInterpretAbort: nil
endCPICCase0: nil
endCPICCase1: nil
firstCPICCaseOffset: nil
cPICCaseSize: nil
cPICEndSize: nil
closedPICSize: nil
openPICSize: nil
fixups: a CArrayAccessor on: {a CogSSBytecodeFixup ( 0) . a CogSSBytecodeFixup \
...etc... abstractOpcodes: a CArrayAccessor on: {a CogARMv8Compiler \
(MovePerfCnt64RRL @3E...etc... generatorTable: a CArrayAccessor on: {a \
CogBytecodeDescriptor (genPushReceiverVariableBytecode...etc... byte0: nil
byte1: nil
byte2: nil
byte3: nil
bytecodePC: nil
bytecodeSetOffset: nil
opcodeIndex: 3
numAbstractOpcodes: 4
blockStarts: nil
blockCount: nil
labelCounter: 0
cStackAlignment: 16
expectedSPAlignment: 0
expectedFPAlignment: 0
codeModified: nil
maxLitIndex: nil
ceMethodAbortTrampoline: nil
cePICAbortTrampoline: nil
ceCheckForInterruptTrampoline: nil
ceCPICMissTrampoline: nil
ceReturnToInterpreterTrampoline: nil
ceBaseFrameReturnTrampoline: nil
ceReapAndResetErrorCodeTrampoline: nil
ceSendMustBeBooleanAddTrueTrampoline: nil
ceSendMustBeBooleanAddFalseTrampoline: nil
ceCannotResumeTrampoline: nil
ceEnterCogCodePopReceiverReg: nil
ceCallCogCodePopReceiverReg: nil
ceCallCogCodePopReceiverAndClassRegs: nil
cePrimReturnEnterCogCode: nil
cePrimReturnEnterCogCodeProfiling: nil
ceNonLocalReturnTrampoline: nil
ceFetchContextInstVarTrampoline: nil
ceStoreContextInstVarTrampoline: nil
ceEnclosingObjectTrampoline: nil
ceFlushDCache: nil
ceFlushICache: nil
ceTraceLinkedSendTrampoline: nil
ceTraceBlockActivationTrampoline: nil
ceTraceStoreTrampoline: nil
ceGetFP: nil
ceGetSP: nil
ceCaptureCStackPointers: nil
ceInvokeInterpret: nil
ordinarySendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
superSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
directedSuperSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
directedSuperBindingSendTrampolines: a CArrayAccessor on: #(nil nil nil nil)
dynamicSuperSendTrampolines: nil
outerSendTrampolines: nil
selfSendTrampolines: nil
firstSend: nil
lastSend: nil
realCEEnterCogCodePopReceiverReg: nil
realCECallCogCodePopReceiverReg: nil
realCECallCogCodePopReceiverAndClassRegs: nil
trampolineTableIndex: 0
trampolineAddresses: a CArrayAccessor on: #(nil nil nil nil nil nil nil nil \
nil...etc... objectReferencesInRuntime: a CArrayAccessor on: #()
runtimeObjectRefIndex: 0
cFramePointerInUse: nil
ceTryLockVMOwner: nil
extA: 0
extB: 0
numExtB: 0
tempOop: nil
numIRCs: nil
indexOfIRC: nil
theIRCs: nil
receiverTags: nil
implicitReceiverSendTrampolines: nil
cogMethodSurrogateClass: CogMethodSurrogate32
cogBlockMethodSurrogateClass: CogBlockMethodSurrogate32
nsSendCacheSurrogateClass: NSSendCacheSurrogate32
cPICPrototype: nil
cPICEndOfCodeOffset: nil
cPICEndOfCodeLabel: nil
ceMallocTrampoline: nil
ceFreeTrampoline: nil
ceFFICalloutTrampoline: nil
debugBytecodePointers: a Set()
debugOpcodeIndices: a Set()
disassemblingMethod: nil
cogConstituentIndex: nil
directedSendUsesBinding: false
processorFrameValid: false
codeToDataDelta: 0
varBaseAddress: 2097156
codeZoneIsExecutableNotWritable: false
debugAPISelector: nil
shortCutTrampolineBlocks: an \
IdentityDictionary(#ceShortCutTraceBlockActivation:...etc... ioHighResClock: nil
perMethodProfile: nil
instructionProfile: nil
primitiveGeneratorTable: a CArrayAccessor on: {a CogPrimitiveDescriptor . a \
CogPrimitiveDescriptor...etc... introspectionDataIndex: nil
introspectionData: nil
prevBCDescriptor: nil
numPushNilsFunction: #squeakV3orSistaV1:Num:Push:Nils:
pushNilSizeFunction: #squeakV3orSistaV1PushNilSize:numInitialNils:
methodOrBlockNumTemps: nil
regArgsHaveBeenPushed: nil
simStack: a CArrayAccessor on: {a CogSimStackEntry . a CogSimStackEntry . a \
CogSimStackEntry...etc... simStackPtr: nil
simSpillBase: nil
ceCallCogCodePopReceiverArg0Regs: nil
ceCallCogCodePopReceiverArg1Arg0Regs: nil
methodAbortTrampolines: a CArrayAccessor on: #(nil nil nil nil)
picAbortTrampolines: a CArrayAccessor on: #(nil nil nil nil)
picMissTrampolines: a CArrayAccessor on: #(nil nil nil nil)
ceCall0ArgsPIC: nil
ceCall1ArgsPIC: nil
ceCall2ArgsPIC: nil
debugStackPointers: nil
debugFixupBreaks: a Set()
realCECallCogCodePopReceiverArg0Regs: nil
realCECallCogCodePopReceiverArg1Arg0Regs: nil
deadCode: nil
useTwoPaths: nil
currentCallCleanUpSize: nil
simNativeStack: a CArrayAccessor on: {a CogSimStackNativeEntry . a \
CogSimStackNativeEntry...etc... simNativeStackPtr: nil
simNativeSpillBase: nil
simNativeStackSize: nil
hasNativeFrame: nil
compilationPass: nil
[] in StackToRegisterMappingCogit class(Cogit class)>>initializedInstanceForTests:
Receiver: StackToRegisterMappingCogit
Arguments and temporary variables:
optionsDictionaryOrArray: #(#ObjectMemory #Spur32BitCoMemoryManager \
#MULTIPLEBYTECODESETS...etc... cogit: a StackToRegisterMappingCogit
coInterpreter: a CurrentImageCoInterpreterFacadeForSpurObjectRepresentation
rumpStackSize: 4096
Receiver's instance variables:
superclass: SimpleStackBasedCogit
methodDict: a MethodDictionary(size 607)
format: 65731
instanceVariables: #('prevBCDescriptor' 'numPushNilsFunction' \
'pushNilSizeFunct...etc... organization: ('accessing' simSelf)
('bytecode generator stores' \
genGenericStorePop:MaybeContextSlotIndex:needsStoreCheck:needsRestoreRcvr:needsImmutabilityCheck:...etc...
subclasses: {RegisterAllocatingCogit . SistaCogit . \
StackToRegisterMappingCogitChecker...etc... name: #StackToRegisterMappingCogit
classPool: a Dictionary(#NeedsMergeFixupFlag->nil #NeedsNonMergeFixupFlag->nil \
...etc... sharedPools: an OrderedCollection(CogCompilationConstants \
VMMethodCacheConstants...etc... environment: Smalltalk
category: #'VMMaker-JIT'
timeStamp: 3873888354
generatorTable: a CArrayAccessor on: {a CogBytecodeDescriptor \
(genPushReceiverVariableBytecode...etc... primitiveTable: a CArrayAccessor on: {a \
CogPrimitiveDescriptor . a CogPrimitiveDescriptor...etc... numPushNilsFunction: \
#squeakV3orSistaV1:Num:Push:Nils: pushNilSizeFunction: \
#squeakV3orSistaV1PushNilSize:numInitialNils:
FullBlockClosure(BlockClosure)>>on:do:
Receiver: [closure] in StackToRegisterMappingCogit class(Cogit \
class)>>initializedInstanceForTests: Arguments and temporary variables:
exceptionOrExceptionSet: Notification
handlerAction: [closure] in StackToRegisterMappingCogit class(Cogit \
class)>>initializedInstanceForTests:...etc... handlerActive: true
handlerRearmed: false
Receiver's instance variables:
outerContext: StackToRegisterMappingCogit class(Cogit \
class)>>initializedInstanceForTests:...etc... startpcOrMethod: ([] in Cogit \
class>>#initializedInstanceForTests: "a CompiledBlock...etc... numArgs: 0
receiver: StackToRegisterMappingCogit
StackToRegisterMappingCogit class(Cogit class)>>initializedInstanceForTests:
Receiver: StackToRegisterMappingCogit
Arguments and temporary variables:
optionsDictionaryOrArray: #(#ObjectMemory #Spur32BitCoMemoryManager \
#MULTIPLEBYTECODESETS...etc... cogit: a StackToRegisterMappingCogit
coInterpreter: a CurrentImageCoInterpreterFacadeForSpurObjectRepresentation
Receiver's instance variables:
superclass: SimpleStackBasedCogit
methodDict: a MethodDictionary(size 607)
format: 65731
instanceVariables: #('prevBCDescriptor' 'numPushNilsFunction' \
'pushNilSizeFunct...etc... organization: ('accessing' simSelf)
('bytecode generator stores' \
genGenericStorePop:MaybeContextSlotIndex:needsStoreCheck:needsRestoreRcvr:needsImmutabilityCheck:...etc...
subclasses: {RegisterAllocatingCogit . SistaCogit . \
StackToRegisterMappingCogitChecker...etc... name: #StackToRegisterMappingCogit
classPool: a Dictionary(#NeedsMergeFixupFlag->nil #NeedsNonMergeFixupFlag->nil \
...etc... sharedPools: an OrderedCollection(CogCompilationConstants \
VMMethodCacheConstants...etc... environment: Smalltalk
category: #'VMMaker-JIT'
timeStamp: 3873888354
generatorTable: a CArrayAccessor on: {a CogBytecodeDescriptor \
(genPushReceiverVariableBytecode...etc... primitiveTable: a CArrayAccessor on: {a \
CogPrimitiveDescriptor . a CogPrimitiveDescriptor...etc... numPushNilsFunction: \
#squeakV3orSistaV1:Num:Push:Nils: pushNilSizeFunction: \
#squeakV3orSistaV1PushNilSize:numInitialNils:
StackToRegisterMappingCogit class(Cogit class)>>cog:selectorOrNumCopied:options:
Receiver: StackToRegisterMappingCogit
Arguments and temporary variables:
aCompiledMethod: (SequenceableCollection>>#indexOf:startingAt:ifAbsent: "a \
CompiledMethod...etc... selectorOrNumCopied: #indexOf:startingAt:ifAbsent:
optionsDictionaryOrArray: #(#ObjectMemory #Spur32BitCoMemoryManager \
#MULTIPLEBYTECODESETS...etc... cogit: nil
coInterpreter: nil
Receiver's instance variables:
superclass: SimpleStackBasedCogit
methodDict: a MethodDictionary(size 607)
format: 65731
instanceVariables: #('prevBCDescriptor' 'numPushNilsFunction' \
'pushNilSizeFunct...etc... organization: ('accessing' simSelf)
('bytecode generator stores' \
genGenericStorePop:MaybeContextSlotIndex:needsStoreCheck:needsRestoreRcvr:needsImmutabilityCheck:...etc...
subclasses: {RegisterAllocatingCogit . SistaCogit . \
StackToRegisterMappingCogitChecker...etc... name: #StackToRegisterMappingCogit
classPool: a Dictionary(#NeedsMergeFixupFlag->nil #NeedsNonMergeFixupFlag->nil \
...etc... sharedPools: an OrderedCollection(CogCompilationConstants \
VMMethodCacheConstants...etc... environment: Smalltalk
category: #'VMMaker-JIT'
timeStamp: 3873888354
generatorTable: a CArrayAccessor on: {a CogBytecodeDescriptor \
(genPushReceiverVariableBytecode...etc... primitiveTable: a CArrayAccessor on: {a \
CogPrimitiveDescriptor . a CogPrimitiveDescriptor...etc... numPushNilsFunction: \
#squeakV3orSistaV1:Num:Push:Nils: pushNilSizeFunction: \
#squeakV3orSistaV1PushNilSize:numInitialNils:
StackToRegisterMappingCogit class(Cogit class)>>genAndDis:options:
Receiver: StackToRegisterMappingCogit
Arguments and temporary variables:
methodOrDoitString: (SequenceableCollection>>#indexOf:startingAt:ifAbsent: "a \
CompiledMethod...etc... optionsDictionaryOrArray: #(#ObjectMemory \
#Spur32BitCoMemoryManager #MULTIPLEBYTECODESETS...etc... tuple: nil
Receiver's instance variables:
superclass: SimpleStackBasedCogit
methodDict: a MethodDictionary(size 607)
format: 65731
instanceVariables: #('prevBCDescriptor' 'numPushNilsFunction' \
'pushNilSizeFunct...etc... organization: ('accessing' simSelf)
('bytecode generator stores' \
genGenericStorePop:MaybeContextSlotIndex:needsStoreCheck:needsRestoreRcvr:needsImmutabilityCheck:...etc...
subclasses: {RegisterAllocatingCogit . SistaCogit . \
StackToRegisterMappingCogitChecker...etc... name: #StackToRegisterMappingCogit
classPool: a Dictionary(#NeedsMergeFixupFlag->nil #NeedsNonMergeFixupFlag->nil \
...etc... sharedPools: an OrderedCollection(CogCompilationConstants \
VMMethodCacheConstants...etc... environment: Smalltalk
category: #'VMMaker-JIT'
timeStamp: 3873888354
generatorTable: a CArrayAccessor on: {a CogBytecodeDescriptor \
(genPushReceiverVariableBytecode...etc... primitiveTable: a CArrayAccessor on: {a \
CogPrimitiveDescriptor . a CogPrimitiveDescriptor...etc... numPushNilsFunction: \
#squeakV3orSistaV1:Num:Push:Nils: pushNilSizeFunction: \
#squeakV3orSistaV1PushNilSize:numInitialNils:
UndefinedObject>>DoIt
Receiver: nil
Arguments and temporary variables:
Receiver's instance variables:
nil
Compiler>>evaluateCue:ifFail:
Receiver: a Compiler
Arguments and temporary variables:
aCue: a CompilationCue
failBlock: [closure] in Compiler>>evaluateCue:ifFail:logged:
methodNode: DoIt
^ StackToRegisterMappingCogit genAndDis: SequenceableCollecti...etc...
method: (UndefinedObject>>#DoIt "a CompiledMethod(87723)")
value: nil
Receiver's instance variables:
parser: a Parser
cue: a CompilationCue
Compiler>>evaluateCue:ifFail:logged:
Receiver: a Compiler
Arguments and temporary variables:
aCue: a CompilationCue
failBlock: [closure] in [] in \
SmalltalkEditor(TextEditor)>>evaluateSelectionAndDo:...etc... logFlag: true
value: nil
Receiver's instance variables:
parser: a Parser
cue: a CompilationCue
Compiler>>evaluate:in:to:environment:notifying:ifFail:logged:
Receiver: a Compiler
Arguments and temporary variables:
textOrStream: a ReadStream
aContext: nil
receiver: nil
anEnvironment: Smalltalk
aRequestor: a SmalltalkEditor
failBlock: [closure] in [] in \
SmalltalkEditor(TextEditor)>>evaluateSelectionAndDo:...etc... logFlag: true
Receiver's instance variables:
parser: a Parser
cue: a CompilationCue
--- The full stack ---
SmallInteger(Object)>>error:
...etc...
["0001-NOT-FOR-UPSTREAM-Make-AArch64-simulation-plugin-to-c.patch" (text/x-patch)]
From 3cda06bd83a0f040ef87758176b49982ea3be618 Mon Sep 17 00:00:00 2001
From: Jan Vrany <jan.vrany@labware.com>
Date: Wed, 4 Oct 2023 16:19:54 +0100
Subject: [PATCH] [NOT FOR UPSTREAM] Make AArch64 simulation plugin to compile
on Linux
This commit contains wild hacks to make AArch64 simulation to - at least -
compile on Linux. Almost certainly break things on macOS.
---
building/linux64x64/gdbarm64/conf.COG | 2 +-
building/linux64x64/squeak.cog.spur/build/mvm | 2 +-
.../Cross/plugins/GdbARMv8Plugin/sqGdbARMv8Plugin.c | 7 ++++---
platforms/unix/plugins/GdbARMv8Plugin/Makefile.inc | 11 +++++++++--
4 files changed, 15 insertions(+), 7 deletions(-)
diff --git a/building/linux64x64/gdbarm64/conf.COG \
b/building/linux64x64/gdbarm64/conf.COG index 5c22bba27..6b2f12bc1 100755
--- a/building/linux64x64/gdbarm64/conf.COG
+++ b/building/linux64x64/gdbarm64/conf.COG
@@ -1,6 +1,6 @@
#!/bin/sh
S=../../../../processors/ARM/gdb-8.3.1
-export CFLAGS="-g -O2 -m64 -DCOG=1 -DWORDS_BIGENDIAN=0"
+export CFLAGS="-g -O2 -m64 -DCOG=1 -DWORDS_BIGENDIAN=0 -fPIC"
CONFFLAGS='--target=aarch64-linux --with-system-zlib=yes'
mkdir -p bfd gdb libiberty opcodes sim/common sim/aarch64
for d in bfd gdb libiberty opcodes; do
diff --git a/building/linux64x64/squeak.cog.spur/build/mvm \
b/building/linux64x64/squeak.cog.spur/build/mvm index d7486aa28..ec6ad99cc 100755
--- a/building/linux64x64/squeak.cog.spur/build/mvm
+++ b/building/linux64x64/squeak.cog.spur/build/mvm
@@ -18,7 +18,7 @@ esac
# Prefer clang over gcc, but use gcc if clang isn't available...
CC=gcc
-if [ -x /usr/bin/clang ]; then CC=clang; fi
+#if [ -x /usr/bin/clang ]; then CC=clang; fi
if [ $# -ge 1 ]; then
INSTALLDIR="$1"; shift
diff --git a/platforms/Cross/plugins/GdbARMv8Plugin/sqGdbARMv8Plugin.c \
b/platforms/Cross/plugins/GdbARMv8Plugin/sqGdbARMv8Plugin.c index \
cdb22e0d4..b5e3b06d2 100755
--- a/platforms/Cross/plugins/GdbARMv8Plugin/sqGdbARMv8Plugin.c
+++ b/platforms/Cross/plugins/GdbARMv8Plugin/sqGdbARMv8Plugin.c
@@ -1,9 +1,6 @@
#define COG 1
#define FOR_COG_PLUGIN 1
-#include "sqAssert.h"
-#include "GdbARMv8Plugin.h"
-
#include <stdarg.h>
#include <aarch64/config.h>
@@ -24,6 +21,10 @@
#include "sqSetjmpShim.h"
+#include "GdbARMv8Plugin.h"
+#include "sqAssert.h"
+
+
struct sim_state *lastCPU = NULL;
sim_cpu initialSimState = {0,};
diff --git a/platforms/unix/plugins/GdbARMv8Plugin/Makefile.inc \
b/platforms/unix/plugins/GdbARMv8Plugin/Makefile.inc index 268645bb7..37bf16949 \
100755
--- a/platforms/unix/plugins/GdbARMv8Plugin/Makefile.inc
+++ b/platforms/unix/plugins/GdbARMv8Plugin/Makefile.inc
@@ -1,10 +1,17 @@
GDBBUILDFOLDER = ../../../gdbarm64
-GDBSOURCEFOLDER = ../../../../processors/ARM/gdb-8.3.1
+GDBSOURCEFOLDER = ../../../../../processors/ARM/gdb-8.3.1
XINCLUDES += -I$(GDBSOURCEFOLDER)/include
+XINCLUDES += -I$(GDBSOURCEFOLDER)/sim/common
XINCLUDES += -I$(GDBSOURCEFOLDER)/sim/aarch64
+XINCLUDES += -I$(GDBSOURCEFOLDER)/opcodes
+
+XINCLUDES += -I$(GDBBUILDFOLDER)/sim
+XINCLUDES += -I$(GDBBUILDFOLDER)/bfd
XLDFLAGS= $(GDBBUILDFOLDER)/sim/aarch64/libsim.a \
$(GDBBUILDFOLDER)/opcodes/libopcodes.a \
- -lbfd -liberty \
+ $(GDBBUILDFOLDER)/bfd/libbfd.a \
+ $(GDBBUILDFOLDER)/libiberty/libiberty.a \
+ -lz \
-Wl
--
2.40.1
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic