[Pharo-dev] Compiler Explorer (for the Compiler guys) #offtopic

Jan Vrany jan.vrany at fit.cvut.cz
Wed Oct 18 09:27:25 EDT 2017


Hi, 

> I was thinking of changing that, adding a primitive which answers a
> CogMethod as a bytearray, but you still need to use external libs
> such as gdb/lldb to disassemble your binary 

I use udis86 [1] for that purpose. Tiny, clean & dead easy to use. 
x86 only, though. 

HTH. Jan

[1]: http://udis86.sourceforge.net/


> (which is possible but not working out of the box everywhere and it
> does not make sense to include that as part of the VM), and you still
> need something extracted from VMMaker to make sense out of the
> CogMethod header and CogMethod map, which has a lot of dependencies,
> so likely the whole VMMaker itself. And I'm not talking about all the
> different CogMethod flavors.
> 
> With VMMaker loaded you can do it with in-image compilation but you
> will have the machine code with only unlinked sends. With linked send
> it's more difficult as you need to really simulate the whole runtime.
> 
> Overall there's no amazing solution. In the example shown it's easier
> as in C++ the code is not modified while it runs and you've already
> have gdb/lldb APIs to show what they show.
> 
>  
> > 
> > 
> >  
> > > 
> > > 
> > > Cheers,
> > > Doru
> > > 
> > > 
> > > > On Oct 17, 2017, at 10:03 PM, Esteban A. Maringolo <emaringolo@
> > > > gmail.com> wrote:
> > > > 
> > > > I'm sure we could do this with ease, because we already can see
> > > > the bytecodes.
> > > > 
> > > > https://godbolt.org/
> > > > 
> > > > Regards!
> > > > 
> > > > Esteban A. Maringolo
> > > > 
> > > 
> > > --
> > > www.tudorgirba.com
> > > www.feenk.com
> > > 
> > > "The coherence of a trip is given by the clearness of the goal."
> > > 
> > > 
> > > 
> > > 
> > > 
> > > 
> > 
> > 
> > 
> > -- 
> > Mariano
> > http://marianopeck.wordpress.com
> > 
> 
> 
> 
> -- 
> Clément Béra
> Pharo consortium engineer
> https://clementbera.wordpress.com/
> Bâtiment B 40, avenue Halley 59650 Villeneuve d'Ascq




More information about the Pharo-dev mailing list