Nick Lewycky
99f7499a05
Reimplement I32Ctz, I64Clz and I64Ctz without LZCNT or TZCNT.
2019-10-15 13:42:05 -07:00
Nick Lewycky
3e854c4a3b
Remove the exclusions for I32Clz.
2019-10-15 13:21:07 -07:00
bors[bot]
2695093a03
Merge #863
...
863: Rewrite Min/Max to handle all cases correctly. Fixes 545 spectest failures. r=nlewycky a=nlewycky
# Description
The llvm backend was not quite following the Wasm spec for {F32,F64,F32x4xF64x2}{Min,Max}. We used the `@llvm.minnum` and `@llvm.maxnum` intrinsics which don't handle the corner cases the same. When we tried to use `@llvm.minimum` and `@llvm.maximum` which do, we get an internal error from the x86 backend. I was hoping that crash would go away with the upgrade to LLVM 9, but it does not.
Reimplement these operations using plain LLVM instructions.
# Review
- [x] Add a short description of the the change to the CHANGELOG.md file
Co-authored-by: Nick Lewycky <nick@wasmer.io>
2019-10-09 22:24:07 +00:00
Nick Lewycky
158db4cee1
Remove exclusions for tests that appear to be passing right now.
2019-10-07 15:11:45 -07:00
Nick Lewycky
1a7f00f0af
Rewrite Min/Max to handle all cases correctly.
...
Fixes 545 spectest failures.
2019-10-03 18:19:12 -07:00
Nick Lewycky
ba68cfc2c6
Finish atomic operations for singlepass, excluding wait and notify.
2019-10-02 16:31:11 -07:00
Nick Lewycky
05816e3221
This is no longer referring to the correct line.
...
It's supposed to be 352 which is already there.
2019-09-16 13:13:21 -07:00
Nick Lewycky
2108c908a4
Depending on the micro-arch, this function may trigger emission of a stack realignment. If it does, OSR can't statically prove that it's safe to insert a function call and asserts.
2019-09-16 12:14:10 -07:00
Syrus
20c296ef2b
Fixed excludes
2019-09-01 10:21:46 -07:00
Syrus
416d8d13d1
Fix tests exclusion
2019-09-01 09:31:02 -07:00
Syrus
dc02d0e401
Comment LLVM SIMD spectests on Linux after OSR
2019-09-01 08:52:03 -07:00
Nick Lewycky
1568084d42
Add atomic.wast which we have zero failures on with the llvm backend.
...
Enable shared memory usage in simd.wast.
Exclude atomic.wast on singlepass and clif.
2019-08-20 11:17:52 -07:00
Brandon Fish
439e81d41e
Fix singlepass error when no function code present
2019-08-15 10:15:58 -06:00
Brandon Fish
8e46e797ac
Compare float bits in spectests assert return
2019-08-13 22:14:10 -06:00
Brandon Fish
0bf33662d1
Add missing LLVM imported memory functions
2019-08-13 20:07:55 -06:00
Brandon Fish
137ac206af
Return compile error (llvm) for setting immutable global
2019-08-13 17:59:04 -06:00
Syrus Akbary
5239cdb85a
Merge pull request #668 from wasmerio/feature/update-wabt-to-fix-names-spectests
...
Update WABT dep to fix names spectests
2019-08-13 00:13:36 -07:00
Brandon Fish
e76777ed9b
Finalize signatures & names when no function bodies
2019-08-12 20:22:54 -06:00
Brandon Fish
d695bd0c84
Update WABT dep to fixe names spectests
2019-08-12 15:35:32 -06:00
Brandon Fish
20cb7c0048
Merge branch 'master' into feature/unexclude-passing-elem-spec
2019-08-11 18:04:54 -06:00
Brandon Fish
c837b56678
Unexclude passing elem spec
2019-08-11 13:52:57 -06:00
Brandon Fish
f61fc5c298
Validate all initializers before finalizing
2019-08-11 13:28:47 -06:00
Brandon Fish
b7970fb982
Uncomment slow exclude test again
2019-08-10 17:11:32 -06:00
Brandon Fish
0b73776c84
Validate all memory data initializers before writing
2019-08-10 17:10:24 -06:00
Brandon Fish
228d562a3b
Re-use registered module instances in spectests
2019-08-10 15:56:25 -06:00
Brandon Fish
a621b86286
Update windows excludes
2019-08-10 15:04:24 -06:00
Brandon Fish
bb8b4960b8
Remove filter which prevents initializer offset check
2019-08-10 13:59:31 -06:00
Brandon Fish
1584beebe6
Invalid table size for elems should produce link error
2019-08-10 12:13:14 -06:00
Brandon Fish
7f0c48b354
Add windows clif excludes
2019-08-08 21:12:36 -06:00
Brandon Fish
a7ff120dd9
Fix some spectest imports and namespace_table issue
2019-08-08 21:03:00 -06:00
Brandon Fish
1c32e2a4af
Add windows specific clif failures
2019-08-07 23:10:50 -06:00
Brandon Fish
0b0a77413e
Unexclude some now passing assert_unlinkable
2019-08-07 19:45:31 -06:00
Brandon Fish
dc8384ed22
Add windows specific excludes
2019-08-06 21:03:09 -06:00
Brandon Fish
8c13eae2b8
Allow platform specific excludes
2019-08-05 20:57:07 -06:00
Brandon Fish
a56aaeaaa3
Add additional spectest imports
2019-08-05 19:25:12 -06:00
Brandon Fish
08eb113394
Output failures in exclude format and add all failures as excludes
2019-08-05 17:51:02 -06:00
Nick Lewycky
1d54a938f6
Fix a couple bugs testing NaNs. Add an exclusion list for LLVM min/max.
2019-08-05 15:38:03 -07:00
Brandon Fish
43ae30985c
Cleanup test runner
2019-08-04 16:44:27 -06:00
Brandon Fish
e3d78a1343
Implement allowed failures
2019-08-04 16:13:47 -06:00
Brandon Fish
7060785d8d
Implement assert_exhaustion
2019-08-04 13:18:57 -06:00
Brandon Fish
36bcda711f
Update spectests and run by globbing wast files
2019-08-04 12:42:20 -06:00
Brandon Fish
0583ae4846
Add system to skip wast commands to allow failures or skipping
2019-08-04 11:25:46 -06:00