mirror of
https://github.com/verilator/verilator.git
synced 2025-04-05 04:02:37 +00:00
Tests: Skip if no constraint solver
This commit is contained in:
parent
552a146f9c
commit
ee130cb20d
@ -1606,6 +1606,20 @@ sub cmake_version {
|
|||||||
return version->declare($cmake_version);
|
return version->declare($cmake_version);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
our $_have_solver = undef;
|
||||||
|
sub have_solver {
|
||||||
|
if (!defined($_have_solver)) {
|
||||||
|
my $ok = `(z3 --help || cvc5 --help || cvc4 --help) 2>/dev/null`;
|
||||||
|
$ok ||= "";
|
||||||
|
if ($ok =~ /usage/i) {
|
||||||
|
$_have_solver = 1;
|
||||||
|
} else {
|
||||||
|
$_have_solver = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $_have_solver;
|
||||||
|
}
|
||||||
|
|
||||||
our $_aslr_off = undef;
|
our $_aslr_off = undef;
|
||||||
sub aslr_off {
|
sub aslr_off {
|
||||||
if (!defined($_aslr_off)) {
|
if (!defined($_aslr_off)) {
|
||||||
|
@ -10,14 +10,17 @@ if (!$::Driver) { use FindBin; exec("$FindBin::Bin/bootstrap.pl", @ARGV, $0); di
|
|||||||
|
|
||||||
scenarios(simulator => 1);
|
scenarios(simulator => 1);
|
||||||
|
|
||||||
compile(
|
if (!$Self->have_solver) {
|
||||||
verilator_flags2 => ['-Wno-CONSTRAINTIGN'],
|
skip("No constraint solver installed");
|
||||||
);
|
} else {
|
||||||
|
compile(
|
||||||
execute(
|
verilator_flags2 => ['-Wno-CONSTRAINTIGN'],
|
||||||
check_finished => 1,
|
);
|
||||||
);
|
|
||||||
|
|
||||||
|
execute(
|
||||||
|
check_finished => 1,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
ok(1);
|
ok(1);
|
||||||
1;
|
1;
|
||||||
|
@ -10,14 +10,17 @@ if (!$::Driver) { use FindBin; exec("$FindBin::Bin/bootstrap.pl", @ARGV, $0); di
|
|||||||
|
|
||||||
scenarios(simulator => 1);
|
scenarios(simulator => 1);
|
||||||
|
|
||||||
compile(
|
if (!$Self->have_solver) {
|
||||||
verilator_flags2 => ['-Wno-CONSTRAINTIGN'],
|
skip("No constraint solver installed");
|
||||||
);
|
} else {
|
||||||
|
compile(
|
||||||
execute(
|
verilator_flags2 => ['-Wno-CONSTRAINTIGN'],
|
||||||
check_finished => 1,
|
);
|
||||||
);
|
|
||||||
|
|
||||||
|
execute(
|
||||||
|
check_finished => 1,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
ok(1);
|
ok(1);
|
||||||
1;
|
1;
|
||||||
|
@ -10,13 +10,16 @@ if (!$::Driver) { use FindBin; exec("$FindBin::Bin/bootstrap.pl", @ARGV, $0); di
|
|||||||
|
|
||||||
scenarios(simulator => 1);
|
scenarios(simulator => 1);
|
||||||
|
|
||||||
compile(
|
if (!$Self->have_solver) {
|
||||||
);
|
skip("No constraint solver installed");
|
||||||
|
} else {
|
||||||
execute(
|
compile(
|
||||||
check_finished => 1,
|
);
|
||||||
);
|
|
||||||
|
|
||||||
|
execute(
|
||||||
|
check_finished => 1,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
ok(1);
|
ok(1);
|
||||||
1;
|
1;
|
||||||
|
@ -10,12 +10,16 @@ if (!$::Driver) { use FindBin; exec("$FindBin::Bin/bootstrap.pl", @ARGV, $0); di
|
|||||||
|
|
||||||
scenarios(simulator => 1);
|
scenarios(simulator => 1);
|
||||||
|
|
||||||
compile(
|
if (!$Self->have_solver) {
|
||||||
);
|
skip("No constraint solver installed");
|
||||||
|
} else {
|
||||||
|
compile(
|
||||||
|
);
|
||||||
|
|
||||||
execute(
|
execute(
|
||||||
check_finished => 1,
|
check_finished => 1,
|
||||||
);
|
);
|
||||||
|
}
|
||||||
|
|
||||||
ok(1);
|
ok(1);
|
||||||
1;
|
1;
|
||||||
|
Loading…
Reference in New Issue
Block a user