Re: A minor issue with register allocator
Posted by
Igor Stasenko on
Jul 03, 2007; 10:45pm
URL: https://forum.world.st/A-minor-issue-with-register-allocator-tp133467p133474.html
> The answer is the instruction selector only looks at the expression
> trees, it doesn't do whole method analysis so because (-4 eax) is
> loaded into a register it doesn't recognise that it's only used in
> one place.
>
I understand. I just wanted to use this for testing, to see how is my
method inlining works.
in sample above i compiling two methods:
--
message4: arg1 with: arg2
self pragma: #cdecl.
^ arg1 + arg2.
--
and:
inlineMessage4: a with: b
self pragma: #cdecl.
^ self inlineCall: (self message4: a with:b)
--
the intent was to get same code for both methods compiled with Exupery.
I thought that any extra registers/movs/jumps produced as side effect
of inlining can be simply optimized with Exupery low-level stuff..
But instead i have different code, which, of course doing same.
_______________________________________________
Exupery mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery