Mercurial > hg > Members > anatofuz > nqp-cbc-tools
annotate trans2opcode.pl @ 15:6c1384a939a0
add tran2opcode.pl
author | Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 27 Nov 2018 17:07:52 +0900 |
parents | |
children | 39ff8f558152 |
rev | line source |
---|---|
15
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
1 use strict; |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
2 use warnings; |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
3 |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
4 use FindBin; |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
5 use lib "$FindBin::Bin/lib"; |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
6 use OPCODE2Function; |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
7 |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
8 my $input = shift; #or die 'use input cur_op'; |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
9 chomp $input; |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
10 |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
11 if ( $input =~ /^\d+$/){ |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
12 print OPCODE2Function->codes($input)."\n"; |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
13 } else { |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
14 my $ref = OPCODE2Function->name2bitecode($input); |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
15 if (ref($ref ) eq "ARRAY"){ |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
16 map { print "$_\n";} @$ref; |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
17 } else { |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
18 print "$_\n"; |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
19 } |
6c1384a939a0
add tran2opcode.pl
Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
20 } |