diff options
| author | Graydon Hoare <[email protected]> | 2010-09-16 16:50:41 -0700 |
|---|---|---|
| committer | Graydon Hoare <[email protected]> | 2010-09-16 16:59:37 -0700 |
| commit | 5536af3d48da5176bf4b473b54cb6b060c6eee68 (patch) | |
| tree | 343f56056661cb5bab5f3f291238ed74b0d4dac4 /src/boot/driver | |
| parent | Check for infinitely sized tags. Un-XFAIL test/compile-fail/infinite-tag-type... (diff) | |
| download | rust-5536af3d48da5176bf4b473b54cb6b060c6eee68.tar.xz rust-5536af3d48da5176bf4b473b54cb6b060c6eee68.zip | |
Beginnings of post-resolve simplify pass.
Diffstat (limited to 'src/boot/driver')
| -rw-r--r-- | src/boot/driver/llvm/glue.ml | 1 | ||||
| -rw-r--r-- | src/boot/driver/main.ml | 4 | ||||
| -rw-r--r-- | src/boot/driver/session.ml | 1 |
3 files changed, 6 insertions, 0 deletions
diff --git a/src/boot/driver/llvm/glue.ml b/src/boot/driver/llvm/glue.ml index 30fce0cd..03baf04d 100644 --- a/src/boot/driver/llvm/glue.ml +++ b/src/boot/driver/llvm/glue.ml @@ -15,6 +15,7 @@ let alt_pipeline sess sem_cx crate = Array.iter process [| Resolve.process_crate; + Simplify.process_crate; Type.process_crate; Typestate.process_crate; Effect.process_crate; diff --git a/src/boot/driver/main.ml b/src/boot/driver/main.ml index 32c70be6..e80e7682 100644 --- a/src/boot/driver/main.ml +++ b/src/boot/driver/main.ml @@ -34,6 +34,7 @@ let (sess:Session.sess) = Session.sess_log_ast = false; Session.sess_log_resolve = false; Session.sess_log_type = false; + Session.sess_log_simplify = false; Session.sess_log_effect = false; Session.sess_log_typestate = false; Session.sess_log_loop = false; @@ -162,6 +163,8 @@ let argspecs = "-lresolve" "log resolution"); (flag (fun _ -> sess.Session.sess_log_type <- true) "-ltype" "log type checking"); + (flag (fun _ -> sess.Session.sess_log_simplify <- true) + "-lsimplify" "log simplification"); (flag (fun _ -> sess.Session.sess_log_effect <- true) "-leffect" "log effect checking"); (flag (fun _ -> sess.Session.sess_log_typestate <- true) @@ -352,6 +355,7 @@ let main_pipeline _ = proc sem_cx crate; exit_if_failed ()) [| Resolve.process_crate; + Simplify.process_crate; Type.process_crate; Typestate.process_crate; Effect.process_crate; diff --git a/src/boot/driver/session.ml b/src/boot/driver/session.ml index beb551bb..2f81e4f5 100644 --- a/src/boot/driver/session.ml +++ b/src/boot/driver/session.ml @@ -20,6 +20,7 @@ type sess = mutable sess_log_ast: bool; mutable sess_log_resolve: bool; mutable sess_log_type: bool; + mutable sess_log_simplify: bool; mutable sess_log_effect: bool; mutable sess_log_typestate: bool; mutable sess_log_dead: bool; |