Skip to content

Commit

Permalink
make the symbol importer script faster
Browse files Browse the repository at this point in the history
  • Loading branch information
DarkRTA committed Jan 19, 2024
1 parent 6c36d8f commit f5e65a4
Show file tree
Hide file tree
Showing 7 changed files with 86,234 additions and 22 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -36,3 +36,6 @@ ignore/
ignored/
*.ignore.*
*.ignored.*

# rust target folders
tools/*/target/
1 change: 1 addition & 0 deletions tools/batch-demangle/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/target
283 changes: 283 additions & 0 deletions tools/batch-demangle/Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 10 additions & 0 deletions tools/batch-demangle/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
[package]
name = "rb3-batch-demangle"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
clap = { version = "4.4.18", features = ["derive"] }
cwdemangle = { git = "https://github.com/encounter/cwdemangle", version = "0.1.7" }
29 changes: 29 additions & 0 deletions tools/batch-demangle/src/main.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
use clap::Parser;
use cwdemangle::*;
use std::fs::read_to_string;

#[derive(Parser)]
struct Args {
input: String,
}

fn main() {
let args = Args::parse();
let f = read_to_string(args.input).unwrap();

for line in f.lines() {
let parts = line.split(" ").collect::<Vec<_>>();
let sym = parts[0];
let demangled = match demangle(parts[0], &DemangleOptions {
omit_empty_parameters: false
}) {
Some(x) => x,
None => "@@@@@".into()
};

let addr_idx = parts[2].find("0x").unwrap();
let addr = &parts[2][addr_idx..addr_idx + 10];

println!("{sym}|||{demangled}|||{addr}");
}
}
Loading

0 comments on commit f5e65a4

Please sign in to comment.