Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[perl #41620] [PATCH] change opcode syntax for label arguments

5 views
Skip to first unread message

Alek Storm

unread,
Feb 25, 2007, 11:12:58 PM2/25/07
to bugs-bi...@rt.perl.org
# New Ticket Created by "Alek Storm"
# Please include the string: [perl #41620]
# in the subject line of all future correspondence about this issue.
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=41620 >


This patch changes the <label INT>, <labelvar INT>, and <labelconst
INT> syntax in opcodes to <in LABEL>, <invar LABEL>, and <inconst
LABEL>, respectively. The argument is still an integer, however.
This cuts the number of argument directions down by three, and only
adds one argument type, making the code clearer. This is really an
argument type, after all, not a special kind of direction. I doubt
there will be any confusion about LABEL really being INT, because no
ops do any arithmetic with it; they just use it for <goto OFFSET($1)>
and <goto ADDRESS($1)>.

Files affected:
languages/dotnet/ops/dotnet.ops
lib/Parrot/OpsFile.pm
src/ops/cmp.ops
src/ops/core.ops
src/ops/stm.ops

Thanks,
Alek Storm

label.patch

James E Keenan

unread,
Feb 26, 2007, 10:13:55 PM2/26/07
to perl6-i...@perl.org, bugs-bi...@rt.perl.org
Alek Storm wrote:

And I applied this patch in the buildtools branch as well. Again, all
tests in 'make buildtools_tests' passed.

kid51

Chromatic

unread,
Jun 14, 2008, 2:50:03 PM6/14/08
to parrot-...@perl.org, Alek Storm, bugs-bi...@rt.perl.org
On Sunday 25 February 2007 20:12:58 Alek Storm wrote:

> This patch changes the <label INT>, <labelvar INT>, and <labelconst
> INT> syntax in opcodes to <in LABEL>, <invar LABEL>, and <inconst
> LABEL>, respectively. The argument is still an integer, however.
> This cuts the number of argument directions down by three, and only
> adds one argument type, making the code clearer. This is really an
> argument type, after all, not a special kind of direction. I doubt
> there will be any confusion about LABEL really being INT, because no
> ops do any arithmetic with it; they just use it for <goto OFFSET($1)>
> and <goto ADDRESS($1)>.

Agreed. Thanks, applied as r28359.

-- c

0 new messages