Skip to content

Commit 1e9404b

Browse files
committed
delete widths.rs
1 parent 31fb2db commit 1e9404b

File tree

5 files changed

+18
-26
lines changed

5 files changed

+18
-26
lines changed

cranelift/isle/veri/veri_engine/src/annotations.rs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,20 @@ impl AnnotationEnv {
3636
}
3737
None
3838
}
39+
40+
pub fn get_term_signatures_by_name(
41+
&self,
42+
termenv: &TermEnv,
43+
typeenv: &TypeEnv,
44+
) -> HashMap<String, Vec<TermTypeSignature>> {
45+
let mut term_signatures_by_name = HashMap::new();
46+
for (term_id, term_sigs) in &self.instantiations_map {
47+
let sym = termenv.terms[term_id.index()].name;
48+
let name = typeenv.syms[sym.index()].clone();
49+
term_signatures_by_name.insert(name, term_sigs.clone());
50+
}
51+
term_signatures_by_name
52+
}
3953
}
4054

4155
pub fn spec_to_annotation_bound_var(i: &Ident) -> BoundVar {

cranelift/isle/veri/veri_engine/src/lib.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ pub mod solver;
1212
pub mod termname;
1313
pub mod type_inference;
1414
pub mod verify;
15-
pub mod widths;
1615

1716
pub const REG_WIDTH: usize = 64;
1817

cranelift/isle/veri/veri_engine/src/verify.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
use crate::type_inference::type_rules_with_term_and_types;
2-
use crate::widths::isle_inst_types;
32
use crate::Config;
43
use cranelift_isle as isle;
54
use isle::compile::create_envs;
@@ -26,7 +25,8 @@ pub fn verify_rules(inputs: Vec<PathBuf>, config: &Config) {
2625
let annotation_env = parse_annotations(&defs, &termenv, &typeenv);
2726

2827
// Get the types/widths for this particular term
29-
let types = isle_inst_types(&termenv, &typeenv, &annotation_env)
28+
let types = annotation_env
29+
.get_term_signatures_by_name(&termenv, &typeenv)
3030
.get(&config.term as &str)
3131
.expect(format!("Missing term width for {}", config.term).as_str())
3232
.clone();

cranelift/isle/veri/veri_engine/src/widths.rs

Lines changed: 0 additions & 21 deletions
This file was deleted.

cranelift/isle/veri/veri_engine/tests/utils/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ use veri_engine_lib::annotations::parse_annotations;
88
use veri_engine_lib::build_clif_lower_isle;
99
use veri_engine_lib::type_inference::type_rules_with_term_and_types;
1010
use veri_engine_lib::verify::verify_rules_for_term;
11-
use veri_engine_lib::widths::isle_inst_types;
1211
use veri_engine_lib::Config;
1312
use veri_ir::{ConcreteTest, Counterexample, TermSignature, VerificationResult};
1413

@@ -116,7 +115,8 @@ fn test_rules_with_term(inputs: Vec<PathBuf>, tr: TestResult, config: Config) ->
116115
let (typeenv, termenv) = create_envs(&defs).unwrap();
117116
let annotation_env = parse_annotations(&defs, &termenv, &typeenv);
118117

119-
let term_signatures = isle_inst_types(&termenv, &typeenv, &annotation_env)
118+
let term_signatures = annotation_env
119+
.get_term_signatures_by_name(&termenv, &typeenv)
120120
.get(config.term.as_str())
121121
.expect(format!("Missing term width for {}", config.term).as_str())
122122
.clone();

0 commit comments

Comments
 (0)