Caroline Cullen
ad184ff9aa
Fixing serde formatting.
2018-08-09 20:12:43 -07:00
Caroline Cullen
9683adec64
Updating documentation for serde
2018-08-09 20:12:43 -07:00
Maddy
32b332b733
Format files.
2018-08-09 19:52:21 -07:00
Maddy
ee9e5cba49
Convert the start function index from a DefinedFuncIndex to a FuncIndex.
2018-08-09 19:52:21 -07:00
Maddy
f5d46cabe7
Use types to distinguish between wasm function body indices and wasm function indices.
2018-08-09 19:52:21 -07:00
Benjamin Bouvier
f7e481d9ac
Implement wasm saturating conversions;
2018-08-09 19:50:41 -07:00
Sergey Pepyakin
9dbfbbde10
Stack Limit as an Argument Purpose ( #372 )
...
* Initial approach.
* Move stack_limit check before opening the frame
* Account for GPRs and frame pointer in stack check
* Check stack_limit example.
* Remove stack_limit attribute code.
Amends #359
* fmt
2018-08-04 06:16:21 -07:00
Dan Gohman
217786e969
Add a note about the "rustc" tag in the issue tracker.
...
And other minor documentation fixes.
2018-08-03 12:17:25 -07:00
Bruce Mitchener
76a7efc8db
Clippy improvements ( #408 )
...
* clippy: Allow subsec_nanos usage for now.
The recommendation from clippy requires Rust 1.27, but we currently
support Rust 1.25 and later.
* Simplify ref pattern matches.
This was recommended by clippy.
2018-08-02 22:10:51 -07:00
Dan Gohman
c0af810ec0
Add an explicit version to the cranelift-codegen-meta dependency.
...
This allows it to work in crates.io.
2018-08-02 20:37:58 -07:00
Dan Gohman
cf2bac139d
Add codegen/meta to publish-all.sh.
2018-08-02 20:28:29 -07:00
Dan Gohman
cd02010a78
Bump version to 0.18.1
2018-08-02 20:10:23 -07:00
Dan Gohman
a52c547d0e
Rename "meta" back to "cranelift-codegen-meta" and publish it.
...
It appears that having the meta directory crate be inside the codegen
directory is not enough to allow codegen to depend on it without it
being published. So, let's just publish it.
2018-08-02 20:04:41 -07:00
Dan Gohman
c4a056a7a0
Bump version to 0.18.0
2018-08-02 18:34:22 -07:00
Dan Gohman
570f7bc20b
Rename "cranelift-meta" to just "meta".
...
This makes it easier for the publish-all.sh script to know to skip this
crate, and it avoids the need to use `extern cranelift_meta as meta`.
2018-08-02 15:36:54 -07:00
Dan Gohman
c5a554db83
Move the comment about Sphinx 1.4 out of the top-level README.
2018-08-02 15:25:09 -07:00
Dan Gohman
5cf2c6f0f7
Update cranelift-meta's Cargo.toml to reflect that it's not published.
2018-08-02 15:25:09 -07:00
Dan Gohman
7f530cd751
Add a langref.rst page that redirects to the new ir.rst page.
2018-08-02 15:25:09 -07:00
Dan Gohman
1b30265c5c
Define a "table" concept.
...
"Table" is to WebAssembly tables as "Heap" is to WebAssembly linear
memories.
2018-08-02 15:21:34 -07:00
Dan Gohman
cd75176f10
Update to the rustfmt in rust 1.28, which is now stable.
...
Also, rustfmt's --write-mode=check is now named --check.
2018-08-02 09:55:40 -07:00
Dan Gohman
26d122306d
Don't attempt to shrink regfill/regspill/regmove instructions.
...
This is a temporary workaround for bugs such as #420 , where normal
operand constraint checking doesn't correctly handle such instructions.
2018-08-02 09:53:25 -07:00
Dan Gohman
c61f8a5baf
Rename langref.rst to ir.rst.
...
This aligns with our use of the term "IR" rather than "IL" or
other terms involving "language".
2018-08-02 09:18:59 -07:00
Dan Gohman
987bbfa922
Fix rustfmt errors.
2018-08-01 15:14:49 -07:00
bjorn3
5389b7784e
Check signature compatibility in declare_function ( fixes #427 )
2018-08-01 14:23:59 -07:00
Dan Gohman
a8ded3a6f1
Remove unneeded dependencies.
2018-08-01 14:12:46 -07:00
Dan Gohman
bc8e5f82c8
Add use declarations needed for no_std mode.
2018-08-01 14:10:54 -07:00
Dan Gohman
c8350f4e8f
Update to raw-cpuid 5.0.0.
2018-08-01 14:06:16 -07:00
Dan Gohman
b8dbbce99d
Update cranelift-serde's license field.
...
This updates it to "Apache-2.0 WITH LLVM-exception".
2018-08-01 13:36:58 -07:00
Dan Gohman
c49c20713c
Check for duplicate jump tables before performing any IR mutations.
...
This isn't fixing an actual bug, but it does make `add_jt` more
consistent with the other `add_*` functions.
2018-08-01 13:33:54 -07:00
Dan Gohman
63e87895eb
Remove an unneeded command-line option.
2018-08-01 13:24:53 -07:00
Dan Gohman
f89cb1df64
Fix the test script to return an error if formatting diffs are found.
2018-08-01 13:24:53 -07:00
bjorn3
01729be8d7
Add comment support ( #379 )
...
* Add comment support
* Don't print empty comments
* Add nop instruction
* Add test and note
* Add FuncWriter trait
* Remove comment support
* Add write_preamble to FuncWriter
* Fix test
* Some changes
2018-08-01 11:21:05 -07:00
Dan Gohman
c42bed7452
Update paths for the meta => meta-python rename.
2018-08-01 05:05:33 -07:00
Benjamin Bouvier
3a550d185f
Enhance Verifier error reporting;
2018-07-31 08:02:14 -07:00
Dan Gohman
1b42105faa
Remove reserved_reg functionality. ( #424 )
...
* Remove reserved_reg functionality.
This wasn't implemented, and if we need it in the future, it seems like
it would be better to extend the concept of global values to cover this.
* Use GlobalValue::reserved_value() for sentinal values.
2018-07-31 07:57:37 -07:00
data-pup
d9d40e1cdf
lib/codegen-meta moved into lib/codegen. ( #423 )
...
* lib/codegen-meta moved into lib/codegen.
* Renamed codegen-meta and existing meta.
2018-07-31 07:56:26 -07:00
Caroline Cullen
65a1a6bb28
Add serde functionality into lib. ( #422 )
...
* Adds decoration to the verifier errors.
example:
function %bad(i32) fast {
ebb0(v0: i32):
brnz.i32 v0, ebb1
return
^~~~~~
verifier inst1: Internal return not allowed with return_at_end=1
ebb1:
trapz.i32 v0, user6
return
}
Fixes #68
* Making it so that pretty_function_error and write_function_plain are both private.
* Changes write_ebb to decorate_ebb.
Adds documentation line to decorate_function.
* Removing Cargo.toml lib/serde addition
* Add serde functionality into lib.
* Fix so code is compatible with Rust version 1.25.0.
* Move ser/de functions to utility file, update description, remove borrow from arms.
* Remove commented out code.
2018-07-31 07:48:12 -07:00
Aaron Power
13fea26c95
Correctly handle duplicate definitions
2018-07-28 11:48:13 -07:00
Dan Gohman
d0fbf47987
Fix rustfmt errors.
2018-07-26 11:51:12 -07:00
Dan Gohman
e0124fa82f
Rename local variables to clarify their purpose.
2018-07-26 11:14:52 -07:00
Dan Gohman
15520fa961
Enable a few more clippy lints.
2018-07-26 10:10:36 -07:00
Aaron Power
cc7ba7e69a
Fixed remaning clippy warnings
2018-07-25 13:05:14 -07:00
Aaron Power
952a086f32
Fixed trivially_copy_pass_by_ref warnings
2018-07-25 10:31:01 -07:00
Corey Farwell
299898d494
Add fuzz target for cranelift_reader::parse_test.
2018-07-24 12:42:11 -07:00
Aaron Power
eed861c6e1
Implemented clippy improvements
2018-07-24 12:36:34 -07:00
Dan Gohman
d6d1e7253d
Bump version to 0.17.0
2018-07-23 16:57:51 -07:00
Dan Gohman
8904ec77c9
Temporarily disable use of cretonne-codegen-meta.
...
Once we figure out how to publish this code, we can re-enable it.
2018-07-23 16:57:51 -07:00
Dan Gohman
6cb03a873d
Bump version to 0.17.0-alpha
2018-07-23 16:15:53 -07:00
Benjamin Bouvier
78b04fc8ab
Promote the (Block, Inst) tuple into a PredBlock struct;
2018-07-23 15:26:11 -07:00
Benjamin Bouvier
f72ff791b4
Promote the BasicBlock tuple to a real struct;
...
It makes reading code that uses it easier to understand.
2018-07-23 15:26:11 -07:00