forked from M-Labs/nac3
1
0
Fork 0

core/irrt: build.rs capture IR defined constants

This commit is contained in:
lyken 2024-07-13 14:02:50 +08:00 committed by Sébastien Bourdeauducq
parent e8e49684bf
commit 518f21d174
1 changed files with 5 additions and 2 deletions

View File

@ -63,8 +63,11 @@ fn main() {
// - `(?ms:^define.*?\}$)` captures LLVM `define` blocks // - `(?ms:^define.*?\}$)` captures LLVM `define` blocks
// - `(?m:^declare.*?$)` captures LLVM `declare` lines // - `(?m:^declare.*?$)` captures LLVM `declare` lines
// - `(?m:^%.+?=\s*type\s*\{.+?\}$)` captures LLVM `type` declarations // - `(?m:^%.+?=\s*type\s*\{.+?\}$)` captures LLVM `type` declarations
let regex_filter = // - `(?m:^@.+?=.+$)` captures global constants
Regex::new(r"(?ms:^define.*?\}$)|(?m:^declare.*?$)|(?m:^%.+?=\s*type\s*\{.+?\}$)").unwrap(); let regex_filter = Regex::new(
r"(?ms:^define.*?\}$)|(?m:^declare.*?$)|(?m:^%.+?=\s*type\s*\{.+?\}$)|(?m:^@.+?=.+$)",
)
.unwrap();
for f in regex_filter.captures_iter(&output) { for f in regex_filter.captures_iter(&output) {
assert_eq!(f.len(), 1); assert_eq!(f.len(), 1);
filtered_output.push_str(&f[0]); filtered_output.push_str(&f[0]);