On Wed, Dec 7, 2016 at 9:52 AM, Marcus Denker <[email protected]> wrote:
> Hello, > > The current bytecode limited the size of jumps. > > This means that you will get this error if your mehthods are so complex > that they > require a jump too large. > > Solution: refactor to simplify. > > We should improve the error message to explain that. > > (this will not happen anymore when the new bytecode set gets adopted). > Forgive me being pedantic, but it will simply be much less likely. The limit is raised to +/- 32k bytes, but one can still construct methods that will hit these limits. On 7 Dec 2016, at 12:14, Davide Varvello via Pharo-dev < > [email protected]> wrote: > > > *From: *Davide Varvello <[email protected]> > *Subject: **genJumpLong: distance index 1043 is out of range -1024 to > 1023* > *Date: *7 December 2016 at 12:14:35 GMT-3 > *To: *[email protected] > > > Hi, > > Sometimes (and also today) after formatting and saving a method, an Error > is > thrown. > Following a chunk of PharoDebug.log > > TIA > Davide > > > --------------------- > THERE_BE_DRAGONS_HERE > Error: genJumpLong: distance index 1043 is out of range -1024 to 1023 > 7 December 2016 4:21:53.0426 pm > > VM: Mac OS - intel - 1096 - CoInterpreter > VMMaker.oscog-HolgerHansPeterFreyther.1880 uuid: > 16138eb3-2390-40f5-a6c8-15f0494936f8 Sep 30 2016 > StackToRegisterMappingCogit VMMaker.oscog-HolgerHansPeterFreyther.1880 > uuid: > 16138eb3-2390-40f5-a6c8-15f0494936f8 Sep 30 2016 > https://github.com/pharo-project/pharo-vm.git Commit: > 06744effac0f0aa3b4b32e17636448f9d51d6707 Date: 2016-09-30 08:40:43 +0200 > By: > GitHub <[email protected]> Jenkins build #603 > > Image: Pharo5.0 [Latest update: #50763] > > OpalEncoderForV3PlusClosures(Object)>>error: > Receiver: an OpalEncoderForV3PlusClosures > Arguments and temporary variables: > aString: 'genJumpLong: distance index 1043 is out of range -1024 to 1023' > Receiver's instance variables: > stream: an IRBytecodeGenerator > position: nil > rootNode: nil > blockExtentsToLocals: nil > > > OpalEncoderForV3PlusClosures(OpalBytecodeEncoder)>> > outOfRangeError:index:range:to: > Receiver: an OpalEncoderForV3PlusClosures > Arguments and temporary variables: > string: 'distance' > index: 1043 > rangeStart: -1024 > rangeEnd: 1023 > Receiver's instance variables: > stream: an IRBytecodeGenerator > position: nil > rootNode: nil > blockExtentsToLocals: nil > > > OpalEncoderForV3PlusClosures(OpalEncoderForV3)>>genJumpLong: > Receiver: an OpalEncoderForV3PlusClosures > Arguments and temporary variables: > distance: 1043 > Receiver's instance variables: > stream: an IRBytecodeGenerator > position: nil > rootNode: nil > blockExtentsToLocals: nil > > > OpalEncoderForV3PlusClosures(OpalEncoderForV3)>>genJump: > Receiver: an OpalEncoderForV3PlusClosures > Arguments and temporary variables: > distance: 1043 > Receiver's instance variables: > stream: an IRBytecodeGenerator > position: nil > rootNode: nil > blockExtentsToLocals: nil > > > > -- > View this message in context: http://forum.world.st/ > genJumpLong-distance-index-1043-is-out-of-range-1024-to- > 1023-tp4926103.html > Sent from the Pharo Smalltalk Developers mailing list archive at > Nabble.com. > > > > > -- _,,,^..^,,,_ best, Eliot
