[Pkg] The Trunk: EToys-eem.291.mcz

commits at source.squeak.org commits at source.squeak.org
Wed Apr 5 00:55:25 UTC 2017


Eliot Miranda uploaded a new version of EToys to project The Trunk:
http://source.squeak.org/trunk/EToys-eem.291.mcz

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

Name: EToys-eem.291
Author: eem
Time: 4 April 2017, 5:55:00.217947 pm
UUID: c62015f2-3ec7-4885-a001-f7b39758b4d5
Ancestors: EToys-eem.290

Remove more unused cruft from EToys kernel and compiler classes.

=============== Diff against EToys-eem.290 ===============

Item was removed:
- ----- Method: CompiledMethod>>qDecompress: (in category '*Etoys-Squeakland-source code management') -----
- qDecompress: byteArray
- 	"Decompress strings compressed by qCompress:.
- 	Most common 12 chars get values 0-11 packed in one 4-bit nibble;
- 	others get values 12-15 (2 bits) * 16 plus next nibble"
- 	|  charTable extended ext |
- 	charTable :=  "Character encoding table must match qCompress:"
- 	' eatrnoislcm bdfghjkpquvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'.
- 	^ String streamContents:
- 		[:strm | extended := false.  "Flag for 2-nibble characters"
- 		byteArray do:
- 			[:byte | 
- 			(Array with: byte//16 with: byte\\16)
- 				do:
- 				[:nibble | extended
- 					ifTrue: [strm nextPut: (charTable at: ext*16+nibble + 1). extended := false]
- 					ifFalse: [nibble < 12 ifTrue: [strm nextPut: (charTable at: nibble + 1)]
- 									ifFalse: [ext := nibble-12.  extended := true]]]]]!

Item was removed:
- ----- Method: CompiledMethod>>scanLongLoad: (in category '*Etoys-Squeakland-scanning') -----
- scanLongLoad: extension 
- 	"Answer whether the receiver contains a long load whose extension is the 
- 	argument."
- 
- 	| scanner |
- 	scanner := InstructionStream on: self.
- 	^scanner scanFor: [:instr | instr = 128 and: [scanner followingByte = extension]]!

Item was removed:
- ----- Method: CompiledMethod>>scanLongStore: (in category '*Etoys-Squeakland-scanning') -----
- scanLongStore: extension 
- 	"Answer whether the receiver contains a long store whose extension is 
- 	the argument."
- 	| scanner |
- 	scanner := InstructionStream on: self.
- 	^scanner scanFor: 
- 		[:instr |  (instr = 129 or: [instr = 130]) and: [scanner followingByte = extension]]!

Item was removed:
- ----- Method: CompiledMethod>>scanVeryLongLoad:offset: (in category '*Etoys-Squeakland-scanning') -----
- scanVeryLongLoad: extension offset: offset
- 	"Answer whether the receiver contains a long load whose extension is the 
- 	argument."
- 	| scanner |
- 	scanner := InstructionStream on: self.
- 	^ scanner scanFor: [:instr | (instr = 132 and: [scanner followingByte = extension])
- 											and: [scanner thirdByte = offset]]!

Item was removed:
- ----- Method: Decompiler>>checkForBlock: (in category '*Etoys-Squeakland-control') -----
- checkForBlock: receiver
- 	"We just saw a blockCopy: message. Check for a following block."
- 
- 	| savePc jump args argPos block |
- 	receiver == constructor codeThisContext ifFalse: [^false].
- 	savePc := pc.
- 	(jump := self interpretJump) notNil
- 		ifFalse:
- 			[pc := savePc.  ^nil].
- 	"Definitely a block"
- 	jump := jump + pc.
- 	argPos := statements size.
- 	[self willStorePop]
- 		whileTrue:
- 			[stack addLast: ArgumentFlag.  "Flag for doStore:"
- 			self interpretNextInstructionFor: self].
- 	args := Array new: statements size - argPos.
- 	1 to: args size do:  "Retrieve args"
- 		[:i | args at: i put: statements removeLast.
- 		(args at: i) scope: -1  "flag args as block temps"].
- 	block := self blockTo: jump.
- 	stack addLast: (constructor codeArguments: args block: block).
- 	^true!

Item was removed:
- ----- Method: InstructionStream>>interpretExtension:in:for: (in category '*Etoys-Squeakland-private') -----
- interpretExtension: offset in: method for: client
- 	| type offset2 byte2 byte3 |
- 	offset <=6 ifTrue: 
- 		["Extended op codes 128-134"
- 		byte2 := method at: pc.
- 		pc := pc + 1.
- 		offset <= 2 ifTrue:
- 			["128-130:  extended pushes and pops"
- 			type := byte2 // 64.
- 			offset2 := byte2 \\ 64.
- 			offset = 0 ifTrue: 
- 				[type = 0 ifTrue: [^ client pushReceiverVariable: offset2].
- 				type = 1 ifTrue: [^ client pushTemporaryVariable: offset2].
- 				type = 2  ifTrue: [^ client pushConstant: (method literalAt: offset2 + 1)].
- 				type = 3 ifTrue: [^ client pushLiteralVariable: (method literalAt: offset2 + 1)]].
- 			offset = 1 ifTrue: 
- 				[type = 0 ifTrue: [^ client storeIntoReceiverVariable: offset2].
- 				type = 1 ifTrue: [^ client storeIntoTemporaryVariable: offset2].
- 				type = 2 ifTrue: [self error: 'illegalStore'].
- 				type = 3 ifTrue: [^ client storeIntoLiteralVariable: (method literalAt: offset2 + 1)]].
- 			offset = 2 ifTrue: 
- 				[type = 0 ifTrue: [^ client popIntoReceiverVariable: offset2].
- 				type = 1 ifTrue: [^ client popIntoTemporaryVariable: offset2].
- 				type = 2 ifTrue: [self error: 'illegalStore'].
- 				type = 3  ifTrue: [^ client popIntoLiteralVariable: (method literalAt: offset2 + 1)]]].
- 		"131-134: extended sends"
- 		offset = 3 ifTrue:  "Single extended send"
- 			[^ client send: (method literalAt: byte2 \\ 32 + 1)
- 					super: false numArgs: byte2 // 32].
- 		offset = 4 ifTrue:    "Double extended do-anything"
- 			[byte3 := method at: pc.  pc := pc + 1.
- 			type := byte2 // 32.
- 			type = 0 ifTrue: [^ client send: (method literalAt: byte3 + 1)
- 									super: false numArgs: byte2 \\ 32].
- 			type = 1 ifTrue: [^ client send: (method literalAt: byte3 + 1)
- 									super: true numArgs: byte2 \\ 32].
- 			type = 2 ifTrue: [^ client pushReceiverVariable: byte3].
- 			type = 3 ifTrue: [^ client pushConstant: (method literalAt: byte3 + 1)].
- 			type = 4 ifTrue: [^ client pushLiteralVariable: (method literalAt: byte3 + 1)].
- 			type = 5 ifTrue: [^ client storeIntoReceiverVariable: byte3].
- 			type = 6 ifTrue: [^ client popIntoReceiverVariable: byte3].
- 			type = 7 ifTrue: [^ client storeIntoLiteralVariable: (method literalAt: byte3 + 1)]].
- 		offset = 5 ifTrue:  "Single extended send to super"
- 			[^ client send: (method literalAt: byte2 \\ 32 + 1)
- 					super: true numArgs: byte2 // 32].
- 		offset = 6 ifTrue:   "Second extended send"
- 			[^ client send: (method literalAt: byte2 \\ 64 + 1)
- 					super: false numArgs: byte2 // 64]].
- 	offset = 7 ifTrue: [^ client doPop].
- 	offset = 8 ifTrue: [^ client doDup].
- 	offset = 9 ifTrue: [^ client pushActiveContext].
- 	self error: 'unusedBytecode'!



More information about the Packages mailing list