Eliot Miranda uploaded a new version of Cog to project VM Maker: http://source.squeak.org/VMMaker/Cog-eem.345.mcz ==================== Summary ==================== Name: Cog-eem.345 Author: eem Time: 23 January 2018, 9:10:01.471303 am UUID: b92c0ca1-65d9-4de7-8c50-52b425f75ba5 Ancestors: Cog-eem.344 Add the processor aliens when compiled in 64-bits for running on 64-bit Squeak Add a means for setting the name of the processor-specific ReceiverResultReg for decorating assembly with inst var names. =============== Diff against Cog-eem.344 =============== Item was added: + ----- Method: BochsIA32Alien class>>implementationClass (in category 'instance creation') ----- + implementationClass + ^Smalltalk wordSize = 8 ifTrue: [BochsIA32Alien64] ifFalse: [self]! Item was added: + BochsIA32Alien variableByteSubclass: #BochsIA32Alien64 + instanceVariableNames: '' + classVariableNames: '' + poolDictionaries: '' + category: 'Cog-Processors'! + + !BochsIA32Alien64 commentStamp: 'eem 12/5/2017 14:19' prior: 0! + I am a wrapper around the Bochs C++ IA32 CPU emulator when compiled in 64 bits. My superclass is the same but for 32 bits.! Item was added: + ----- Method: BochsIA32Alien64 class>>dataSize (in category 'instance creation') ----- + dataSize + ^26384! Item was added: + ----- Method: BochsIA32Alien64>>al (in category 'accessing') ----- + al + ^self unsignedByteAt: 477! Item was added: + ----- Method: BochsIA32Alien64>>al: (in category 'accessing') ----- + al: anUnsignedInteger + ^self unsignedByteAt: 477 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>bl (in category 'accessing') ----- + bl + ^self unsignedByteAt: 489! Item was added: + ----- Method: BochsIA32Alien64>>bl: (in category 'accessing') ----- + bl: anUnsignedInteger + ^self unsignedByteAt: 489 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>bpl (in category 'accessing') ----- + bpl + ^self unsignedByteAt: 497! Item was added: + ----- Method: BochsIA32Alien64>>bpl: (in category 'accessing') ----- + bpl: anUnsignedInteger + ^self unsignedByteAt: 497 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>cl (in category 'accessing') ----- + cl + ^self unsignedByteAt: 481! Item was added: + ----- Method: BochsIA32Alien64>>cl: (in category 'accessing') ----- + cl: anUnsignedInteger + ^self unsignedByteAt: 481 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>cr0 (in category 'accessing') ----- + cr0 + ^self unsignedLongLongAt: 1017! Item was added: + ----- Method: BochsIA32Alien64>>cr0: (in category 'accessing') ----- + cr0: anUnsignedInteger + ^self unsignedLongLongAt: 1017 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>cr1 (in category 'accessing') ----- + cr1 + ^self unsignedLongLongAt: 1021! Item was added: + ----- Method: BochsIA32Alien64>>cr1: (in category 'accessing') ----- + cr1: anUnsignedInteger + ^self unsignedLongLongAt: 1021 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>cr2 (in category 'accessing') ----- + cr2 + ^self unsignedLongLongAt: 1025! Item was added: + ----- Method: BochsIA32Alien64>>cr2: (in category 'accessing') ----- + cr2: anUnsignedInteger + ^self unsignedLongLongAt: 1025 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>cr3 (in category 'accessing') ----- + cr3 + ^self unsignedLongLongAt: 1029! Item was added: + ----- Method: BochsIA32Alien64>>cr3: (in category 'accessing') ----- + cr3: anUnsignedInteger + ^self unsignedLongLongAt: 1029 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>cr4 (in category 'accessing') ----- + cr4 + ^self unsignedLongLongAt: 1037! Item was added: + ----- Method: BochsIA32Alien64>>cr4: (in category 'accessing') ----- + cr4: anUnsignedInteger + ^self unsignedLongLongAt: 1037 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>dil (in category 'accessing') ----- + dil + ^self unsignedByteAt: 505! Item was added: + ----- Method: BochsIA32Alien64>>dil: (in category 'accessing') ----- + dil: anUnsignedInteger + ^self unsignedByteAt: 505 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>dl (in category 'accessing') ----- + dl + ^self unsignedByteAt: 485! Item was added: + ----- Method: BochsIA32Alien64>>dl: (in category 'accessing') ----- + dl: anUnsignedInteger + ^self unsignedByteAt: 485 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>eax (in category 'accessing') ----- + eax + ^self unsignedLongAt: 477! Item was added: + ----- Method: BochsIA32Alien64>>eax: (in category 'accessing') ----- + eax: anUnsignedInteger + ^self unsignedLongAt: 477 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>ebp (in category 'accessing') ----- + ebp + ^self unsignedLongAt: 497! Item was added: + ----- Method: BochsIA32Alien64>>ebp: (in category 'accessing') ----- + ebp: anUnsignedInteger + ^self unsignedLongAt: 497 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>ebx (in category 'accessing') ----- + ebx + ^self unsignedLongAt: 489! Item was added: + ----- Method: BochsIA32Alien64>>ebx: (in category 'accessing') ----- + ebx: anUnsignedInteger + ^self unsignedLongAt: 489 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>ecx (in category 'accessing') ----- + ecx + ^self unsignedLongAt: 481! Item was added: + ----- Method: BochsIA32Alien64>>ecx: (in category 'accessing') ----- + ecx: anUnsignedInteger + ^self unsignedLongAt: 481 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>edi (in category 'accessing') ----- + edi + ^self unsignedLongAt: 505! Item was added: + ----- Method: BochsIA32Alien64>>edi: (in category 'accessing') ----- + edi: anUnsignedInteger + ^self unsignedLongAt: 505 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>edx (in category 'accessing') ----- + edx + ^self unsignedLongAt: 485! Item was added: + ----- Method: BochsIA32Alien64>>edx: (in category 'accessing') ----- + edx: anUnsignedInteger + ^self unsignedLongAt: 485 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>eflags (in category 'accessing') ----- + eflags + ^self unsignedLongAt: 521! Item was added: + ----- Method: BochsIA32Alien64>>eip (in category 'accessing') ----- + eip + ^self unsignedLongAt: 509! Item was added: + ----- Method: BochsIA32Alien64>>eip: (in category 'accessing') ----- + eip: anUnsignedInteger + ^self unsignedLongAt: 509 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>esi (in category 'accessing') ----- + esi + ^self unsignedLongAt: 501! Item was added: + ----- Method: BochsIA32Alien64>>esi: (in category 'accessing') ----- + esi: anUnsignedInteger + ^self unsignedLongAt: 501 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>esp (in category 'accessing') ----- + esp + ^self unsignedLongAt: 493! Item was added: + ----- Method: BochsIA32Alien64>>esp: (in category 'accessing') ----- + esp: anUnsignedInteger + ^self unsignedLongAt: 493 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>ipl (in category 'accessing') ----- + ipl + ^self unsignedByteAt: 509! Item was added: + ----- Method: BochsIA32Alien64>>ipl: (in category 'accessing') ----- + ipl: anUnsignedInteger + ^self unsignedByteAt: 509 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>saveEip (in category 'accessing') ----- + saveEip + ^self unsignedLongAt: 1541! Item was added: + ----- Method: BochsIA32Alien64>>saveEip: (in category 'accessing') ----- + saveEip: anUnsignedInteger + ^self unsignedLongAt: 1541 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>saveEsp (in category 'accessing') ----- + saveEsp + ^self unsignedLongAt: 1545! Item was added: + ----- Method: BochsIA32Alien64>>saveEsp: (in category 'accessing') ----- + saveEsp: anUnsignedInteger + ^self unsignedLongAt: 1545 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>sil (in category 'accessing') ----- + sil + ^self unsignedByteAt: 501! Item was added: + ----- Method: BochsIA32Alien64>>sil: (in category 'accessing') ----- + sil: anUnsignedInteger + ^self unsignedByteAt: 501 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>spl (in category 'accessing') ----- + spl + ^self unsignedByteAt: 493! Item was added: + ----- Method: BochsIA32Alien64>>spl: (in category 'accessing') ----- + spl: anUnsignedInteger + ^self unsignedByteAt: 493 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>stopReason (in category 'accessing') ----- + stopReason + ^self unsignedByteAt: 1593! Item was added: + ----- Method: BochsIA32Alien64>>stopReason: (in category 'accessing') ----- + stopReason: anUnsignedInteger + ^self unsignedByteAt: 1593 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>xmm0high (in category 'accessing') ----- + xmm0high + ^self unsignedLongLongAt: 1193! Item was added: + ----- Method: BochsIA32Alien64>>xmm0high: (in category 'accessing') ----- + xmm0high: anUnsignedInteger + ^self unsignedLongLongAt: 1193 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>xmm0low (in category 'accessing') ----- + xmm0low + ^self unsignedLongLongAt: 1185! Item was added: + ----- Method: BochsIA32Alien64>>xmm0low: (in category 'accessing') ----- + xmm0low: anUnsignedInteger + ^self unsignedLongLongAt: 1185 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>xmm1high (in category 'accessing') ----- + xmm1high + ^self unsignedLongLongAt: 1209! Item was added: + ----- Method: BochsIA32Alien64>>xmm1high: (in category 'accessing') ----- + xmm1high: anUnsignedInteger + ^self unsignedLongLongAt: 1209 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>xmm1low (in category 'accessing') ----- + xmm1low + ^self unsignedLongLongAt: 1201! Item was added: + ----- Method: BochsIA32Alien64>>xmm1low: (in category 'accessing') ----- + xmm1low: anUnsignedInteger + ^self unsignedLongLongAt: 1201 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>xmm2high (in category 'accessing') ----- + xmm2high + ^self unsignedLongLongAt: 1225! Item was added: + ----- Method: BochsIA32Alien64>>xmm2high: (in category 'accessing') ----- + xmm2high: anUnsignedInteger + ^self unsignedLongLongAt: 1225 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>xmm2low (in category 'accessing') ----- + xmm2low + ^self unsignedLongLongAt: 1217! Item was added: + ----- Method: BochsIA32Alien64>>xmm2low: (in category 'accessing') ----- + xmm2low: anUnsignedInteger + ^self unsignedLongLongAt: 1217 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>xmm3high (in category 'accessing') ----- + xmm3high + ^self unsignedLongLongAt: 1241! Item was added: + ----- Method: BochsIA32Alien64>>xmm3high: (in category 'accessing') ----- + xmm3high: anUnsignedInteger + ^self unsignedLongLongAt: 1241 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>xmm3low (in category 'accessing') ----- + xmm3low + ^self unsignedLongLongAt: 1233! Item was added: + ----- Method: BochsIA32Alien64>>xmm3low: (in category 'accessing') ----- + xmm3low: anUnsignedInteger + ^self unsignedLongLongAt: 1233 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>xmm4high (in category 'accessing') ----- + xmm4high + ^self unsignedLongLongAt: 1257! Item was added: + ----- Method: BochsIA32Alien64>>xmm4high: (in category 'accessing') ----- + xmm4high: anUnsignedInteger + ^self unsignedLongLongAt: 1257 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>xmm4low (in category 'accessing') ----- + xmm4low + ^self unsignedLongLongAt: 1249! Item was added: + ----- Method: BochsIA32Alien64>>xmm4low: (in category 'accessing') ----- + xmm4low: anUnsignedInteger + ^self unsignedLongLongAt: 1249 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>xmm5high (in category 'accessing') ----- + xmm5high + ^self unsignedLongLongAt: 1273! Item was added: + ----- Method: BochsIA32Alien64>>xmm5high: (in category 'accessing') ----- + xmm5high: anUnsignedInteger + ^self unsignedLongLongAt: 1273 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>xmm5low (in category 'accessing') ----- + xmm5low + ^self unsignedLongLongAt: 1265! Item was added: + ----- Method: BochsIA32Alien64>>xmm5low: (in category 'accessing') ----- + xmm5low: anUnsignedInteger + ^self unsignedLongLongAt: 1265 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>xmm6high (in category 'accessing') ----- + xmm6high + ^self unsignedLongLongAt: 1289! Item was added: + ----- Method: BochsIA32Alien64>>xmm6high: (in category 'accessing') ----- + xmm6high: anUnsignedInteger + ^self unsignedLongLongAt: 1289 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>xmm6low (in category 'accessing') ----- + xmm6low + ^self unsignedLongLongAt: 1281! Item was added: + ----- Method: BochsIA32Alien64>>xmm6low: (in category 'accessing') ----- + xmm6low: anUnsignedInteger + ^self unsignedLongLongAt: 1281 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>xmm7high (in category 'accessing') ----- + xmm7high + ^self unsignedLongLongAt: 1305! Item was added: + ----- Method: BochsIA32Alien64>>xmm7high: (in category 'accessing') ----- + xmm7high: anUnsignedInteger + ^self unsignedLongLongAt: 1305 put: anUnsignedInteger! Item was added: + ----- Method: BochsIA32Alien64>>xmm7low (in category 'accessing') ----- + xmm7low + ^self unsignedLongLongAt: 1297! Item was added: + ----- Method: BochsIA32Alien64>>xmm7low: (in category 'accessing') ----- + xmm7low: anUnsignedInteger + ^self unsignedLongLongAt: 1297 put: anUnsignedInteger! Item was changed: CogProcessorAlien variableByteSubclass: #BochsX64Alien instanceVariableNames: '' classVariableNames: 'ExtendedOpcodeExceptionMap OpcodeExceptionMap PostBuildStackDelta' poolDictionaries: '' category: 'Cog-Processors'! + + !BochsX64Alien commentStamp: 'eem 12/5/2017 14:27' prior: 0! + I am a wrapper around the Bochs C++ x86_64 CPU emulator.! Item was added: + ----- Method: BochsX64Alien class>>implementationClass (in category 'instance creation') ----- + implementationClass + ^Smalltalk wordSize = 8 ifTrue: [BochsX64Alien64] ifFalse: [self]! Item was changed: ----- Method: BochsX64Alien>>decorateDisassembly:for:fromAddress: (in category 'disassembly') ----- decorateDisassembly: anInstructionString for: aSymbolManager "<Cogit>" fromAddress: address + | string i1 i2 v o extra | - | string i1 i2 v extra | string := PrintCodeBytes ifTrue: [anInstructionString] ifFalse: [anInstructionString copyFrom: 1 to: (anInstructionString lastIndexOf: $:) - 1]. "trailing space useful for parsing numbers" aSymbolManager relativeBaseForDisassemblyInto: [:baseAddress :baseName| string := baseName, '+', (address - baseAddress printStringBase: 16 length: 4 padded: true), (string copyFrom: (string indexOf: $:) + 1 to: string size)]. ((i1 := string indexOfSubCollection: '%ds:(') > 0 or: [(i1 := string indexOfSubCollection: '%ss:(') > 0]) ifTrue: [string := string copyReplaceFrom: i1 to: i1 + 3 with: '']. (i1 := string indexOfSubCollection: '%ds:0x') > 0 ifTrue: [i2 := i1 + 6. ['0123456789abcdef' includes: (string at: i2)] whileTrue: [i2 := i2 + 1]. (v := string copyFrom: i2 to: (i2 + 5 min: string size)) = '(%rbx)' ifTrue: + [o := Integer readFrom: (ReadStream on: string from: i1 + 6 to: i2 - 1) base: 16. + (aSymbolManager lookupAddress: aSymbolManager varBaseAddress + o) ifNotNil: - [v := Integer readFrom: (ReadStream on: string from: i1 + 6 to: i2 - 1) base: 16. - (aSymbolManager lookupAddress: aSymbolManager varBaseAddress + v) ifNotNil: [:varName| extra := ' = ', varName]]. v = '(%rip)' ifTrue: + [o := anInstructionString size - (anInstructionString lastIndexOf: $:) - 1 / 3. "Count number of instruction bytes to find size of instruction" + o := o + address. "Add address of instruction" + o := o + (Integer readFrom: (ReadStream on: string from: i1 + 6 to: i2 - 1) base: 16) signedIntFromLong64. "Add offset to yield pc-relative address" + (aSymbolManager lookupAddress: o) ifNotNil: - [v := anInstructionString size - (anInstructionString lastIndexOf: $:) - 1 / 3. "Count number of instruction bytes to find size of instruction" - v := v + address. "Add address of instruction" - v := v + (Integer readFrom: (ReadStream on: string from: i1 + 6 to: i2 - 1) base: 16) signedIntFromLong64. "Add offset to yield pc-relative address" - (aSymbolManager lookupAddress: v) ifNotNil: [:methodName| extra := ' = ', methodName]]. + v = ReceiverResultRegDereference ifTrue: + [o := Integer readFrom: (ReadStream on: string from: i1 + 6 to: i2 - 1) base: 16. + (aSymbolManager lookupInstVarOffset: o) ifNotNil: + [:varName| string := string copyReplaceFrom: i1 to: i2 - 1 with: varName,'@',o printString. i2 := 0]]. + i2 ~= 0 ifTrue: + [string := string + copyReplaceFrom: i1 + to: i2 - 1 + with: (aSymbolManager lookupCHexString: (string copyFrom: i1 + 4 to: i2 - 1))]]. - string := string - copyReplaceFrom: i1 - to: i2 - 1 - with: (aSymbolManager lookupCHexString: (string copyFrom: i1 + 4 to: i2 - 1))]. (i1 := string indexOfSubCollection: '%ss:0x') > 0 ifTrue: [i2 := i1 + 6. ['0123456789abcdef' includes: (string at: i2)] whileTrue: [i2 := i2 + 1]. ((string at: i2) = $( and: [(string at: i2 + 1) = $%]) ifTrue: + [o := Integer readFrom: (ReadStream on: string from: i1 + 6 to: i2 - 1) base: 16. + o := (o bitAnd: (1 bitShift: 31) - 1) - (o bitAnd: (1 bitShift: 31)). - [v := Integer readFrom: (ReadStream on: string from: i1 + 6 to: i2 - 1) base: 16. - v := (v bitAnd: (1 bitShift: 31) - 1) - (v bitAnd: (1 bitShift: 31)). ((string copyFrom: i2 to: (i2 + 5 min: string size)) = '(%rbp)' and: [PrintTempNames]) ifTrue: + [(aSymbolManager lookupFrameOffset: o) ifNotNil: + [:varName| string := string copyReplaceFrom: i1 to: i2 - 1 with: varName,'@',o printString. i2 := 0]. + i2 ~= 0 ifTrue: [string := string copyReplaceFrom: i1 to: i2 - 1 with: o printString]]]]. - [(aSymbolManager lookupFrameOffset: v) ifNotNil: - [:varName| string := string copyReplaceFrom: i1 to: i2 - 1 with: varName. i2 := 0]. - i2 ~= 0 ifTrue: [string := string copyReplaceFrom: i1 to: i2 - 1 with: v printString]]]]. (i1 := string indexOfSubCollection: '$0x') > 0 ifTrue: [i2 := i1 + 3. ['0123456789abcdef' includes: (string at: i2)] whileTrue: [i2 := i2 + 1]. string := string copyReplaceFrom: i1 + 1 to: i2 - 1 with: (aSymbolManager lookupCHexString: (string copyFrom: i1 + 1 to: i2 - 1))]. ((i1 := string indexOf: $() > 1 and: [(string at: i1 + 1) isDigit and: [i1 < (i2 := string indexOf: $))]]) ifTrue: [string := string copyReplaceFrom: i1 + 1 to: i2 - 1 with: (aSymbolManager lookupCHexString: (string copyFrom: i1 + 1 to: i2 - 1)). i1 := string indexOfSubCollection: '+0x'. "calls & jumps" i1 > 0 ifTrue: + [o := Integer readFrom: (i2 := ReadStream on: string from: i1 + 3 to: string size) base: 16. + o := ((o bitAnd: (1 bitShift: 63) - 1) - (o bitAnd: (1 bitShift: 63))) printStringRadix: 16. + o := o first = $1 + ifTrue: [o copyReplaceFrom: 1 to: 3 with: '+0x'] + ifFalse: [o copyReplaceFrom: 2 to: 4 with: '0x']. + string := string copyReplaceFrom: i1 to: i2 position with: o]]. - [v := Integer readFrom: (i2 := ReadStream on: string from: i1 + 3 to: string size) base: 16. - v := ((v bitAnd: (1 bitShift: 63) - 1) - (v bitAnd: (1 bitShift: 63))) printStringRadix: 16. - v := v first = $1 - ifTrue: [v copyReplaceFrom: 1 to: 3 with: '+0x'] - ifFalse: [v copyReplaceFrom: 2 to: 4 with: '0x']. - string := string copyReplaceFrom: i1 to: i2 position with: v]]. ^extra ifNil: [string] ifNotNil: [PrintCodeBytes ifTrue: [i1 := string lastIndexOf: $:. string copyReplaceFrom: i1 - 1 to: i1 - 2 with: extra] ifFalse: [string, ';', extra]]! Item was added: + BochsX64Alien variableByteSubclass: #BochsX64Alien64 + instanceVariableNames: '' + classVariableNames: '' + poolDictionaries: '' + category: 'Cog-Processors'! + + !BochsX64Alien64 commentStamp: 'eem 12/5/2017 14:27' prior: 0! + I am a wrapper around the Bochs C++ x86_64 CPU emulator when compiled in 64 bits. My superclass is the same but for 32 bits.! Item was added: + ----- Method: BochsX64Alien64 class>>dataSize (in category 'instance creation') ----- + dataSize + ^26960! Item was added: + ----- Method: BochsX64Alien64>>al (in category 'accessing') ----- + al + ^self unsignedByteAt: 481! Item was added: + ----- Method: BochsX64Alien64>>al: (in category 'accessing') ----- + al: anUnsignedInteger + ^self unsignedByteAt: 481 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>bl (in category 'accessing') ----- + bl + ^self unsignedByteAt: 505! Item was added: + ----- Method: BochsX64Alien64>>bl: (in category 'accessing') ----- + bl: anUnsignedInteger + ^self unsignedByteAt: 505 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>bpl (in category 'accessing') ----- + bpl + ^self unsignedByteAt: 521! Item was added: + ----- Method: BochsX64Alien64>>bpl: (in category 'accessing') ----- + bpl: anUnsignedInteger + ^self unsignedByteAt: 521 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>cl (in category 'accessing') ----- + cl + ^self unsignedByteAt: 489! Item was added: + ----- Method: BochsX64Alien64>>cl: (in category 'accessing') ----- + cl: anUnsignedInteger + ^self unsignedByteAt: 489 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>cr0 (in category 'accessing') ----- + cr0 + ^self unsignedLongLongAt: 1281! Item was added: + ----- Method: BochsX64Alien64>>cr0: (in category 'accessing') ----- + cr0: anUnsignedInteger + ^self unsignedLongLongAt: 1281 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>cr1 (in category 'accessing') ----- + cr1 + ^self unsignedLongLongAt: 1285! Item was added: + ----- Method: BochsX64Alien64>>cr1: (in category 'accessing') ----- + cr1: anUnsignedInteger + ^self unsignedLongLongAt: 1285 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>cr2 (in category 'accessing') ----- + cr2 + ^self unsignedLongLongAt: 1289! Item was added: + ----- Method: BochsX64Alien64>>cr2: (in category 'accessing') ----- + cr2: anUnsignedInteger + ^self unsignedLongLongAt: 1289 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>cr3 (in category 'accessing') ----- + cr3 + ^self unsignedLongLongAt: 1297! Item was added: + ----- Method: BochsX64Alien64>>cr3: (in category 'accessing') ----- + cr3: anUnsignedInteger + ^self unsignedLongLongAt: 1297 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>cr4 (in category 'accessing') ----- + cr4 + ^self unsignedLongLongAt: 1309! Item was added: + ----- Method: BochsX64Alien64>>cr4: (in category 'accessing') ----- + cr4: anUnsignedInteger + ^self unsignedLongLongAt: 1309 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>dil (in category 'accessing') ----- + dil + ^self unsignedByteAt: 537! Item was added: + ----- Method: BochsX64Alien64>>dil: (in category 'accessing') ----- + dil: anUnsignedInteger + ^self unsignedByteAt: 537 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>dl (in category 'accessing') ----- + dl + ^self unsignedByteAt: 497! Item was added: + ----- Method: BochsX64Alien64>>dl: (in category 'accessing') ----- + dl: anUnsignedInteger + ^self unsignedByteAt: 497 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>ipl (in category 'accessing') ----- + ipl + ^self unsignedByteAt: 609! Item was added: + ----- Method: BochsX64Alien64>>ipl: (in category 'accessing') ----- + ipl: anUnsignedInteger + ^self unsignedByteAt: 609 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>r10 (in category 'accessing') ----- + r10 + ^self unsignedLongLongAt: 561! Item was added: + ----- Method: BochsX64Alien64>>r10: (in category 'accessing') ----- + r10: anUnsignedInteger + ^self unsignedLongLongAt: 561 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>r10l (in category 'accessing') ----- + r10l + ^self unsignedByteAt: 561! Item was added: + ----- Method: BochsX64Alien64>>r10l: (in category 'accessing') ----- + r10l: anUnsignedInteger + ^self unsignedByteAt: 561 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>r11 (in category 'accessing') ----- + r11 + ^self unsignedLongLongAt: 569! Item was added: + ----- Method: BochsX64Alien64>>r11: (in category 'accessing') ----- + r11: anUnsignedInteger + ^self unsignedLongLongAt: 569 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>r11l (in category 'accessing') ----- + r11l + ^self unsignedByteAt: 569! Item was added: + ----- Method: BochsX64Alien64>>r11l: (in category 'accessing') ----- + r11l: anUnsignedInteger + ^self unsignedByteAt: 569 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>r12 (in category 'accessing') ----- + r12 + ^self unsignedLongLongAt: 577! Item was added: + ----- Method: BochsX64Alien64>>r12: (in category 'accessing') ----- + r12: anUnsignedInteger + ^self unsignedLongLongAt: 577 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>r12l (in category 'accessing') ----- + r12l + ^self unsignedByteAt: 577! Item was added: + ----- Method: BochsX64Alien64>>r12l: (in category 'accessing') ----- + r12l: anUnsignedInteger + ^self unsignedByteAt: 577 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>r13 (in category 'accessing') ----- + r13 + ^self unsignedLongLongAt: 585! Item was added: + ----- Method: BochsX64Alien64>>r13: (in category 'accessing') ----- + r13: anUnsignedInteger + ^self unsignedLongLongAt: 585 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>r13l (in category 'accessing') ----- + r13l + ^self unsignedByteAt: 585! Item was added: + ----- Method: BochsX64Alien64>>r13l: (in category 'accessing') ----- + r13l: anUnsignedInteger + ^self unsignedByteAt: 585 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>r14 (in category 'accessing') ----- + r14 + ^self unsignedLongLongAt: 593! Item was added: + ----- Method: BochsX64Alien64>>r14: (in category 'accessing') ----- + r14: anUnsignedInteger + ^self unsignedLongLongAt: 593 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>r14l (in category 'accessing') ----- + r14l + ^self unsignedByteAt: 593! Item was added: + ----- Method: BochsX64Alien64>>r14l: (in category 'accessing') ----- + r14l: anUnsignedInteger + ^self unsignedByteAt: 593 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>r15 (in category 'accessing') ----- + r15 + ^self unsignedLongLongAt: 601! Item was added: + ----- Method: BochsX64Alien64>>r15: (in category 'accessing') ----- + r15: anUnsignedInteger + ^self unsignedLongLongAt: 601 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>r15l (in category 'accessing') ----- + r15l + ^self unsignedByteAt: 601! Item was added: + ----- Method: BochsX64Alien64>>r15l: (in category 'accessing') ----- + r15l: anUnsignedInteger + ^self unsignedByteAt: 601 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>r8 (in category 'accessing') ----- + r8 + ^self unsignedLongLongAt: 545! Item was added: + ----- Method: BochsX64Alien64>>r8: (in category 'accessing') ----- + r8: anUnsignedInteger + ^self unsignedLongLongAt: 545 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>r8l (in category 'accessing') ----- + r8l + ^self unsignedByteAt: 545! Item was added: + ----- Method: BochsX64Alien64>>r8l: (in category 'accessing') ----- + r8l: anUnsignedInteger + ^self unsignedByteAt: 545 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>r9 (in category 'accessing') ----- + r9 + ^self unsignedLongLongAt: 553! Item was added: + ----- Method: BochsX64Alien64>>r9: (in category 'accessing') ----- + r9: anUnsignedInteger + ^self unsignedLongLongAt: 553 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>r9l (in category 'accessing') ----- + r9l + ^self unsignedByteAt: 553! Item was added: + ----- Method: BochsX64Alien64>>r9l: (in category 'accessing') ----- + r9l: anUnsignedInteger + ^self unsignedByteAt: 553 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>rax (in category 'accessing') ----- + rax + ^self unsignedLongLongAt: 481! Item was added: + ----- Method: BochsX64Alien64>>rax: (in category 'accessing') ----- + rax: anUnsignedInteger + ^self unsignedLongLongAt: 481 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>rbp (in category 'accessing') ----- + rbp + ^self unsignedLongLongAt: 521! Item was added: + ----- Method: BochsX64Alien64>>rbp: (in category 'accessing') ----- + rbp: anUnsignedInteger + ^self unsignedLongLongAt: 521 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>rbx (in category 'accessing') ----- + rbx + ^self unsignedLongLongAt: 505! Item was added: + ----- Method: BochsX64Alien64>>rbx: (in category 'accessing') ----- + rbx: anUnsignedInteger + ^self unsignedLongLongAt: 505 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>rcx (in category 'accessing') ----- + rcx + ^self unsignedLongLongAt: 489! Item was added: + ----- Method: BochsX64Alien64>>rcx: (in category 'accessing') ----- + rcx: anUnsignedInteger + ^self unsignedLongLongAt: 489 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>rdi (in category 'accessing') ----- + rdi + ^self unsignedLongLongAt: 537! Item was added: + ----- Method: BochsX64Alien64>>rdi: (in category 'accessing') ----- + rdi: anUnsignedInteger + ^self unsignedLongLongAt: 537 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>rdx (in category 'accessing') ----- + rdx + ^self unsignedLongLongAt: 497! Item was added: + ----- Method: BochsX64Alien64>>rdx: (in category 'accessing') ----- + rdx: anUnsignedInteger + ^self unsignedLongLongAt: 497 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>rflags (in category 'accessing') ----- + rflags + ^self unsignedLongLongAt: 633! Item was added: + ----- Method: BochsX64Alien64>>rip (in category 'accessing') ----- + rip + ^self unsignedLongLongAt: 609! Item was added: + ----- Method: BochsX64Alien64>>rip: (in category 'accessing') ----- + rip: anUnsignedInteger + ^self unsignedLongLongAt: 609 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>rsi (in category 'accessing') ----- + rsi + ^self unsignedLongLongAt: 529! Item was added: + ----- Method: BochsX64Alien64>>rsi: (in category 'accessing') ----- + rsi: anUnsignedInteger + ^self unsignedLongLongAt: 529 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>rsp (in category 'accessing') ----- + rsp + ^self unsignedLongLongAt: 513! Item was added: + ----- Method: BochsX64Alien64>>rsp: (in category 'accessing') ----- + rsp: anUnsignedInteger + ^self unsignedLongLongAt: 513 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>saveEip (in category 'accessing') ----- + saveEip + ^self unsignedLongAt: 1985! Item was added: + ----- Method: BochsX64Alien64>>saveEip: (in category 'accessing') ----- + saveEip: anUnsignedInteger + ^self unsignedLongAt: 1985 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>saveEsp (in category 'accessing') ----- + saveEsp + ^self unsignedLongAt: 1993! Item was added: + ----- Method: BochsX64Alien64>>saveEsp: (in category 'accessing') ----- + saveEsp: anUnsignedInteger + ^self unsignedLongAt: 1993 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>sil (in category 'accessing') ----- + sil + ^self unsignedByteAt: 529! Item was added: + ----- Method: BochsX64Alien64>>sil: (in category 'accessing') ----- + sil: anUnsignedInteger + ^self unsignedByteAt: 529 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>spl (in category 'accessing') ----- + spl + ^self unsignedByteAt: 513! Item was added: + ----- Method: BochsX64Alien64>>spl: (in category 'accessing') ----- + spl: anUnsignedInteger + ^self unsignedByteAt: 513 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>stopReason (in category 'accessing') ----- + stopReason + ^self unsignedByteAt: 2057! Item was added: + ----- Method: BochsX64Alien64>>stopReason: (in category 'accessing') ----- + stopReason: anUnsignedInteger + ^self unsignedByteAt: 2057 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm0high (in category 'accessing') ----- + xmm0high + ^self unsignedLongLongAt: 1481! Item was added: + ----- Method: BochsX64Alien64>>xmm0high: (in category 'accessing') ----- + xmm0high: anUnsignedInteger + ^self unsignedLongLongAt: 1481 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm0low (in category 'accessing') ----- + xmm0low + ^self unsignedLongLongAt: 1473! Item was added: + ----- Method: BochsX64Alien64>>xmm0low: (in category 'accessing') ----- + xmm0low: anUnsignedInteger + ^self unsignedLongLongAt: 1473 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm10high (in category 'accessing') ----- + xmm10high + ^self unsignedLongLongAt: 1641! Item was added: + ----- Method: BochsX64Alien64>>xmm10high: (in category 'accessing') ----- + xmm10high: anUnsignedInteger + ^self unsignedLongLongAt: 1641 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm10low (in category 'accessing') ----- + xmm10low + ^self unsignedLongLongAt: 1633! Item was added: + ----- Method: BochsX64Alien64>>xmm10low: (in category 'accessing') ----- + xmm10low: anUnsignedInteger + ^self unsignedLongLongAt: 1633 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm11high (in category 'accessing') ----- + xmm11high + ^self unsignedLongLongAt: 1657! Item was added: + ----- Method: BochsX64Alien64>>xmm11high: (in category 'accessing') ----- + xmm11high: anUnsignedInteger + ^self unsignedLongLongAt: 1657 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm11low (in category 'accessing') ----- + xmm11low + ^self unsignedLongLongAt: 1649! Item was added: + ----- Method: BochsX64Alien64>>xmm11low: (in category 'accessing') ----- + xmm11low: anUnsignedInteger + ^self unsignedLongLongAt: 1649 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm12high (in category 'accessing') ----- + xmm12high + ^self unsignedLongLongAt: 1673! Item was added: + ----- Method: BochsX64Alien64>>xmm12high: (in category 'accessing') ----- + xmm12high: anUnsignedInteger + ^self unsignedLongLongAt: 1673 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm12low (in category 'accessing') ----- + xmm12low + ^self unsignedLongLongAt: 1665! Item was added: + ----- Method: BochsX64Alien64>>xmm12low: (in category 'accessing') ----- + xmm12low: anUnsignedInteger + ^self unsignedLongLongAt: 1665 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm13high (in category 'accessing') ----- + xmm13high + ^self unsignedLongLongAt: 1689! Item was added: + ----- Method: BochsX64Alien64>>xmm13high: (in category 'accessing') ----- + xmm13high: anUnsignedInteger + ^self unsignedLongLongAt: 1689 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm13low (in category 'accessing') ----- + xmm13low + ^self unsignedLongLongAt: 1681! Item was added: + ----- Method: BochsX64Alien64>>xmm13low: (in category 'accessing') ----- + xmm13low: anUnsignedInteger + ^self unsignedLongLongAt: 1681 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm14high (in category 'accessing') ----- + xmm14high + ^self unsignedLongLongAt: 1705! Item was added: + ----- Method: BochsX64Alien64>>xmm14high: (in category 'accessing') ----- + xmm14high: anUnsignedInteger + ^self unsignedLongLongAt: 1705 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm14low (in category 'accessing') ----- + xmm14low + ^self unsignedLongLongAt: 1697! Item was added: + ----- Method: BochsX64Alien64>>xmm14low: (in category 'accessing') ----- + xmm14low: anUnsignedInteger + ^self unsignedLongLongAt: 1697 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm15high (in category 'accessing') ----- + xmm15high + ^self unsignedLongLongAt: 1721! Item was added: + ----- Method: BochsX64Alien64>>xmm15high: (in category 'accessing') ----- + xmm15high: anUnsignedInteger + ^self unsignedLongLongAt: 1721 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm15low (in category 'accessing') ----- + xmm15low + ^self unsignedLongLongAt: 1713! Item was added: + ----- Method: BochsX64Alien64>>xmm15low: (in category 'accessing') ----- + xmm15low: anUnsignedInteger + ^self unsignedLongLongAt: 1713 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm1high (in category 'accessing') ----- + xmm1high + ^self unsignedLongLongAt: 1497! Item was added: + ----- Method: BochsX64Alien64>>xmm1high: (in category 'accessing') ----- + xmm1high: anUnsignedInteger + ^self unsignedLongLongAt: 1497 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm1low (in category 'accessing') ----- + xmm1low + ^self unsignedLongLongAt: 1489! Item was added: + ----- Method: BochsX64Alien64>>xmm1low: (in category 'accessing') ----- + xmm1low: anUnsignedInteger + ^self unsignedLongLongAt: 1489 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm2high (in category 'accessing') ----- + xmm2high + ^self unsignedLongLongAt: 1513! Item was added: + ----- Method: BochsX64Alien64>>xmm2high: (in category 'accessing') ----- + xmm2high: anUnsignedInteger + ^self unsignedLongLongAt: 1513 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm2low (in category 'accessing') ----- + xmm2low + ^self unsignedLongLongAt: 1505! Item was added: + ----- Method: BochsX64Alien64>>xmm2low: (in category 'accessing') ----- + xmm2low: anUnsignedInteger + ^self unsignedLongLongAt: 1505 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm3high (in category 'accessing') ----- + xmm3high + ^self unsignedLongLongAt: 1529! Item was added: + ----- Method: BochsX64Alien64>>xmm3high: (in category 'accessing') ----- + xmm3high: anUnsignedInteger + ^self unsignedLongLongAt: 1529 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm3low (in category 'accessing') ----- + xmm3low + ^self unsignedLongLongAt: 1521! Item was added: + ----- Method: BochsX64Alien64>>xmm3low: (in category 'accessing') ----- + xmm3low: anUnsignedInteger + ^self unsignedLongLongAt: 1521 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm4high (in category 'accessing') ----- + xmm4high + ^self unsignedLongLongAt: 1545! Item was added: + ----- Method: BochsX64Alien64>>xmm4high: (in category 'accessing') ----- + xmm4high: anUnsignedInteger + ^self unsignedLongLongAt: 1545 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm4low (in category 'accessing') ----- + xmm4low + ^self unsignedLongLongAt: 1537! Item was added: + ----- Method: BochsX64Alien64>>xmm4low: (in category 'accessing') ----- + xmm4low: anUnsignedInteger + ^self unsignedLongLongAt: 1537 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm5high (in category 'accessing') ----- + xmm5high + ^self unsignedLongLongAt: 1561! Item was added: + ----- Method: BochsX64Alien64>>xmm5high: (in category 'accessing') ----- + xmm5high: anUnsignedInteger + ^self unsignedLongLongAt: 1561 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm5low (in category 'accessing') ----- + xmm5low + ^self unsignedLongLongAt: 1553! Item was added: + ----- Method: BochsX64Alien64>>xmm5low: (in category 'accessing') ----- + xmm5low: anUnsignedInteger + ^self unsignedLongLongAt: 1553 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm6high (in category 'accessing') ----- + xmm6high + ^self unsignedLongLongAt: 1577! Item was added: + ----- Method: BochsX64Alien64>>xmm6high: (in category 'accessing') ----- + xmm6high: anUnsignedInteger + ^self unsignedLongLongAt: 1577 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm6low (in category 'accessing') ----- + xmm6low + ^self unsignedLongLongAt: 1569! Item was added: + ----- Method: BochsX64Alien64>>xmm6low: (in category 'accessing') ----- + xmm6low: anUnsignedInteger + ^self unsignedLongLongAt: 1569 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm7high (in category 'accessing') ----- + xmm7high + ^self unsignedLongLongAt: 1593! Item was added: + ----- Method: BochsX64Alien64>>xmm7high: (in category 'accessing') ----- + xmm7high: anUnsignedInteger + ^self unsignedLongLongAt: 1593 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm7low (in category 'accessing') ----- + xmm7low + ^self unsignedLongLongAt: 1585! Item was added: + ----- Method: BochsX64Alien64>>xmm7low: (in category 'accessing') ----- + xmm7low: anUnsignedInteger + ^self unsignedLongLongAt: 1585 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm8high (in category 'accessing') ----- + xmm8high + ^self unsignedLongLongAt: 1609! Item was added: + ----- Method: BochsX64Alien64>>xmm8high: (in category 'accessing') ----- + xmm8high: anUnsignedInteger + ^self unsignedLongLongAt: 1609 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm8low (in category 'accessing') ----- + xmm8low + ^self unsignedLongLongAt: 1601! Item was added: + ----- Method: BochsX64Alien64>>xmm8low: (in category 'accessing') ----- + xmm8low: anUnsignedInteger + ^self unsignedLongLongAt: 1601 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm9high (in category 'accessing') ----- + xmm9high + ^self unsignedLongLongAt: 1625! Item was added: + ----- Method: BochsX64Alien64>>xmm9high: (in category 'accessing') ----- + xmm9high: anUnsignedInteger + ^self unsignedLongLongAt: 1625 put: anUnsignedInteger! Item was added: + ----- Method: BochsX64Alien64>>xmm9low (in category 'accessing') ----- + xmm9low + ^self unsignedLongLongAt: 1617! Item was added: + ----- Method: BochsX64Alien64>>xmm9low: (in category 'accessing') ----- + xmm9low: anUnsignedInteger + ^self unsignedLongLongAt: 1617 put: anUnsignedInteger! Item was changed: Alien variableByteSubclass: #CogProcessorAlien instanceVariableNames: '' + classVariableNames: 'PrintCodeBytes PrintTempNames ReceiverResultRegDereference SavedState' - classVariableNames: 'PrintCodeBytes PrintTempNames SavedState' poolDictionaries: '' category: 'Cog-Processors'! !CogProcessorAlien commentStamp: 'lw 8/23/2012 19:15' prior: 0! I am the superclass for the Simulation CPU instance wrappers. I ensure that methods used in both/all of them need not be copied.! Item was added: + ----- Method: CogProcessorAlien class>>implementationClass (in category 'instance creation') ----- + implementationClass + ^self subclassResponsibility! Item was changed: ----- Method: CogProcessorAlien class>>new (in category 'instance creation') ----- new + ^(self implementationClass atAddress: self primitiveNewCPU) reset! - ^(self atAddress: self primitiveNewCPU) reset! Item was added: + ----- Method: CogProcessorAlien class>>setReceiverResultReg: (in category 'accessing') ----- + setReceiverResultReg: integerOrNil + ReceiverResultRegDereference := integerOrNil ifNotNil: ['(%', (self basicNew registerStateGetters at: integerOrNil + 1), ')']! Item was added: + ----- Method: GdbARMAlien class>>implementationClass (in category 'instance creation') ----- + implementationClass + ^Smalltalk wordSize = 8 ifTrue: [GdbARMAlien64] ifFalse: [self]! Item was added: + GdbARMAlien variableByteSubclass: #GdbARMAlien64 + instanceVariableNames: '' + classVariableNames: '' + poolDictionaries: '' + category: 'Cog-Processors'! + + !GdbARMAlien64 commentStamp: 'eem 1/23/2018 08:47' prior: 0! + I a wrapper around the ARMulator ARMv6 CPU emulator when compiled in 64 bits. My superclass is the same but for 32 bits.! Item was added: + ----- Method: GdbARMAlien64 class>>dataSize (in category 'instance creation') ----- + dataSize + ^2576! Item was added: + ----- Method: GdbARMAlien64>>d0 (in category 'accessing') ----- + d0 + ^self unsignedLongLongAt: 2313! Item was added: + ----- Method: GdbARMAlien64>>d0: (in category 'accessing') ----- + d0: anUnsignedInteger + ^self unsignedLongLongAt: 2313 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d1 (in category 'accessing') ----- + d1 + ^self unsignedLongLongAt: 2321! Item was added: + ----- Method: GdbARMAlien64>>d10 (in category 'accessing') ----- + d10 + ^self unsignedLongLongAt: 2393! Item was added: + ----- Method: GdbARMAlien64>>d10: (in category 'accessing') ----- + d10: anUnsignedInteger + ^self unsignedLongLongAt: 2393 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d11 (in category 'accessing') ----- + d11 + ^self unsignedLongLongAt: 2401! Item was added: + ----- Method: GdbARMAlien64>>d11: (in category 'accessing') ----- + d11: anUnsignedInteger + ^self unsignedLongLongAt: 2401 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d12 (in category 'accessing') ----- + d12 + ^self unsignedLongLongAt: 2409! Item was added: + ----- Method: GdbARMAlien64>>d12: (in category 'accessing') ----- + d12: anUnsignedInteger + ^self unsignedLongLongAt: 2409 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d13 (in category 'accessing') ----- + d13 + ^self unsignedLongLongAt: 2417! Item was added: + ----- Method: GdbARMAlien64>>d13: (in category 'accessing') ----- + d13: anUnsignedInteger + ^self unsignedLongLongAt: 2417 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d14 (in category 'accessing') ----- + d14 + ^self unsignedLongLongAt: 2425! Item was added: + ----- Method: GdbARMAlien64>>d14: (in category 'accessing') ----- + d14: anUnsignedInteger + ^self unsignedLongLongAt: 2425 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d15 (in category 'accessing') ----- + d15 + ^self unsignedLongLongAt: 2433! Item was added: + ----- Method: GdbARMAlien64>>d15: (in category 'accessing') ----- + d15: anUnsignedInteger + ^self unsignedLongLongAt: 2433 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d16 (in category 'accessing') ----- + d16 + ^self unsignedLongLongAt: 2441! Item was added: + ----- Method: GdbARMAlien64>>d16: (in category 'accessing') ----- + d16: anUnsignedInteger + ^self unsignedLongLongAt: 2441 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d17 (in category 'accessing') ----- + d17 + ^self unsignedLongLongAt: 2449! Item was added: + ----- Method: GdbARMAlien64>>d17: (in category 'accessing') ----- + d17: anUnsignedInteger + ^self unsignedLongLongAt: 2449 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d18 (in category 'accessing') ----- + d18 + ^self unsignedLongLongAt: 2457! Item was added: + ----- Method: GdbARMAlien64>>d18: (in category 'accessing') ----- + d18: anUnsignedInteger + ^self unsignedLongLongAt: 2457 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d19 (in category 'accessing') ----- + d19 + ^self unsignedLongLongAt: 2465! Item was added: + ----- Method: GdbARMAlien64>>d19: (in category 'accessing') ----- + d19: anUnsignedInteger + ^self unsignedLongLongAt: 2465 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d1: (in category 'accessing') ----- + d1: anUnsignedInteger + ^self unsignedLongLongAt: 2321 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d2 (in category 'accessing') ----- + d2 + ^self unsignedLongLongAt: 2329! Item was added: + ----- Method: GdbARMAlien64>>d20 (in category 'accessing') ----- + d20 + ^self unsignedLongLongAt: 2473! Item was added: + ----- Method: GdbARMAlien64>>d20: (in category 'accessing') ----- + d20: anUnsignedInteger + ^self unsignedLongLongAt: 2473 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d21 (in category 'accessing') ----- + d21 + ^self unsignedLongLongAt: 2481! Item was added: + ----- Method: GdbARMAlien64>>d21: (in category 'accessing') ----- + d21: anUnsignedInteger + ^self unsignedLongLongAt: 2481 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d22 (in category 'accessing') ----- + d22 + ^self unsignedLongLongAt: 2489! Item was added: + ----- Method: GdbARMAlien64>>d22: (in category 'accessing') ----- + d22: anUnsignedInteger + ^self unsignedLongLongAt: 2489 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d23 (in category 'accessing') ----- + d23 + ^self unsignedLongLongAt: 2497! Item was added: + ----- Method: GdbARMAlien64>>d23: (in category 'accessing') ----- + d23: anUnsignedInteger + ^self unsignedLongLongAt: 2497 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d24 (in category 'accessing') ----- + d24 + ^self unsignedLongLongAt: 2505! Item was added: + ----- Method: GdbARMAlien64>>d24: (in category 'accessing') ----- + d24: anUnsignedInteger + ^self unsignedLongLongAt: 2505 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d25 (in category 'accessing') ----- + d25 + ^self unsignedLongLongAt: 2513! Item was added: + ----- Method: GdbARMAlien64>>d25: (in category 'accessing') ----- + d25: anUnsignedInteger + ^self unsignedLongLongAt: 2513 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d26 (in category 'accessing') ----- + d26 + ^self unsignedLongLongAt: 2521! Item was added: + ----- Method: GdbARMAlien64>>d26: (in category 'accessing') ----- + d26: anUnsignedInteger + ^self unsignedLongLongAt: 2521 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d27 (in category 'accessing') ----- + d27 + ^self unsignedLongLongAt: 2529! Item was added: + ----- Method: GdbARMAlien64>>d27: (in category 'accessing') ----- + d27: anUnsignedInteger + ^self unsignedLongLongAt: 2529 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d28 (in category 'accessing') ----- + d28 + ^self unsignedLongLongAt: 2537! Item was added: + ----- Method: GdbARMAlien64>>d28: (in category 'accessing') ----- + d28: anUnsignedInteger + ^self unsignedLongLongAt: 2537 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d29 (in category 'accessing') ----- + d29 + ^self unsignedLongLongAt: 2545! Item was added: + ----- Method: GdbARMAlien64>>d29: (in category 'accessing') ----- + d29: anUnsignedInteger + ^self unsignedLongLongAt: 2545 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d2: (in category 'accessing') ----- + d2: anUnsignedInteger + ^self unsignedLongLongAt: 2329 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d3 (in category 'accessing') ----- + d3 + ^self unsignedLongLongAt: 2337! Item was added: + ----- Method: GdbARMAlien64>>d30 (in category 'accessing') ----- + d30 + ^self unsignedLongLongAt: 2553! Item was added: + ----- Method: GdbARMAlien64>>d30: (in category 'accessing') ----- + d30: anUnsignedInteger + ^self unsignedLongLongAt: 2553 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d31 (in category 'accessing') ----- + d31 + ^self unsignedLongLongAt: 2561! Item was added: + ----- Method: GdbARMAlien64>>d31: (in category 'accessing') ----- + d31: anUnsignedInteger + ^self unsignedLongLongAt: 2561 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d3: (in category 'accessing') ----- + d3: anUnsignedInteger + ^self unsignedLongLongAt: 2337 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d4 (in category 'accessing') ----- + d4 + ^self unsignedLongLongAt: 2345! Item was added: + ----- Method: GdbARMAlien64>>d4: (in category 'accessing') ----- + d4: anUnsignedInteger + ^self unsignedLongLongAt: 2345 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d5 (in category 'accessing') ----- + d5 + ^self unsignedLongLongAt: 2353! Item was added: + ----- Method: GdbARMAlien64>>d5: (in category 'accessing') ----- + d5: anUnsignedInteger + ^self unsignedLongLongAt: 2353 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d6 (in category 'accessing') ----- + d6 + ^self unsignedLongLongAt: 2361! Item was added: + ----- Method: GdbARMAlien64>>d6: (in category 'accessing') ----- + d6: anUnsignedInteger + ^self unsignedLongLongAt: 2361 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d7 (in category 'accessing') ----- + d7 + ^self unsignedLongLongAt: 2369! Item was added: + ----- Method: GdbARMAlien64>>d7: (in category 'accessing') ----- + d7: anUnsignedInteger + ^self unsignedLongLongAt: 2369 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d8 (in category 'accessing') ----- + d8 + ^self unsignedLongLongAt: 2377! Item was added: + ----- Method: GdbARMAlien64>>d8: (in category 'accessing') ----- + d8: anUnsignedInteger + ^self unsignedLongLongAt: 2377 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>d9 (in category 'accessing') ----- + d9 + ^self unsignedLongLongAt: 2385! Item was added: + ----- Method: GdbARMAlien64>>d9: (in category 'accessing') ----- + d9: anUnsignedInteger + ^self unsignedLongLongAt: 2385 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>lr (in category 'accessing') ----- + lr + ^self unsignedLongAt: 69! Item was added: + ----- Method: GdbARMAlien64>>lr: (in category 'accessing') ----- + lr: anUnsignedInteger + ^self unsignedLongAt: 69 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>pc (in category 'accessing') ----- + pc + ^self unsignedLongAt: 73! Item was added: + ----- Method: GdbARMAlien64>>pc: (in category 'accessing') ----- + pc: anUnsignedInteger + ^self unsignedLongAt: 73 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>r0 (in category 'accessing') ----- + r0 + ^self unsignedLongAt: 13! Item was added: + ----- Method: GdbARMAlien64>>r0: (in category 'accessing') ----- + r0: anUnsignedInteger + ^self unsignedLongAt: 13 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>r1 (in category 'accessing') ----- + r1 + ^self unsignedLongAt: 17! Item was added: + ----- Method: GdbARMAlien64>>r10 (in category 'accessing') ----- + r10 + ^self unsignedLongAt: 53! Item was added: + ----- Method: GdbARMAlien64>>r10: (in category 'accessing') ----- + r10: anUnsignedInteger + ^self unsignedLongAt: 53 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>r11 (in category 'accessing') ----- + r11 + ^self unsignedLongAt: 57! Item was added: + ----- Method: GdbARMAlien64>>r11: (in category 'accessing') ----- + r11: anUnsignedInteger + ^self unsignedLongAt: 57 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>r12 (in category 'accessing') ----- + r12 + ^self unsignedLongAt: 61! Item was added: + ----- Method: GdbARMAlien64>>r12: (in category 'accessing') ----- + r12: anUnsignedInteger + ^self unsignedLongAt: 61 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>r1: (in category 'accessing') ----- + r1: anUnsignedInteger + ^self unsignedLongAt: 17 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>r2 (in category 'accessing') ----- + r2 + ^self unsignedLongAt: 21! Item was added: + ----- Method: GdbARMAlien64>>r2: (in category 'accessing') ----- + r2: anUnsignedInteger + ^self unsignedLongAt: 21 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>r3 (in category 'accessing') ----- + r3 + ^self unsignedLongAt: 25! Item was added: + ----- Method: GdbARMAlien64>>r3: (in category 'accessing') ----- + r3: anUnsignedInteger + ^self unsignedLongAt: 25 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>r4 (in category 'accessing') ----- + r4 + ^self unsignedLongAt: 29! Item was added: + ----- Method: GdbARMAlien64>>r4: (in category 'accessing') ----- + r4: anUnsignedInteger + ^self unsignedLongAt: 29 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>r5 (in category 'accessing') ----- + r5 + ^self unsignedLongAt: 33! Item was added: + ----- Method: GdbARMAlien64>>r5: (in category 'accessing') ----- + r5: anUnsignedInteger + ^self unsignedLongAt: 33 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>r6 (in category 'accessing') ----- + r6 + ^self unsignedLongAt: 37! Item was added: + ----- Method: GdbARMAlien64>>r6: (in category 'accessing') ----- + r6: anUnsignedInteger + ^self unsignedLongAt: 37 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>r7 (in category 'accessing') ----- + r7 + ^self unsignedLongAt: 41! Item was added: + ----- Method: GdbARMAlien64>>r7: (in category 'accessing') ----- + r7: anUnsignedInteger + ^self unsignedLongAt: 41 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>r8 (in category 'accessing') ----- + r8 + ^self unsignedLongAt: 45! Item was added: + ----- Method: GdbARMAlien64>>r8: (in category 'accessing') ----- + r8: anUnsignedInteger + ^self unsignedLongAt: 45 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>r9 (in category 'accessing') ----- + r9 + ^self unsignedLongAt: 49! Item was added: + ----- Method: GdbARMAlien64>>r9: (in category 'accessing') ----- + r9: anUnsignedInteger + ^self unsignedLongAt: 49 put: anUnsignedInteger! Item was added: + ----- Method: GdbARMAlien64>>sp (in category 'accessing') ----- + sp + ^self unsignedLongAt: 65! Item was added: + ----- Method: GdbARMAlien64>>sp: (in category 'accessing') ----- + sp: anUnsignedInteger + ^self unsignedLongAt: 65 put: anUnsignedInteger! |
Free forum by Nabble | Edit this page |