[squeak-dev] More than 256 literals referenced

David T. Lewis lewis at mail.msen.com
Fri Mar 15 18:30:19 UTC 2013


On Thu, Mar 14, 2013 at 10:28:06AM -0700, Eliot Miranda wrote:
> Hi David,
> 
>     one thing you can do is make that large brace expression a set of
> literal arrays.  e.g.
> 

Good idea, thank you!

Dave


> installSS := Installer ss.
> installSqueak := Installer squeak.
> "Use the following array of arrays to reduce total number of literals
> is this script, allows log message for each package load."
> {
> { installSS . 'Speech' . 'SharedPool-Speech' } .
> { installSqueak . 'FFI' . 'FFI-Pools' } .
> { installSS . 'Alien' . 'Alien' } .
> { installSqueak . 'VMMaker' . 'Balloon-Engine-Pools' } .
> { installSqueak . 'VMMaker' . vmmBranch } .
> { installSqueak . 'VMMaker' . 'Cog' } .
> { installSS . 'Alien' . 'Alien-VMMaker-Plugins' } .
> { installSS . 'OSProcessPlugin' . osppBranch } .
> { installSS . 'AioPlugin' . 'VMConstruction-Plugins-AioPlugin' } .
> { installSS . 'XDCP' . 'VMConstruction-Plugins-XDisplayControlPlugin' } .
> { installSS . 'Balloon3D' . 'Balloon3D-Constants' } .
> { installSS . 'Balloon3D' . 'Balloon3D-Plugins' } .
> { installSS . 'FreeTypePlus' . 'FreeType' } .
> { installSS . 'FreetypePlugin' . 'Freetype-Plugin' } .
> { installSS . 'dbus' . 'DBus-Plugin' } .
> { installSS . 'Rome' . 'Rome-Base' } .
> { installSS . 'Rome' . 'Rome-PluginCanvas' } .
> { installSS . 'Rome' . 'Rome-Plugin' }
> } do: [ :package |
> log value: 'install ', package third.
> (package first project: package second) install: package third.
> ].
> 
> =>
> "Use the following array of arrays to reduce total number of literals
> is this script, allows log message for each package load."
> #(
> #( ss 'Speech' 'SharedPool-Speech' )
> #( squeak 'FFI' 'FFI-Pools' )
> #( ss 'Alien' 'Alien' )
> #( squeak 'VMMaker' 'Balloon-Engine-Pools' )
> #( squeak 'VMMaker' vmmBranch )
> #( squeak 'VMMaker' 'Cog' )
> #( ss 'Alien' 'Alien-VMMaker-Plugins' )
> #( ss 'OSProcessPlugin' osppBranch )
> #( ss 'AioPlugin' 'VMConstruction-Plugins-AioPlugin' )
> #( ss 'XDCP' 'VMConstruction-Plugins-XDisplayControlPlugin' )
> #( ss 'Balloon3D' 'Balloon3D-Constants' )
> #( ss 'Balloon3D' 'Balloon3D-Plugins' )
> #( ss 'FreeTypePlus' 'FreeType' )
> #( ss 'FreetypePlugin' 'Freetype-Plugin' )
> #( ss 'dbus' 'DBus-Plugin' )
> #( ss 'Rome' 'Rome-Base' )
> #( ss 'Rome' 'Rome-PluginCanvas' )
> #( ss 'Rome' 'Rome-Plugin' )
> ) do: [ :package |
> log value: 'install ', package third.
> ((Installer perform: package first) project: package second) install:
> package third.
> ].
> 
> On Wed, Mar 13, 2013 at 4:48 PM, David T. Lewis <lewis at mail.msen.com> wrote:
> 
> > Something changed in trunk a couple of days ago that results in a 'More
> > than
> > 256 literals referenced' error in a filein script that previously did not
> > display this problem (see attached). It does not seem to be anything in the
> > Compiler package (I reverted back a half dozen versions, no change), so I'm
> > looking at the CI builds for reference. The problem appears in the image
> > from
> > SqueakTrunk build #213 and later, and is not  present in the image from
> > build #212 and earlier.
> >
> > I spotted the problem in the CogVM build job, which has been failing for a
> > couple of days. The failures are due to the above issue, and the script
> > file
> > that fails on filein is
> > http://build.squeak.org/job/CogVM/ws/VMCogUnixBuild.st
> > The problem showed up in the CogVM job by coincidence and is not related to
> > the VM.
> >
> > Filing this VMCogUnixBuild.st into an updated trunk image will reproduce
> > the problem.
> >
> > Dave
> >
> 
> 
> However, I have an instruction set that lifts the 256 literal limit to
> 65535 ;)
> 
> -- 
> best,
> Eliot

> 



More information about the Squeak-dev mailing list