Dan Gohman
965b93bd2a
Move the filetest harness into its own crate.
...
This allows us to run the tests via a library call rather than just
as a command execution. And, it's a step toward a broader goal, which
is to keep the code in the top-level src directory minimal, with
important functionality exposed as crates.
2018-03-15 15:35:48 -07:00
Benjamin Bouvier
f02c8fd1ff
Fixes #244 : Prints the generated code size and wasm bytecode size in wasm command;
2018-02-23 08:46:09 -08:00
Jakob Stoklund Olesen
60c456c1ec
Add a compilation pass timing facility.
...
Individual compilation passes call the corresponding timing::*()
function and hold on to their timing token while they run. This causes
nested per-pass timing information to be recorded in thread-local
storage.
The --time-passes command line option prints a pass timing report to
stdout.
2017-12-06 17:04:23 -08:00
Jakob Stoklund Olesen
8e2ce6ded2
Revert "Enable pager in cton-util."
...
This reverts commit 0538615ccc0b600d4f534dae2ee966d5ed0df9b7.
Fixes #196 . The pager functionality wasn't working as intended since
long error messages appear on stdout which isn't captured by the pager.
2017-11-22 11:35:03 -08:00
Dan Gohman
54e4ab71d9
Enable pager in cton-util.
2017-11-10 09:09:00 -08:00
Dan Gohman
12ab4cd914
Add a cton-util compile command.
2017-10-03 09:42:50 -07:00
Dan Gohman
1efa670f60
Do a full compile in 'cton-util wasm'.
...
This removes the `optimize` option, as one can do that with
`--set`, eg. `--set opt_level=best`. And it adds an option to
print the compilation output.
2017-10-03 09:30:45 -07:00
Dan Gohman
9e77af25a3
Add settings and isa command-line options to cton-util wasm. ( #158 )
...
* Add settings and isa command-line options to cton-util wasm.
* Use map_err to simplify error handling.
* Use `&*` instead of `.borrow()`.
2017-09-14 17:41:43 -07:00
Dan Gohman
f5639a66e6
Flush stdout before writing to stderr.
...
In particular, terminal.reset() doesn't flush, so it ensures that stderr isn't
unintentionally printed in the color of the preceding line.
2017-09-12 16:58:56 -07:00
Dan Gohman
1ab207b93c
Add support for emitting code with a single return at the end. ( #153 )
...
This also enables testing of the wasmtests tests.
This also updates for wabt updating to the official "wat" filename
extension, as opposed to "wast".
2017-09-12 13:27:36 -07:00
Dan Gohman
45b093ea59
Use write_all() to write to write an entire string rather than write().
...
https://github.com/rust-lang-nursery/rust-clippy/wiki#unused_io_amount
2017-09-06 11:02:17 -07:00
Dan Gohman
320c88f365
Rename cretonne_wasm to cton_wasm, for consistency with the other libraries.
2017-09-05 16:30:44 -07:00
Dan Gohman
7be0abb442
Remove an unneeded extern crate.
2017-08-31 14:31:45 -07:00
Dan Gohman
2efdc0ed37
Update rustfmt to 0.9.0.
2017-08-31 10:44:59 -07:00
Dan Gohman
253f602a4c
Fix a few warnings.
2017-08-28 17:17:41 -07:00
Denis Merigoux
ee9989c4b9
Dumped code from the wasm2cretonne repo.
...
Integrated wasm test suite translation as cretonne test
Fixes #146 .
Fixes #143 .
2017-08-28 15:57:43 -07:00
Jakob Stoklund Olesen
897c363714
Update docopt dependency to 0.8.0.
...
This breaks our depending on two different versions of the regex
library.
This updated docopt uses serde instead of rustc_serialize.
2017-06-14 10:38:06 -07:00
Jakob Stoklund Olesen
ee5f035e31
Upgrade to Rust 1.17.
...
- Remove some uses of 'static in const and static globals that are no
longer needed.
- Use the new struct initialization shorthand.
2017-04-27 12:46:44 -07:00
Jakob Stoklund Olesen
1984c96f7c
rustfmt 0.8.1
2017-04-05 09:00:11 -07:00
Jakob Stoklund Olesen
9549cf603c
Add a primitive debug tracing facility.
...
When the CRETONNE_DBG environment variable is set, send debug messages
to a file named cretonne.dbg.*.
The trace facility is only enabled when debug assertions are on.
2017-03-15 11:32:01 -07:00
Jakob Stoklund Olesen
010861d58e
Upgrade to rustfmt 0.8.0.
...
Lots of changes this time.
Worked around what looks like a rustfmt bug in parse_inst_operands where
a large match was nested inside Ok().
2017-03-14 10:48:05 -07:00
Jakob Stoklund Olesen
f9734458f8
Promote the src/tools crate to the top-level workspace.
...
The 'src' and 'tests' top-level directories now contain tools sources
and integration tests for any of the library crates.
2016-10-17 15:04:29 -07:00