Synchronize the GC spec tests to the commit from December 9. 2024. (#4022)
- Synchronize the GC spec tests to the commit from December 9. 2024. - Revise the error messages to be consistent with the spec test cases. - bypass gc spec test on the nuttx platform as a workaround
This commit is contained in:
@ -100,7 +100,12 @@ def ignore_the_case(
|
||||
return True
|
||||
|
||||
if gc_flag:
|
||||
if case_name in ["array_init_elem", "array_init_data"]:
|
||||
if case_name in [
|
||||
"array_init_elem",
|
||||
"array_init_data",
|
||||
"array_new_data",
|
||||
"array_new_elem"
|
||||
]:
|
||||
return True
|
||||
|
||||
if sgx_flag:
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,53 +1,56 @@
|
||||
diff --git a/test/core/return_call.wast b/test/core/return_call.wast
|
||||
index ad66acca..b27af19b 100644
|
||||
index 8a3d7512..5a4eba68 100644
|
||||
--- a/test/core/return_call.wast
|
||||
+++ b/test/core/return_call.wast
|
||||
@@ -102,20 +102,20 @@
|
||||
|
||||
@@ -103,22 +103,22 @@
|
||||
(assert_return (invoke "count" (i64.const 0)) (i64.const 0))
|
||||
(assert_return (invoke "count" (i64.const 1000)) (i64.const 0))
|
||||
(;Return to the original configuration after we have corrected the error in the AOT/JIT tail-call implementation.;)
|
||||
-(assert_return (invoke "count" (i64.const 100_000)) (i64.const 0))
|
||||
+(assert_return (invoke "count" (i64.const 1001)) (i64.const 0))
|
||||
+(assert_return (invoke "count" (i64.const 1_001)) (i64.const 0))
|
||||
|
||||
(assert_return (invoke "even" (i64.const 0)) (i32.const 44))
|
||||
(assert_return (invoke "even" (i64.const 1)) (i32.const 99))
|
||||
(assert_return (invoke "even" (i64.const 100)) (i32.const 44))
|
||||
(assert_return (invoke "even" (i64.const 77)) (i32.const 99))
|
||||
(;Return to the original configuration after we have corrected the error in the AOT/JIT tail-call implementation.;)
|
||||
-(assert_return (invoke "even" (i64.const 100_000)) (i32.const 44))
|
||||
-(assert_return (invoke "even" (i64.const 100_001)) (i32.const 99))
|
||||
+(assert_return (invoke "even" (i64.const 1000)) (i32.const 44))
|
||||
+(assert_return (invoke "even" (i64.const 1001)) (i32.const 99))
|
||||
+(assert_return (invoke "even" (i64.const 1_000)) (i32.const 44))
|
||||
+(assert_return (invoke "even" (i64.const 1_001)) (i32.const 99))
|
||||
(assert_return (invoke "odd" (i64.const 0)) (i32.const 99))
|
||||
(assert_return (invoke "odd" (i64.const 1)) (i32.const 44))
|
||||
(assert_return (invoke "odd" (i64.const 200)) (i32.const 99))
|
||||
(assert_return (invoke "odd" (i64.const 77)) (i32.const 44))
|
||||
(;Return to the original configuration after we have corrected the error in the AOT/JIT tail-call implementation.;)
|
||||
-(assert_return (invoke "odd" (i64.const 100_000)) (i32.const 99))
|
||||
-(assert_return (invoke "odd" (i64.const 99_999)) (i32.const 44))
|
||||
+(assert_return (invoke "odd" (i64.const 1000)) (i32.const 99))
|
||||
+(assert_return (invoke "odd" (i64.const 999)) (i32.const 44))
|
||||
-(assert_return (invoke "odd" (i64.const 99_999)) (i32.const 44))
|
||||
+(assert_return (invoke "odd" (i64.const 1_000)) (i32.const 99))
|
||||
+(assert_return (invoke "odd" (i64.const 999)) (i32.const 44))
|
||||
|
||||
|
||||
;; Invalid typing
|
||||
diff --git a/test/core/return_call_indirect.wast b/test/core/return_call_indirect.wast
|
||||
index 6b95c24b..a9e86d42 100644
|
||||
index 7f68b4a5..08a31417 100644
|
||||
--- a/test/core/return_call_indirect.wast
|
||||
+++ b/test/core/return_call_indirect.wast
|
||||
@@ -257,14 +257,14 @@
|
||||
@@ -257,15 +257,15 @@
|
||||
(assert_return (invoke "even" (i32.const 1)) (i32.const 99))
|
||||
(assert_return (invoke "even" (i32.const 100)) (i32.const 44))
|
||||
(assert_return (invoke "even" (i32.const 77)) (i32.const 99))
|
||||
-(assert_return (invoke "even" (i32.const 100_000)) (i32.const 44))
|
||||
-(assert_return (invoke "even" (i32.const 111_111)) (i32.const 99))
|
||||
+(assert_return (invoke "even" (i32.const 1000)) (i32.const 44))
|
||||
+(assert_return (invoke "even" (i32.const 1111)) (i32.const 99))
|
||||
+(assert_return (invoke "even" (i32.const 1_000)) (i32.const 44))
|
||||
+(assert_return (invoke "even" (i32.const 1_001)) (i32.const 99))
|
||||
(assert_return (invoke "odd" (i32.const 0)) (i32.const 99))
|
||||
(assert_return (invoke "odd" (i32.const 1)) (i32.const 44))
|
||||
(assert_return (invoke "odd" (i32.const 200)) (i32.const 99))
|
||||
(assert_return (invoke "odd" (i32.const 77)) (i32.const 44))
|
||||
(;Return to the original configuration after we have corrected the error in the AOT/JIT tail-call implementation.;)
|
||||
-(assert_return (invoke "odd" (i32.const 100_002)) (i32.const 99))
|
||||
-(assert_return (invoke "odd" (i32.const 100_003)) (i32.const 44))
|
||||
+(assert_return (invoke "odd" (i32.const 1002)) (i32.const 99))
|
||||
+(assert_return (invoke "odd" (i32.const 1003)) (i32.const 44))
|
||||
+(assert_return (invoke "odd" (i32.const 1_002)) (i32.const 99))
|
||||
+(assert_return (invoke "odd" (i32.const 1_003)) (i32.const 44))
|
||||
|
||||
|
||||
;; Invalid syntax
|
||||
|
||||
@ -467,8 +467,8 @@ function spec_test()
|
||||
git clone -b main --single-branch https://github.com/WebAssembly/gc.git spec
|
||||
pushd spec
|
||||
|
||||
# Reset to commit: "[test] Unify the error message."
|
||||
git reset --hard 0caaadc65b5e1910512d8ae228502edcf9d60390
|
||||
# Dec 9, 2024. Merge branch 'funcref'
|
||||
git reset --hard 756060f5816c7e2159f4817fbdee76cf52f9c923
|
||||
git apply ../../spec-test-script/gc_ignore_cases.patch || exit 1
|
||||
|
||||
if [[ ${ENABLE_QEMU} == 1 ]]; then
|
||||
@ -477,6 +477,13 @@ function spec_test()
|
||||
git apply ../../spec-test-script/gc_nuttx_tail_call.patch || exit 1
|
||||
fi
|
||||
|
||||
# As of version 1.0.36, wabt is still unable to correctly handle the GC proposal.
|
||||
#
|
||||
# $ $ /opt/wabt-1.0.36/bin/wast2json --enable-all ../spec/test/core/br_if.wast
|
||||
#
|
||||
# ../spec/test/core/br_if.wast:670:26: error: unexpected token "null", expected a numeric index or a name (e.g. 12 or $foo).
|
||||
# (func $f (param (ref null $t)) (result funcref) (local.get 0))
|
||||
#
|
||||
compile_reference_interpreter
|
||||
elif [[ ${ENABLE_MEMORY64} == 1 ]]; then
|
||||
echo "checkout spec for memory64 proposal"
|
||||
|
||||
Reference in New Issue
Block a user