projects
/
app-scheme79asm.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add perlcritic test and make code compliant
[app-scheme79asm.git]
/
lib
/
App
/
Scheme79asm.pm
diff --git
a/lib/App/Scheme79asm.pm
b/lib/App/Scheme79asm.pm
index fdbbd21c3f3f3fe7c3c042ee104511ee70f6fc0f..fb99ee33ef5a51fc4bd05ddbaf25896fdde4a929 100644
(file)
--- a/
lib/App/Scheme79asm.pm
+++ b/
lib/App/Scheme79asm.pm
@@
-3,6
+3,8
@@
package App::Scheme79asm;
use 5.014000;
use strict;
use warnings;
use 5.014000;
use strict;
use warnings;
+use re '/s';
+use Carp qw/croak/;
use Data::Dumper qw/Dumper/;
use Data::SExpression qw/consp scalarp/;
use Data::Dumper qw/Dumper/;
use Data::SExpression qw/consp scalarp/;
@@
-66,8
+68,8
@@
sub process {
}
$addr += (1 << $self->{addr_bits}) if $addr < 0;
}
$addr += (1 << $self->{addr_bits}) if $addr < 0;
- die "Type too large: $type\n"
unless $type <
(1 << $self->{type_bits});
- die "Addr too large: $addr\n"
unless $addr <
(1 << $self->{addr_bits});
+ die "Type too large: $type\n"
if $type >=
(1 << $self->{type_bits});
+ die "Addr too large: $addr\n"
if $addr >=
(1 << $self->{addr_bits});
my $result = ($type << $self->{addr_bits}) + $addr;
unless ($location) {
$self->{freeptr}++;
my $result = ($type << $self->{addr_bits}) + $addr;
unless ($location) {
$self->{freeptr}++;
@@
-118,9
+120,9
@@
sub print_binary16 {
die "addr_bits + type_bits >= 16\n"if $self->{addr_bits} + $self->{type_bits} > 16;
my $length = @{$self->{memory}};
die "addr_bits + type_bits >= 16\n"if $self->{addr_bits} + $self->{type_bits} > 16;
my $length = @{$self->{memory}};
- print $fh pack
('n', $length)
;
+ print $fh pack
'n', $length or croak "Failed to print memory size: $!"
;
for (@{$self->{memory}}) {
for (@{$self->{memory}}) {
- print $fh pack
('n', $_)
+ print $fh pack
'n', $_ or croak "Failed to print memory: $!"
}
}
}
}
@@
-142,9
+144,9
@@
sub print_verilog {
my $spaces = ' ' x ($bits + 5 - (length $val));
$index = sprintf $index_format, $index;
my $spaces = ' ' x ($bits + 5 - (length $val));
$index = sprintf $index_format, $index;
-
print $fh
"mem[$index] <= $val;";
-
print $fh
"$spaces // $comment" if defined $comment;
-
print $fh "\n
";
+
my $string =
"mem[$index] <= $val;";
+
$string .=
"$spaces // $comment" if defined $comment;
+
say $fh $string or croak "Failed to print verilog: $!
";
}
}
}
}
This page took
0.010427 seconds
and
4
git commands to generate.