Thomas Lively
03128d62b8
[WebAssembly][NFC] Rename test functions for builtins
...
Reviewers: aheejin, dschuff
Subscribers: sbc100, jgravelle-google, sunfish, jfb, kristina, cfe-commits
Differential Revision: https://reviews.llvm.org/D53007
llvm-svn: 344009
2018-10-09 00:42:13 +00:00
Thomas Lively
d2a293c562
[WebAssembly] abs and sqrt builtins
...
Summary: Depends on D52910.
Reviewers: aheejin, dschuff, craig.topper
Subscribers: sbc100, jgravelle-google, sunfish, kristina, cfe-commits
Differential Revision: https://reviews.llvm.org/D52913
llvm-svn: 343838
2018-10-05 01:02:54 +00:00
Thomas Lively
291d75b0de
[WebAssembly] any_true and all_true builtins
...
Summary: Depends on D52858.
Reviewers: aheejin, dschuff, craig.topper
Subscribers: sbc100, jgravelle-google, sunfish, kristina, cfe-commits
Differential Revision: https://reviews.llvm.org/D52910
llvm-svn: 343837
2018-10-05 00:59:37 +00:00
Thomas Lively
9034a47e79
[WebAssembly] saturating arithmetic builtins
...
Summary: Depends on D52856.
Reviewers: aheejin, dschuff
Subscribers: sbc100, jgravelle-google, sunfish, kristina, cfe-commits
Differential Revision: https://reviews.llvm.org/D52858
llvm-svn: 343836
2018-10-05 00:58:56 +00:00
Thomas Lively
a347436f09
[WebAssembly] __builtin_wasm_replace_lane_* builtins
...
Summary: Depends on D52852.
Reviewers: aheejin, dschuff
Subscribers: sbc100, jgravelle-google, sunfish, kristina, cfe-commits
Differential Revision: https://reviews.llvm.org/D52856
llvm-svn: 343835
2018-10-05 00:58:07 +00:00
Thomas Lively
d6792c0c28
[WebAssembly] __builtin_wasm_extract_lane_* builtins
...
Reviewers: aheejin, dschuff
Subscribers: sbc100, jgravelle-google, sunfish, kristina, cfe-commits
Differential Revision: https://reviews.llvm.org/D52852
llvm-svn: 343834
2018-10-05 00:54:44 +00:00
Heejin Ahn
4fa8dd95dd
[WebAssembly] clang-format (NFC)
...
Summary: This patch runs clang-format on all wasm-only files.
Subscribers: dschuff, sbc100, jgravelle-google, sunfish, jfb, cfe-commits
Differential Revision: https://reviews.llvm.org/D51448
llvm-svn: 341254
2018-08-31 20:57:00 +00:00
Heejin Ahn
f0fe359bc3
[WebAssembly] Revert type of wake count in atomic.wake to i32
...
Summary:
We decided to revert this from i64 to i32 in Nov 28 CG meeting. Fixes
PR38632.
Reviewers: dschuff
Subscribers: sbc100, jgravelle-google, sunfish, jfb, cfe-commits
Differential Revision: https://reviews.llvm.org/D51013
llvm-svn: 340235
2018-08-20 23:49:34 +00:00
Heejin Ahn
00aa81b4df
[WebAssembly] Support for atomic.wait / atomic.wake builtins
...
Summary:
Add support for atomic.wait / atomic.wake builtins based on the Wasm
thread proposal.
Reviewers: dschuff
Subscribers: sbc100, jgravelle-google, sunfish, cfe-commits
Differential Revision: https://reviews.llvm.org/D49396
llvm-svn: 338771
2018-08-02 21:44:40 +00:00
Dan Gohman
9f8ee03772
[WebAssembly] Update to the new names for the memory builtin functions.
...
The WebAssembly committee has decided on the names `memory.size` and
`memory.grow` for the memory intrinsics, so update the clang builtin
functions to follow those names, keeping both sets of old names in place
for compatibility.
llvm-svn: 333712
2018-06-01 00:05:51 +00:00
Dan Gohman
4f637e0ccc
[WebAssembly] Add mem.* builtin functions.
...
This corresponds to r323222 in LLVM. The new names are not yet
finalized, so use them at your own risk.
llvm-svn: 323224
2018-01-23 17:04:04 +00:00
Heejin Ahn
b29a17ba21
[WebAssembly] Restore __builtin_wasm_rethrow builtin
...
Summary:
Restore the `__builtin_wasm_rethrow` builtin deleted in D37931. On second
thought, it appears it can be used to implement `__cxa_rethrow`.
Reviewers: dschuff, sunfish
Reviewed By: dschuff
Subscribers: jfb, sbc100, jgravelle-google
Differential Revision: https://reviews.llvm.org/D37942
llvm-svn: 313430
2017-09-16 01:07:43 +00:00
Heejin Ahn
fa9e1fba8c
Remove __builtin_wasm_rethrow builtin
...
Summary:
Remove `__builtin_wasm_rethrow` builtin. I thought it was required to implement
`__cxa_rethrow` function in libcxxabi, but it turned out it will be using
`__builtin_wasm_throw` instead.
Reviewers: dschuff, jgravelle-google
Reviewed By: jgravelle-google
Subscribers: jfb, sbc100, jgravelle-google
Differential Revision: https://reviews.llvm.org/D37931
llvm-svn: 313402
2017-09-15 22:01:22 +00:00
Heejin Ahn
b92440eab0
[WebAssembly] Add throw/rethrow builtins for exception handling
...
Summary:
Add new builtins for throw/rethrow instructions. This follows exception handling
handling proposal in
https://github.com/WebAssembly/exception-handling/blob/master/proposals/Exceptions.md
Reviewers: sunfish, dschuff
Reviewed By: dschuff
Subscribers: jfb, dschuff, sbc100, jgravelle-google
Differential Revision: https://reviews.llvm.org/D34783
llvm-svn: 306775
2017-06-30 00:44:01 +00:00
Dan Gohman
0c5954195b
[WebAssembly] Update grow_memory's return type.
...
The grow_memory instruction now returns the previous memory size. Add the
return type to the clang intrinsic.
llvm-svn: 292324
2017-01-18 01:03:35 +00:00
Derek Schuff
dbd24b4593
[WebAssembly] Rename memory_size intrinsic to current_memory
...
This follows the recent change in the wasm spec.
llvm-svn: 268256
2016-05-02 17:26:19 +00:00
Dan Gohman
24f0a08c1b
[WebAssembly] Update wasm builtin functions to match spec changes.
...
The page_size operator has been removed from the spec, and the resize_memory
operator has been changed to grow_memory.
llvm-svn: 252201
2015-11-05 20:16:37 +00:00
Dan Gohman
266b38ab56
[WebAssembly] Add a __builtin_wasm_resize_memory() intrinsic.
...
llvm-svn: 249179
2015-10-02 20:20:01 +00:00
Dan Gohman
d4c5fb597d
[WebAssembly] Add a __builtin_wasm_memory_size() intrinsic.
...
llvm-svn: 249176
2015-10-02 19:38:47 +00:00
Dan Gohman
c285307e14
[WebAssembly] Initial WebAssembly support in clang
...
This implements basic support for compiling (though not yet assembling
or linking) for a WebAssembly target. Note that ABI details are not yet
finalized, and may change.
Differential Revision: http://reviews.llvm.org/D12002
llvm-svn: 246814
2015-09-03 22:51:53 +00:00