Skip to content

Commit 053c90a

Browse files
fix: code cleanup and renaming
1 parent cb62f84 commit 053c90a

File tree

9 files changed

+54
-51
lines changed

9 files changed

+54
-51
lines changed

crates/intrinsic-test/src/arm/compile.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
use crate::common::compile_c::CompilationCommandBuilder;
2-
use crate::common::gen_c::compile_c;
2+
use crate::common::gen_c::compile_c_programs;
33

44
pub fn compile_c_arm(
55
intrinsics_name_list: &Vec<String>,
@@ -60,5 +60,5 @@ pub fn compile_c_arm(
6060
})
6161
.collect::<Vec<_>>();
6262

63-
compile_c(&compiler_commands)
63+
compile_c_programs(&compiler_commands)
6464
}

crates/intrinsic-test/src/arm/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ use crate::arm::intrinsic::ArmIntrinsicType;
99
use crate::common::SupportedArchitectureTest;
1010
use crate::common::cli::ProcessedCli;
1111
use crate::common::compare::compare_outputs;
12-
use crate::common::gen_rust::compile_rust;
12+
use crate::common::gen_rust::compile_rust_programs;
1313
use crate::common::intrinsic::{Intrinsic, IntrinsicDefinition};
1414
use crate::common::intrinsic_helpers::TypeKind;
1515
use crate::common::write_file::{write_c_testfiles, write_rust_testfiles};
@@ -97,7 +97,7 @@ impl SupportedArchitectureTest for ArmArchitectureTest {
9797
AARCH_CONFIGURATIONS,
9898
);
9999

100-
compile_rust(intrinsics_name_list, toolchain, target, linker)
100+
compile_rust_programs(intrinsics_name_list, toolchain, target, linker)
101101
}
102102

