mirror of
				https://github.com/bytecodealliance/wasm-micro-runtime.git
				synced 2025-10-31 05:11:19 +00:00 
			
		
		
		
	Implement the GC (Garbage Collection) feature for interpreter mode, AOT mode and LLVM-JIT mode, and support most features of the latest spec proposal, and also enable the stringref feature. Use `cmake -DWAMR_BUILD_GC=1/0` to enable/disable the feature, and `wamrc --enable-gc` to generate the AOT file with GC supported. And update the AOT file version from 2 to 3 since there are many AOT ABI breaks, including the changes of AOT file format, the changes of AOT module/memory instance layouts, the AOT runtime APIs for the AOT code to invoke and so on.
		
			
				
	
	
		
			54 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| diff --git a/test/core/return_call.wast b/test/core/return_call.wast
 | |
| index ad66acca..b27af19b 100644
 | |
| --- a/test/core/return_call.wast
 | |
| +++ b/test/core/return_call.wast
 | |
| @@ -102,20 +102,20 @@
 | |
|  
 | |
|  (assert_return (invoke "count" (i64.const 0)) (i64.const 0))
 | |
|  (assert_return (invoke "count" (i64.const 1000)) (i64.const 0))
 | |
| -(assert_return (invoke "count" (i64.const 100_000)) (i64.const 0))
 | |
| +(assert_return (invoke "count" (i64.const 1001)) (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))
 | |
| -(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 "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))
 | |
| -(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))
 | |
|  
 | |
|  
 | |
|  ;; Invalid typing
 | |
| diff --git a/test/core/return_call_indirect.wast b/test/core/return_call_indirect.wast
 | |
| index 6b95c24b..a9e86d42 100644
 | |
| --- a/test/core/return_call_indirect.wast
 | |
| +++ b/test/core/return_call_indirect.wast
 | |
| @@ -257,14 +257,14 @@
 | |
|  (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 "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))
 | |
| -(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))
 | |
|  
 | |
|  
 | |
|  ;; Invalid syntax
 |