I tried
http://mfrouter.dyndns.org/Exupery_VM.7z but nothing happened. I am making an assembler in Dolphin Smalltalk. It is trying to do all the addressing modes. It is part of the picoLARC project on SourceForge.net but the assembler stuff is not uploaded yet. It uses a Lispy syntax that looks like ( add ( into:From: EAX ( at ( + EBP 4 ) ) ) ) or ( add ( into:From: EAX ( at ( scale:index:base: 4 EBX EBP ) ) ) ) or ( push ( at EBP ) ) Doing it this way seems to minimize the compiling complexity. Plus it can participate in the picoLARC OOP macro system. Your Exupery way is more like regular assembler. It's brief and that's nice. But you also do long function names for machine language instructions which is good. All the addressing modes are mostly finished coding but untested. I would like to use Exupery to test against my picoLARC assembler. If possible. _______________________________________________ Exupery mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery |
Kjell Godo schrieb:
> I tried > http://mfrouter.dyndns.org/Exupery_VM.7z > but nothing happened. 1.) did you have an image with the exupery mcz loaded? 2.) did you do Exupery initialiseExupery? 3.) did the benchmarks also say nothing happened? Regards, Markus _______________________________________________ Exupery mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery |
In reply to this post by Kjell Godo
Kjell Godo writes:
> I tried > http://mfrouter.dyndns.org/Exupery_VM.7z > but nothing happened. > > I am making an assembler in Dolphin Smalltalk. It is trying to do all > the addressing modes. It is part of the picoLARC project on > SourceForge.net but the assembler stuff is not uploaded yet. It uses > a Lispy syntax that looks like > ( add ( into:From: EAX ( at ( + EBP 4 ) ) ) ) > or > ( add ( into:From: EAX ( at ( scale:index:base: 4 EBX EBP ) ) ) ) > or > ( push ( at EBP ) ) > > Doing it this way seems to minimize the compiling complexity. > Plus it can participate in the picoLARC OOP macro system. > Your Exupery way is more like regular assembler. It's brief and > that's nice. But you also do long function names for machine > language instructions which is good. http://wiki.squeak.org/squeak/3945 Exupery is a complete compiler, not just an assembler. It compiles Squeak's bytecodes dynamically in the image then executes them. > All the addressing modes are mostly finished coding but untested. > > I would like to use Exupery to test against my picoLARC assembler. > If possible. It should be possible, that said if you're just testing an assembler, then just compare the bytes emitted. And there's often more than one way to assemble an instruction. Sometimes Exupery doesn't use the shortest forms. Bryce _______________________________________________ Exupery mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery |
In reply to this post by Markus Fritsche
On 10/16/08, Markus Fritsche <[hidden email]> wrote:
> Kjell Godo schrieb: >> I tried >> http://mfrouter.dyndns.org/Exupery_VM.7z >> but nothing happened. > > 1.) did you have an image with the exupery mcz loaded? I am thinking mcz means Monticello package. I will look for one. Alls I did was click on the above address and nothing happened. I was expecting a web page to come up. > 2.) did you do Exupery initialiseExupery? > 3.) did the benchmarks also say nothing happened? Thank you very much for these instructions. I have a Croquet image and a NewCompiler image and a Squeak 10 image. I think. > > Regards, Markus > > _______________________________________________ > Exupery mailing list > [hidden email] > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery > _______________________________________________ Exupery mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery |
In reply to this post by Bryce Kampjes
On 10/16/08, [hidden email] <[hidden email]> wrote:
> Kjell Godo writes: > > I tried > > http://mfrouter.dyndns.org/Exupery_VM.7z > > but nothing happened. > > > > I am making an assembler in Dolphin Smalltalk. It is trying to do all > > the addressing modes. It is part of the picoLARC project on > > SourceForge.net but the assembler stuff is not uploaded yet. It uses > > a Lispy syntax that looks like > > ( add ( into:From: EAX ( at ( + EBP 4 ) ) ) ) > > or > > ( add ( into:From: EAX ( at ( scale:index:base: 4 EBX EBP ) ) ) ) > > or > > ( push ( at EBP ) ) > > > > Doing it this way seems to minimize the compiling complexity. > > Plus it can participate in the picoLARC OOP macro system. > > Your Exupery way is more like regular assembler. It's brief and > > that's nice. But you also do long function names for machine > > language instructions which is good. > > http://wiki.squeak.org/squeak/3945 > > Exupery is a complete compiler, not just an assembler. It compiles > Squeak's bytecodes dynamically in the image then executes them. That sounds great. Do you have CompiledMethods with native code in them? It sounds like you put the native code into a ByteArray or something and then call the ByteArray. If that is true could you point me at the method where the code is put into the ByteArray and where it gets evaluated? > > > All the addressing modes are mostly finished coding but untested. > > > > I would like to use Exupery to test against my picoLARC assembler. > > If possible. > > It should be possible, that said if you're just testing an assembler, > then just compare the bytes emitted. And there's often more than > one way to assemble an instruction. Sometimes Exupery doesn't use > the shortest forms. Isn't it true that Exupery uses an intermediate language that looks like ( mov (eax) ebp )? I was hoping that I could just do things like ( add (eax) 1 ) and then look at the output bytes. If I have to know the Smalltalk byte codes first and find one that corresponds to add, and then find the native codes output, then it seems like it would be easier to use masm32 or something to compair the native bytes. Can you help me with the following two lines from the Intel manuals?: opCode Instruction etc 03 /r ADD r16, r/m16 Valid Valid Add r/m16 to r16. 03 /r ADD r32, r/m32 Valid Valid Add r/m32 to r32. this would seem to indicate that the opCode 3 does both the 16 bit case and the 32 bit case. But as far as I can tell the ModR/M and SIB are identical for 16 and 32 bit cases so the opCode is supposed to differentiate between the two. How can this be so if the opCode for the 16 bit case is the same as for the 32 bit case? > > Bryce > _______________________________________________ > Exupery mailing list > [hidden email] > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery > _______________________________________________ Exupery mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery |
In reply to this post by Kjell Godo
Kjell Godo schrieb:
> I am thinking mcz means Monticello package. I will look for one. > Alls I did was click on the above address and nothing happened. I was > expecting a web page to come up. oops, yes, my box was down, sorry. Should work now. _______________________________________________ Exupery mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery |
In reply to this post by Kjell Godo
Kjell Godo writes:
> On 10/16/08, [hidden email] <[hidden email]> wrote: > > Kjell Godo writes: > > > I tried > > > http://mfrouter.dyndns.org/Exupery_VM.7z > > > but nothing happened. > > > > > > I am making an assembler in Dolphin Smalltalk. It is trying to do all > > > the addressing modes. It is part of the picoLARC project on > > > SourceForge.net but the assembler stuff is not uploaded yet. It uses > > > a Lispy syntax that looks like > > > ( add ( into:From: EAX ( at ( + EBP 4 ) ) ) ) > > > or > > > ( add ( into:From: EAX ( at ( scale:index:base: 4 EBX EBP ) ) ) ) > > > or > > > ( push ( at EBP ) ) > > > > > > Doing it this way seems to minimize the compiling complexity. > > > Plus it can participate in the picoLARC OOP macro system. > > > Your Exupery way is more like regular assembler. It's brief and > > > that's nice. But you also do long function names for machine > > > language instructions which is good. > > > > http://wiki.squeak.org/squeak/3945 > > > > Exupery is a complete compiler, not just an assembler. It compiles > > Squeak's bytecodes dynamically in the image then executes them. > > That sounds great. Do you have CompiledMethods with native code in > them? It sounds like you put the native code into a ByteArray or something > and then call the ByteArray. If that is true could you point me at the > method where the code is put into the ByteArray and where it gets evaluated? Look through AssemblerTests. It's the test class for Exupery's assembler. Exupery assembles into a ByteArray, then copies the byte array into the code cache which is outside the image. Normal memory isn't executable, and the GC can also move objects. Having a separate code cache avoids both those problems. > > > > > All the addressing modes are mostly finished coding but untested. > > > > > > I would like to use Exupery to test against my picoLARC assembler. > > > If possible. > > > > It should be possible, that said if you're just testing an assembler, > > then just compare the bytes emitted. And there's often more than > > one way to assemble an instruction. Sometimes Exupery doesn't use > > the shortest forms. > > Isn't it true that Exupery uses an intermediate language that looks like > ( mov (eax) ebp )? I was hoping that I could just do things like > ( add (eax) 1 ) and then look at the output bytes. > If I have to know the Smalltalk byte codes first and find one that > corresponds to add, and then find the native codes output, then it > seems like it would be easier to use masm32 or something to compair > the native bytes. > > Can you help me with the following two lines from the Intel manuals?: > opCode Instruction etc > 03 /r ADD r16, r/m16 Valid Valid Add r/m16 to r16. > 03 /r ADD r32, r/m32 Valid Valid Add r/m32 to r32. > > this would seem to indicate that the opCode 3 does both the 16 bit case > and the 32 bit case. But as far as I can tell the ModR/M and SIB are > identical for 16 and 32 bit cases so the opCode is supposed to differentiate > between the two. How can this be so if the opCode for the 16 bit case is > the same as for the 32 bit case? Depends if the CPU is in real mode (16 bit) or 32 bit protected mode. It's safe to ignore the 16 bit cases. Bryce _______________________________________________ Exupery mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery |
In reply to this post by Markus Fritsche
So I just downloaded the Exupery_VM.7z file. What do I do with it?
Can I get an image with Exupery loaded into it and all set up?
On Fri, Oct 17, 2008 at 9:09 AM, Markus Fritsche <[hidden email]> wrote: Kjell Godo schrieb: _______________________________________________ Exupery mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery |
I just tried to load Exupery into Squeak 10 using the SqueakMap Package Loader
But it says that this Package depends on
InterpreterPlugin
Interpreter
And it says that I must resolve these dependencies before it will load.
I am assuming that I am missing a Package but which one?
On Sat, Oct 18, 2008 at 9:39 PM, Kjell Godo <[hidden email]> wrote:
_______________________________________________ Exupery mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery |
Kjell Godo writes:
> I just tried to load Exupery into Squeak 10 using the SqueakMap Package > Loader > But it says that this Package depends on > InterpreterPlugin > Interpreter > And it says that I must resolve these dependencies before it will load. > I am assuming that I am missing a Package but which one? > > On Sat, Oct 18, 2008 at 9:39 PM, Kjell Godo <[hidden email]> wrote: Load Exupery from the Universes. When I next release I'll check loading from SqueakMap. It did work a few months ago on the last release. Bryce _______________________________________________ Exupery mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery |
I am trying to install Exupery from the Universe Browser so I click on the Exupery Development version 0.... and I can't see the rest of it and I click on Select Package button and a bunch of packages get selected to install. Then I click on the button on the bottom of the Universe Browser and it seems to install FFI and then it puts up a small blue window that says:
Installing Exupery version 0.14
and I wait and wait and wait and nothing further seems to happen. I notice that my internet connection goes idle for a few seconds. ( something on my machine is downloading something in the background constantly and I don't know what it is but internet explorer seems to work ) If Exupery was really being installed then I would think that the connection would never go idle.
Finally I stop Squeak-3.10.2-7179 because I can't take it anymore.
Have you got any ideas what could be going wrong?
If you could make an image that has Exupery in it that could be downloaded that has the image files needed to develope Exupery that would be cool. It seems to depend on all sorts of things and something went wrong with the install. I waited 20 minutes for it to do something but it never did so I closed it.
On Wed, Oct 22, 2008 at 2:29 PM, <[hidden email]> wrote:
_______________________________________________ Exupery mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery |
Kjell Godo writes:
> I am trying to install Exupery from the Universe Browser so I click on the > Exupery Development version 0.... and I can't see the rest of it and I click > on Select Package button and a bunch of packages get selected to install. > Then I click on the button on the bottom of the Universe Browser and it > seems to install FFI and then it puts up a small blue window that says: > Installing Exupery version 0.14 > and I wait and wait and wait and nothing further seems to happen. I notice > that my internet connection goes idle for a few seconds. ( something on my > machine is downloading something in the background constantly and I don't > know what it is but internet explorer seems to work ) If Exupery was really > being installed then I would think that the connection would never go idle. > > Finally I stop Squeak-3.10.2-7179 because I can't take it anymore. I've loaded Exupery into that image without problems previously. Did you load anything else first? Monticello 1.5 used to cause problems loading FFI, I don't know if it still does. > Have you got any ideas what could be going wrong? Torsten has replied to both the pharo list and Squeak dev about it. > If you could make an image that has Exupery in it that could be downloaded > that has the image files needed to develope Exupery that would be cool. It > seems to depend on all sorts of things and something went wrong with the > install. I waited 20 minutes for it to do something but it never did so I > closed it. The prebuilt image is here: http://ftp.squeak.org/Exupery/images/exupery0.14.zip I fixed the link from the Installing Exupery Swiki page to it. There should always be a prebuilt image for each release built as part of the release. Bryce _______________________________________________ Exupery mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery |
Free forum by Nabble | Edit this page |