Skip to content

Commit f534d0d

Browse files
committed
feat: add an Asm trace low level event
1 parent 8f69cfb commit f534d0d

File tree

4 files changed

+8
-2
lines changed

4 files changed

+8
-2
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "runtime_tracing"
3-
version = "0.5.15"
3+
version = "0.5.16"
44
edition = "2021"
55

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

src/lib.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ mod tests {
2121
tracer.start(path, Line(1));
2222
tracer.register_step(path, Line(1));
2323
tracer.register_step(path, Line(2));
24+
tracer.register_asm(&["asm0".to_string(), "asm1".to_string()]);
2425
tracer.register_special_event(EventLogKind::Write, "test");
2526
tracer.register_special_event(EventLogKind::Write, "test2");
2627

@@ -87,7 +88,7 @@ mod tests {
8788
tracer.register_return(NONE_VALUE);
8889
tracer.drop_variable("test_variable3");
8990

90-
assert_eq!(tracer.events.len(), 32);
91+
assert_eq!(tracer.events.len(), 33);
9192
// visible with
9293
// cargo tets -- --nocapture
9394
// println!("{:#?}", tracer.events);

src/tracer.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,10 @@ impl Tracer {
165165
self.events.push(TraceLowLevelEvent::Type(typ));
166166
}
167167

168+
pub fn register_asm(&mut self, instructions: &[String]) {
169+
self.events.push(TraceLowLevelEvent::Asm(instructions.to_vec()));
170+
}
171+
168172
pub fn register_variable_with_full_value(&mut self, name: &str, value: ValueRecord) {
169173
let variable_id = self.ensure_variable_id(name);
170174
self.register_full_value(variable_id, value);

src/types.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ pub enum TraceLowLevelEvent {
1818
Call(CallRecord),
1919
Return(ReturnRecord),
2020
Event(RecordEvent),
21+
Asm(Vec<String>),
2122
CompoundValue(CompoundValueRecord),
2223
CellValue(CellValueRecord),
2324
AssignCompoundItem(AssignCompoundItemRecord),

0 commit comments

Comments
 (0)