103103
fn compare_outputs(&self) -> bool {

crates/intrinsic-test/src/common/argument.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
use crate::common::cli::Language;
2-
use crate::common::constraint::Constraint;
3-
use crate::common::indentation::Indentation;
4-
use crate::common::intrinsic_helpers::IntrinsicTypeDefinition;
1+
use super::cli::Language;
2+
use super::constraint::Constraint;
3+
use super::indentation::Indentation;
4+
use super::intrinsic_helpers::IntrinsicTypeDefinition;
55

66
/// An argument for the intrinsic.
77
#[derive(Debug, PartialEq, Clone)]

crates/intrinsic-test/src/common/gen_c.rs

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@ use super::intrinsic_helpers::IntrinsicTypeDefinition;
1111
// The number of times each intrinsic will be called.
1212
const PASSES: u32 = 20;
1313

14-
pub fn generate_c_program(
14+
// Formats the main C program template with placeholders
15+
pub fn format_c_main_template(
1516
notices: &str,
1617
header_files: &[&str],
1718
arch_identifier: &str,
@@ -61,7 +62,7 @@ int main(int argc, char **argv) {{
6162
)
6263
}
6364

64-
pub fn compile_c(compiler_commands: &[String]) -> bool {
65+
pub fn compile_c_programs(compiler_commands: &[String]) -> bool {
6566
compiler_commands
6667
.par_iter()
6768
.map(|compiler_command| {
@@ -86,7 +87,8 @@ pub fn compile_c(compiler_commands: &[String]) -> bool {
8687
.is_none()
8788
}
8889

89-
pub fn create_c_filenames(identifiers: &Vec<String>) -> BTreeMap<&String, String> {
90+
// Creates directory structure and file path mappings
91+
pub fn setup_c_file_paths(identifiers: &Vec<String>) -> BTreeMap<&String, String> {
9092
let _ = std::fs::create_dir("c_programs");
9193
identifiers
9294
.par_iter()
@@ -98,7 +100,7 @@ pub fn create_c_filenames(identifiers: &Vec<String>) -> BTreeMap<&String, String
98100
.collect::<BTreeMap<&String, String>>()
99101
}
100102

101-
pub fn generate_loop_c<T: IntrinsicTypeDefinition + Sized>(
103+
pub fn generate_c_test_loop<T: IntrinsicTypeDefinition + Sized>(
102104
intrinsic: &dyn IntrinsicDefinition<T>,
103105
indentation: Indentation,
104106
additional: &str,
@@ -119,7 +121,7 @@ pub fn generate_loop_c<T: IntrinsicTypeDefinition + Sized>(
119121
)
120122
}
121123

122-
pub fn gen_code_c<T: IntrinsicTypeDefinition>(
124+
pub fn generate_c_constraint_blocks<T: IntrinsicTypeDefinition>(
123125
intrinsic: &dyn IntrinsicDefinition<T>,
124126
indentation: Indentation,
125127
constraints: &[&Argument<T>],
@@ -144,7 +146,7 @@ pub fn gen_code_c<T: IntrinsicTypeDefinition>(
144146
name = current.name,
145147
ty = current.ty.c_type(),
146148
val = i,
147-
pass = gen_code_c(
149+
pass = generate_c_constraint_blocks(
148150
intrinsic,
149151
body_indentation,
150152
constraints,
@@ -155,11 +157,12 @@ pub fn gen_code_c<T: IntrinsicTypeDefinition>(
155157
})
156158
.join("\n")
157159
} else {
158-
generate_loop_c(intrinsic, indentation, &name, PASSES, target)
160+
generate_c_test_loop(intrinsic, indentation, &name, PASSES, target)
159161
}
160162
}
161163

162-
pub fn gen_c_program<T: IntrinsicTypeDefinition>(
164+
// Compiles C test programs using specified compiler
165+
pub fn create_c_test_program<T: IntrinsicTypeDefinition>(
163166
intrinsic: &dyn IntrinsicDefinition<T>,
164167
header_files: &[&str],
165168
target: &str,
@@ -174,7 +177,7 @@ pub fn gen_c_program<T: IntrinsicTypeDefinition>(
174177
.collect_vec();
175178

176179
let indentation = Indentation::default();
177-
generate_c_program(
180+
format_c_main_template(
178181
notices,
179182
header_files,
180183
c_target,
@@ -183,7 +186,7 @@ pub fn gen_c_program<T: IntrinsicTypeDefinition>(
183186
.arguments()
184187
.gen_arglists_c(indentation, PASSES)
185188
.as_str(),
186-
gen_code_c(
189+
generate_c_constraint_blocks(
187190
intrinsic,
188191
indentation.nested(),
189192
constraints.as_slice(),

crates/intrinsic-test/src/common/gen_rust.rs

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ use super::intrinsic_helpers::IntrinsicTypeDefinition;
1313
// The number of times each intrinsic will be called.
1414
const PASSES: u32 = 20;
1515

16-
pub fn generate_rust_program(
16+
pub fn format_rust_main_template(
1717
notices: &str,
1818
definitions: &str,
1919
configurations: &str,
@@ -38,7 +38,7 @@ fn main() {{
3838
)
3939
}
4040

41-
pub fn compile_rust(
41+
pub fn compile_rust_programs(
4242
binaries: Vec<String>,
4343
toolchain: Option<&str>,
4444
target: &str,
@@ -125,7 +125,8 @@ path = "{binary}/main.rs""#,
125125
}
126126
}
127127

128-
pub fn create_rust_filenames(identifiers: &Vec<String>) -> BTreeMap<&String, String> {
128+
// Creates directory structure and file path mappings
129+
pub fn setup_rust_file_paths(identifiers: &Vec<String>) -> BTreeMap<&String, String> {
129130
identifiers
130131
.par_iter()
131132
.map(|identifier| {
@@ -138,7 +139,7 @@ pub fn create_rust_filenames(identifiers: &Vec<String>) -> BTreeMap<&String, Str
138139
.collect::<BTreeMap<&String, String>>()
139140
}
140141

141-
pub fn generate_loop_rust<T: IntrinsicTypeDefinition>(
142+
pub fn generate_rust_test_loop<T: IntrinsicTypeDefinition>(
142143
intrinsic: &dyn IntrinsicDefinition<T>,
143144
indentation: Indentation,
144145
additional: &str,
@@ -169,7 +170,7 @@ pub fn generate_loop_rust<T: IntrinsicTypeDefinition>(
169170
)
170171
}
171172

172-
pub fn gen_code_rust<T: IntrinsicTypeDefinition>(
173+
pub fn generate_rust_constraint_blocks<T: IntrinsicTypeDefinition>(
173174
intrinsic: &dyn IntrinsicDefinition<T>,
174175
indentation: Indentation,
175176
constraints: &[&Argument<T>],
@@ -193,7 +194,7 @@ pub fn gen_code_rust<T: IntrinsicTypeDefinition>(
193194
name = current.name,
194195
ty = current.ty.rust_type(),
195196
val = i,
196-
pass = gen_code_rust(
197+
pass = generate_rust_constraint_blocks(
197198
intrinsic,
198199
body_indentation,
199200
constraints,
@@ -203,11 +204,12 @@ pub fn gen_code_rust<T: IntrinsicTypeDefinition>(
203204
})
204205
.join("\n")
205206
} else {
206-
generate_loop_rust(intrinsic, indentation, &name, PASSES)
207+
generate_rust_test_loop(intrinsic, indentation, &name, PASSES)
207208
}
208209
}
209210

210-
pub fn gen_rust_program<T: IntrinsicTypeDefinition>(
211+
// Top-level function to create complete test program
212+
pub fn create_rust_test_program<T: IntrinsicTypeDefinition>(
211213
intrinsic: &dyn IntrinsicDefinition<T>,
212214
target: &str,
213215
notice: &str,
@@ -221,7 +223,7 @@ pub fn gen_rust_program<T: IntrinsicTypeDefinition>(
221223
.collect_vec();
222224

223225
let indentation = Indentation::default();
224-
generate_rust_program(
226+
format_rust_main_template(
225227
notice,
226228
definitions,
227229
cfg,
@@ -230,7 +232,7 @@ pub fn gen_rust_program<T: IntrinsicTypeDefinition>(
230232
.arguments()
231233
.gen_arglists_rust(indentation.nested(), PASSES)
232234
.as_str(),
233-
gen_code_rust(
235+
generate_rust_constraint_blocks(
234236
intrinsic,
235237
indentation.nested(),
236238
&constraints,

crates/intrinsic-test/src/common/intrinsic.rs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
use super::intrinsic_helpers::TypeKind;
2-
use crate::common::argument::ArgumentList;
3-
use crate::common::indentation::Indentation;
4-
use crate::common::intrinsic_helpers::IntrinsicTypeDefinition;
1+
use super::argument::ArgumentList;
2+
use super::indentation::Indentation;
3+
use super::intrinsic_helpers::{IntrinsicTypeDefinition, TypeKind};
54

65
/// An intrinsic
76
#[derive(Debug, PartialEq, Clone)]

crates/intrinsic-test/src/common/intrinsic_helpers.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@ use std::str::FromStr;
44

55
use itertools::Itertools as _;
66

7-
use crate::common::cli::Language;
8-
use crate::common::indentation::Indentation;
9-
use crate::common::values::value_for_array;
7+
use super::cli::Language;
8+
use super::indentation::Indentation;
9+
use super::values::value_for_array;
1010

1111
#[derive(Debug, PartialEq, Copy, Clone)]
1212
pub enum TypeKind {

crates/intrinsic-test/src/common/mod.rs

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
use crate::common::cli::ProcessedCli;
2-
use std::fs::File;
3-
use std::io::Write;
42

53
pub mod argument;
64
pub mod cli;
@@ -25,8 +23,3 @@ pub trait SupportedArchitectureTest {
2523
fn build_rust_file(&self) -> bool;
2624
fn compare_outputs(&self) -> bool;
2725
}
28-
29-
pub fn write_file(filename: &String, code: String) {
30-
let mut file = File::create(&filename).unwrap();
31-
file.write_all(code.into_bytes().as_slice()).unwrap();
32-
}

crates/intrinsic-test/src/common/write_file.rs

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,15 @@
1-
use super::gen_c::gen_c_program;
2-
use super::gen_rust::{create_rust_filenames, gen_rust_program};
1+
use super::gen_c::create_c_test_program;
2+
use super::gen_c::setup_c_file_paths;
3+
use super::gen_rust::{create_rust_test_program, setup_rust_file_paths};
4+
use super::intrinsic::IntrinsicDefinition;
35
use super::intrinsic_helpers::IntrinsicTypeDefinition;
4-
use crate::common::gen_c::create_c_filenames;
5-
use crate::common::intrinsic::IntrinsicDefinition;
6-
use crate::common::write_file;
6+
use std::fs::File;
7+
use std::io::Write;
8+
9+
pub fn write_file(filename: &String, code: String) {
10+
let mut file = File::create(&filename).unwrap();
11+
file.write_all(code.into_bytes().as_slice()).unwrap();
12+
}
713

814
pub fn write_c_testfiles<T: IntrinsicTypeDefinition + Sized>(
915
intrinsics: &Vec<&dyn IntrinsicDefinition<T>>,
@@ -17,10 +23,10 @@ pub fn write_c_testfiles<T: IntrinsicTypeDefinition + Sized>(
1723
.iter()
1824
.map(|i| i.name().clone())
1925
.collect::<Vec<_>>();
20-
let filename_mapping = create_c_filenames(&intrinsics_name_list);
26+
let filename_mapping = setup_c_file_paths(&intrinsics_name_list);
2127

2228
intrinsics.iter().for_each(|&i| {
23-
let c_code = gen_c_program(
29+
let c_code = create_c_test_program(
2430
i,
2531
headers,
2632
target,
@@ -48,10 +54,10 @@ pub fn write_rust_testfiles<T: IntrinsicTypeDefinition>(
4854
.iter()
4955
.map(|i| i.name().clone())
5056
.collect::<Vec<_>>();
51-
let filename_mapping = create_rust_filenames(&intrinsics_name_list);
57+
let filename_mapping = setup_rust_file_paths(&intrinsics_name_list);
5258

5359
intrinsics.iter().for_each(|&i| {
54-
let rust_code = gen_rust_program(i, rust_target, notice, definitions, cfg);
60+
let rust_code = create_rust_test_program(i, rust_target, notice, definitions, cfg);
5561
match filename_mapping.get(&i.name()) {
5662
Some(filename) => write_file(filename, rust_code),
5763
None => {}

0 commit comments

Comments
 (0)