aboutsummaryrefslogtreecommitdiff
path: root/src/boot/me/dwarf.ml
diff options
context:
space:
mode:
authorGraydon Hoare <[email protected]>2010-10-08 14:54:51 -0700
committerGraydon Hoare <[email protected]>2010-10-08 14:54:51 -0700
commit5f2459145cb90d7d52cfde1d4ed7719dde1dfdc0 (patch)
tree7f2305524744f4b7fb02469f3c9ab0e64b4c9577 /src/boot/me/dwarf.ml
parentrustc: Make functions output a type, not a slot (diff)
downloadrust-5f2459145cb90d7d52cfde1d4ed7719dde1dfdc0.tar.xz
rust-5f2459145cb90d7d52cfde1d4ed7719dde1dfdc0.zip
Add -lpath mechanism for logging only a subset of a pass (by module-path prefix)
Diffstat (limited to 'src/boot/me/dwarf.ml')
-rw-r--r--src/boot/me/dwarf.ml13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/boot/me/dwarf.ml b/src/boot/me/dwarf.ml
index c1bde8f1..e8b3a3a9 100644
--- a/src/boot/me/dwarf.ml
+++ b/src/boot/me/dwarf.ml
@@ -66,7 +66,7 @@ open Common;;
open Asm;;
let log cx = Session.log "dwarf"
- cx.ctxt_sess.Session.sess_log_dwarf
+ (should_log cx cx.ctxt_sess.Session.sess_log_dwarf)
cx.ctxt_sess.Session.sess_log_out
;;
@@ -1425,7 +1425,6 @@ let prepend lref x = lref := x :: (!lref)
let dwarf_visitor
(cx:ctxt)
(inner:Walk.visitor)
- (path:Ast.name_component Stack.t)
(cu_info_section_fixup:fixup)
(cu_aranges:(frag list) ref)
(cu_pubnames:(frag list) ref)
@@ -1454,7 +1453,9 @@ let dwarf_visitor
| Il.Bits64 -> TY_i64
in
- let path_name _ = Fmt.fmt_to_str Ast.fmt_name (path_to_name path) in
+ let path_name _ =
+ Fmt.fmt_to_str Ast.fmt_name (path_to_name cx.ctxt_curr_path)
+ in
let (abbrev_table:(abbrev, int) Hashtbl.t) = Hashtbl.create 0 in
@@ -2485,12 +2486,10 @@ let process_crate
let cu_lines = ref [] in
let cu_frames = ref [] in
- let path = Stack.create () in
-
let passes =
[|
unreferenced_required_item_ignoring_visitor cx
- (dwarf_visitor cx Walk.empty_visitor path
+ (dwarf_visitor cx Walk.empty_visitor
cx.ctxt_debug_info_fixup
cu_aranges cu_pubnames
cu_infos cu_abbrevs
@@ -2499,7 +2498,7 @@ let process_crate
in
log cx "emitting DWARF records";
- run_passes cx "dwarf" path passes
+ run_passes cx "dwarf" passes
cx.ctxt_sess.Session.sess_log_dwarf log crate;
(* Terminate the tables. *)