From 5c314484ea22d86bd93177cc17e9284417030eb3 Mon Sep 17 00:00:00 2001 From: Mark McCaskey Date: Wed, 18 Dec 2019 12:48:17 -0500 Subject: [PATCH 1/3] Update wasmparser to version 0.45.0 --- Cargo.lock | 12 +++++++++--- lib/clif-backend/Cargo.toml | 2 +- lib/llvm-backend/Cargo.toml | 2 +- lib/runtime-core/Cargo.toml | 2 +- lib/runtime-core/src/parse.rs | 2 +- 5 files changed, 13 insertions(+), 7 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index eedc2310d7d..641571eda1c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1342,7 +1342,7 @@ dependencies = [ "wasmer-clif-fork-wasm 0.44.0 (registry+https://github.com/rust-lang/crates.io-index)", "wasmer-runtime-core 0.11.0", "wasmer-win-exception-handler 0.11.0", - "wasmparser 0.39.3 (registry+https://github.com/rust-lang/crates.io-index)", + "wasmparser 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1429,7 +1429,7 @@ dependencies = [ "smallvec 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)", "wabt 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", "wasmer-runtime-core 0.11.0", - "wasmparser 0.39.3 (registry+https://github.com/rust-lang/crates.io-index)", + "wasmparser 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1512,7 +1512,7 @@ dependencies = [ "serde_bytes 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)", - "wasmparser 0.39.3 (registry+https://github.com/rust-lang/crates.io-index)", + "wasmparser 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1601,6 +1601,11 @@ name = "wasmparser" version = "0.39.3" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "wasmparser" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "winapi" version = "0.2.8" @@ -1792,6 +1797,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum wasmer-clif-fork-frontend 0.44.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0cf2f552a9c1fda0555087170424bd8fedc63a079a97bb5638a4ef9b0d9656aa" "checksum wasmer-clif-fork-wasm 0.44.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0073b512e1af5948d34be7944b74c747bbe735ccff2e2f28c26ed4c90725de8e" "checksum wasmparser 0.39.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c702914acda5feeeffbc29e4d953e5b9ce79d8b98da4dbf18a77086e116c5470" +"checksum wasmparser 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)" = "cd242c848b25027c3e29fb2bd34c8648755b33fef66a22f65b942d06562d3020" "checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" "checksum winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6" "checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" diff --git a/lib/clif-backend/Cargo.toml b/lib/clif-backend/Cargo.toml index 1dea62a2415..1ce995518e3 100644 --- a/lib/clif-backend/Cargo.toml +++ b/lib/clif-backend/Cargo.toml @@ -18,7 +18,7 @@ cranelift-entity = "0.44.0" cranelift-frontend = { package = "wasmer-clif-fork-frontend", version = "0.44.0" } cranelift-wasm = { package = "wasmer-clif-fork-wasm", version = "0.44.0" } target-lexicon = "0.8.1" -wasmparser = "0.39.1" +wasmparser = "0.45.0" byteorder = "1.3.2" nix = "0.15.0" libc = "0.2.60" diff --git a/lib/llvm-backend/Cargo.toml b/lib/llvm-backend/Cargo.toml index fe7e7fe085f..482a29437b4 100644 --- a/lib/llvm-backend/Cargo.toml +++ b/lib/llvm-backend/Cargo.toml @@ -11,7 +11,7 @@ readme = "README.md" [dependencies] wasmer-runtime-core = { path = "../runtime-core", version = "0.11.0" } -wasmparser = "0.39.1" +wasmparser = "0.45.0" smallvec = "0.6" goblin = "0.0.24" libc = "0.2.60" diff --git a/lib/runtime-core/Cargo.toml b/lib/runtime-core/Cargo.toml index 1e28133c969..cf8e2851376 100644 --- a/lib/runtime-core/Cargo.toml +++ b/lib/runtime-core/Cargo.toml @@ -12,7 +12,7 @@ edition = "2018" [dependencies] nix = "0.15" page_size = "0.4" -wasmparser = "0.39.1" +wasmparser = "0.45.0" parking_lot = "0.9" lazy_static = "1.4" errno = "0.2" diff --git a/lib/runtime-core/src/parse.rs b/lib/runtime-core/src/parse.rs index ab6c79cbc0d..d41efedcb55 100644 --- a/lib/runtime-core/src/parse.rs +++ b/lib/runtime-core/src/parse.rs @@ -451,7 +451,7 @@ fn func_type_to_func_sig(func_ty: &FuncType) -> Result Result { Ok(match *op { - Operator::GetGlobal { global_index } => { + Operator::GlobalGet { global_index } => { Initializer::GetGlobal(ImportedGlobalIndex::new(global_index as usize)) } Operator::I32Const { value } => Initializer::Const(Value::I32(value)), From b856e9489e6a68600b06bf2faa73ba7fc2470732 Mon Sep 17 00:00:00 2001 From: Mark McCaskey Date: Wed, 18 Dec 2019 12:49:27 -0500 Subject: [PATCH 2/3] Update to 0.45.0 wasmparser Operator names in llvm-backend --- lib/llvm-backend/src/code.rs | 142 +++++++++++++++++------------------ 1 file changed, 71 insertions(+), 71 deletions(-) diff --git a/lib/llvm-backend/src/code.rs b/lib/llvm-backend/src/code.rs index bfce8351f39..2f9d6ab0256 100644 --- a/lib/llvm-backend/src/code.rs +++ b/lib/llvm-backend/src/code.rs @@ -1654,7 +1654,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct } // Operate on locals. - Operator::GetLocal { local_index } => { + Operator::LocalGet { local_index } => { let pointer_value = locals[local_index as usize]; let v = builder.build_load(pointer_value, &state.var_name()); tbaa_label( @@ -1666,14 +1666,14 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct ); state.push1(v); } - Operator::SetLocal { local_index } => { + Operator::LocalSet { local_index } => { let pointer_value = locals[local_index as usize]; let (v, i) = state.pop1_extra()?; let v = apply_pending_canonicalization(builder, intrinsics, v, i); let store = builder.build_store(pointer_value, v); tbaa_label(&self.module, intrinsics, "local", store, Some(local_index)); } - Operator::TeeLocal { local_index } => { + Operator::LocalTee { local_index } => { let pointer_value = locals[local_index as usize]; let (v, i) = state.peek1_extra()?; let v = apply_pending_canonicalization(builder, intrinsics, v, i); @@ -1681,7 +1681,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct tbaa_label(&self.module, intrinsics, "local", store, Some(local_index)); } - Operator::GetGlobal { global_index } => { + Operator::GlobalGet { global_index } => { let index = GlobalIndex::new(global_index as usize); let global_cache = ctx.global_cache(index, intrinsics, self.module.clone()); match global_cache { @@ -1701,7 +1701,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct } } } - Operator::SetGlobal { global_index } => { + Operator::GlobalSet { global_index } => { let (value, info) = state.pop1_extra()?; let value = apply_pending_canonicalization(builder, intrinsics, value, info); let index = GlobalIndex::new(global_index as usize); @@ -4361,21 +4361,21 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let res = builder.build_int_truncate(v, intrinsics.i32_ty, &state.var_name()); state.push1(res); } - Operator::I64ExtendSI32 => { + Operator::I64ExtendI32S => { let (v, i) = state.pop1_extra()?; let v = apply_pending_canonicalization(builder, intrinsics, v, i); let v = v.into_int_value(); let res = builder.build_int_s_extend(v, intrinsics.i64_ty, &state.var_name()); state.push1(res); } - Operator::I64ExtendUI32 => { + Operator::I64ExtendI32U => { let (v, i) = state.pop1_extra()?; let v = apply_pending_canonicalization(builder, intrinsics, v, i); let v = v.into_int_value(); let res = builder.build_int_z_extend(v, intrinsics.i64_ty, &state.var_name()); state.push1_extra(res, ExtraInfo::arithmetic_f64()); } - Operator::I32x4TruncSF32x4Sat => { + Operator::I32x4TruncSatF32x4S => { let (v, i) = state.pop1_extra()?; let v = apply_pending_canonicalization(builder, intrinsics, v, i); let v = v.into_int_value(); @@ -4393,7 +4393,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct ); state.push1(res); } - Operator::I32x4TruncUF32x4Sat => { + Operator::I32x4TruncSatF32x4U => { let (v, i) = state.pop1_extra()?; let v = apply_pending_canonicalization(builder, intrinsics, v, i); let v = v.into_int_value(); @@ -4411,7 +4411,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct ); state.push1(res); } - Operator::I64x2TruncSF64x2Sat => { + Operator::I64x2TruncSatF64x2S => { let (v, i) = state.pop1_extra()?; let v = apply_pending_canonicalization(builder, intrinsics, v, i); let v = v.into_int_value(); @@ -4429,7 +4429,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct ); state.push1(res); } - Operator::I64x2TruncUF64x2Sat => { + Operator::I64x2TruncSatF64x2U => { let (v, i) = state.pop1_extra()?; let v = apply_pending_canonicalization(builder, intrinsics, v, i); let v = v.into_int_value(); @@ -4447,7 +4447,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct ); state.push1(res); } - Operator::I32TruncSF32 => { + Operator::I32TruncF32S => { let v1 = state.pop1()?.into_float_value(); trap_if_not_representable_as_int( builder, intrinsics, context, &function, 0xcf000000, // -2147483600.0 @@ -4458,7 +4458,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct builder.build_float_to_signed_int(v1, intrinsics.i32_ty, &state.var_name()); state.push1(res); } - Operator::I32TruncSF64 => { + Operator::I32TruncF64S => { let v1 = state.pop1()?.into_float_value(); trap_if_not_representable_as_int( builder, @@ -4473,13 +4473,13 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct builder.build_float_to_signed_int(v1, intrinsics.i32_ty, &state.var_name()); state.push1(res); } - Operator::I32TruncSSatF32 | Operator::I32TruncSSatF64 => { + Operator::I32TruncSatF32S | Operator::I32TruncSatF64S => { let v1 = state.pop1()?.into_float_value(); let res = builder.build_float_to_signed_int(v1, intrinsics.i32_ty, &state.var_name()); state.push1(res); } - Operator::I64TruncSF32 => { + Operator::I64TruncF32S => { let v1 = state.pop1()?.into_float_value(); trap_if_not_representable_as_int( builder, intrinsics, context, &function, @@ -4491,7 +4491,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct builder.build_float_to_signed_int(v1, intrinsics.i64_ty, &state.var_name()); state.push1(res); } - Operator::I64TruncSF64 => { + Operator::I64TruncF64S => { let v1 = state.pop1()?.into_float_value(); trap_if_not_representable_as_int( builder, @@ -4506,13 +4506,13 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct builder.build_float_to_signed_int(v1, intrinsics.i64_ty, &state.var_name()); state.push1(res); } - Operator::I64TruncSSatF32 | Operator::I64TruncSSatF64 => { + Operator::I64TruncSatF32S | Operator::I64TruncSatF64S => { let v1 = state.pop1()?.into_float_value(); let res = builder.build_float_to_signed_int(v1, intrinsics.i64_ty, &state.var_name()); state.push1(res); } - Operator::I32TruncUF32 => { + Operator::I32TruncF32U => { let v1 = state.pop1()?.into_float_value(); trap_if_not_representable_as_int( builder, intrinsics, context, &function, 0xbf7fffff, // -0.99999994 @@ -4523,7 +4523,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct builder.build_float_to_unsigned_int(v1, intrinsics.i32_ty, &state.var_name()); state.push1(res); } - Operator::I32TruncUF64 => { + Operator::I32TruncF64U => { let v1 = state.pop1()?.into_float_value(); trap_if_not_representable_as_int( builder, @@ -4538,13 +4538,13 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct builder.build_float_to_unsigned_int(v1, intrinsics.i32_ty, &state.var_name()); state.push1(res); } - Operator::I32TruncUSatF32 | Operator::I32TruncUSatF64 => { + Operator::I32TruncSatF32U | Operator::I32TruncSatF64U => { let v1 = state.pop1()?.into_float_value(); let res = builder.build_float_to_unsigned_int(v1, intrinsics.i32_ty, &state.var_name()); state.push1(res); } - Operator::I64TruncUF32 => { + Operator::I64TruncF32U => { let v1 = state.pop1()?.into_float_value(); trap_if_not_representable_as_int( builder, intrinsics, context, &function, 0xbf7fffff, // -0.99999994 @@ -4555,7 +4555,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct builder.build_float_to_unsigned_int(v1, intrinsics.i64_ty, &state.var_name()); state.push1(res); } - Operator::I64TruncUF64 => { + Operator::I64TruncF64U => { let v1 = state.pop1()?.into_float_value(); trap_if_not_representable_as_int( builder, @@ -4570,7 +4570,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct builder.build_float_to_unsigned_int(v1, intrinsics.i64_ty, &state.var_name()); state.push1(res); } - Operator::I64TruncUSatF32 | Operator::I64TruncUSatF64 => { + Operator::I64TruncSatF32U | Operator::I64TruncSatF64U => { let v1 = state.pop1()?.into_float_value(); let res = builder.build_float_to_unsigned_int(v1, intrinsics.i64_ty, &state.var_name()); @@ -4588,7 +4588,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let res = builder.build_float_ext(v, intrinsics.f64_ty, &state.var_name()); state.push1_extra(res, ExtraInfo::pending_f64_nan()); } - Operator::F32ConvertSI32 | Operator::F32ConvertSI64 => { + Operator::F32ConvertI32S | Operator::F32ConvertI64S => { let (v, i) = state.pop1_extra()?; let v = apply_pending_canonicalization(builder, intrinsics, v, i); let v = v.into_int_value(); @@ -4596,7 +4596,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct builder.build_signed_int_to_float(v, intrinsics.f32_ty, &state.var_name()); state.push1(res); } - Operator::F64ConvertSI32 | Operator::F64ConvertSI64 => { + Operator::F64ConvertI32S | Operator::F64ConvertI64S => { let (v, i) = state.pop1_extra()?; let v = apply_pending_canonicalization(builder, intrinsics, v, i); let v = v.into_int_value(); @@ -4604,7 +4604,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct builder.build_signed_int_to_float(v, intrinsics.f64_ty, &state.var_name()); state.push1(res); } - Operator::F32ConvertUI32 | Operator::F32ConvertUI64 => { + Operator::F32ConvertI32U | Operator::F32ConvertI64U => { let (v, i) = state.pop1_extra()?; let v = apply_pending_canonicalization(builder, intrinsics, v, i); let v = v.into_int_value(); @@ -4612,7 +4612,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct builder.build_unsigned_int_to_float(v, intrinsics.f32_ty, &state.var_name()); state.push1(res); } - Operator::F64ConvertUI32 | Operator::F64ConvertUI64 => { + Operator::F64ConvertI32U | Operator::F64ConvertI64U => { let (v, i) = state.pop1_extra()?; let v = apply_pending_canonicalization(builder, intrinsics, v, i); let v = v.into_int_value(); @@ -4620,7 +4620,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct builder.build_unsigned_int_to_float(v, intrinsics.f64_ty, &state.var_name()); state.push1(res); } - Operator::F32x4ConvertSI32x4 => { + Operator::F32x4ConvertI32x4S => { let v = state.pop1()?; let v = builder .build_bitcast(v, intrinsics.i32x4_ty, "") @@ -4630,7 +4630,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let res = builder.build_bitcast(res, intrinsics.i128_ty, ""); state.push1(res); } - Operator::F32x4ConvertUI32x4 => { + Operator::F32x4ConvertI32x4U => { let v = state.pop1()?; let v = builder .build_bitcast(v, intrinsics.i32x4_ty, "") @@ -4640,7 +4640,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let res = builder.build_bitcast(res, intrinsics.i128_ty, ""); state.push1(res); } - Operator::F64x2ConvertSI64x2 => { + Operator::F64x2ConvertI64x2S => { let v = state.pop1()?; let v = builder .build_bitcast(v, intrinsics.i64x2_ty, "") @@ -4650,7 +4650,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let res = builder.build_bitcast(res, intrinsics.i128_ty, ""); state.push1(res); } - Operator::F64x2ConvertUI64x2 => { + Operator::F64x2ConvertI64x2U => { let v = state.pop1()?; let v = builder .build_bitcast(v, intrinsics.i64x2_ty, "") @@ -5704,7 +5704,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let res = builder.build_bitcast(res, intrinsics.i128_ty, ""); state.push1(res); } - Operator::I8x16LoadSplat { ref memarg } => { + Operator::V8x16LoadSplat { ref memarg } => { let effective_address = resolve_memory_ptr( builder, intrinsics, @@ -5739,7 +5739,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let res = builder.build_bitcast(res, intrinsics.i128_ty, ""); state.push1(res); } - Operator::I16x8LoadSplat { ref memarg } => { + Operator::V16x8LoadSplat { ref memarg } => { let effective_address = resolve_memory_ptr( builder, intrinsics, @@ -5774,7 +5774,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let res = builder.build_bitcast(res, intrinsics.i128_ty, ""); state.push1(res); } - Operator::I32x4LoadSplat { ref memarg } => { + Operator::V32x4LoadSplat { ref memarg } => { let effective_address = resolve_memory_ptr( builder, intrinsics, @@ -5809,7 +5809,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let res = builder.build_bitcast(res, intrinsics.i128_ty, ""); state.push1(res); } - Operator::I64x2LoadSplat { ref memarg } => { + Operator::V64x2LoadSplat { ref memarg } => { let effective_address = resolve_memory_ptr( builder, intrinsics, @@ -5844,7 +5844,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let res = builder.build_bitcast(res, intrinsics.i128_ty, ""); state.push1(res); } - Operator::Fence { flags: _ } => { + Operator::AtomicFence { flags: _ } => { // Fence is a nop. // // Fence was added to preserve information about fences from @@ -6228,7 +6228,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct .unwrap(); tbaa_label(&self.module, intrinsics, "memory", store, Some(0)); } - Operator::I32AtomicRmw8UAdd { ref memarg } => { + Operator::I32AtomicRmw8AddU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -6270,7 +6270,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i32_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f32()); } - Operator::I32AtomicRmw16UAdd { ref memarg } => { + Operator::I32AtomicRmw16AddU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -6351,7 +6351,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct ); state.push1(old); } - Operator::I64AtomicRmw8UAdd { ref memarg } => { + Operator::I64AtomicRmw8AddU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -6393,7 +6393,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i64_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f64()); } - Operator::I64AtomicRmw16UAdd { ref memarg } => { + Operator::I64AtomicRmw16AddU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -6435,7 +6435,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i64_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f64()); } - Operator::I64AtomicRmw32UAdd { ref memarg } => { + Operator::I64AtomicRmw32AddU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -6516,7 +6516,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct ); state.push1(old); } - Operator::I32AtomicRmw8USub { ref memarg } => { + Operator::I32AtomicRmw8SubU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -6558,7 +6558,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i32_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f32()); } - Operator::I32AtomicRmw16USub { ref memarg } => { + Operator::I32AtomicRmw16SubU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -6639,7 +6639,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct ); state.push1(old); } - Operator::I64AtomicRmw8USub { ref memarg } => { + Operator::I64AtomicRmw8SubU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -6681,7 +6681,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i64_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f32()); } - Operator::I64AtomicRmw16USub { ref memarg } => { + Operator::I64AtomicRmw16SubU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -6723,7 +6723,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i64_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f64()); } - Operator::I64AtomicRmw32USub { ref memarg } => { + Operator::I64AtomicRmw32SubU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -6804,7 +6804,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct ); state.push1(old); } - Operator::I32AtomicRmw8UAnd { ref memarg } => { + Operator::I32AtomicRmw8AndU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -6846,7 +6846,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i32_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f32()); } - Operator::I32AtomicRmw16UAnd { ref memarg } => { + Operator::I32AtomicRmw16AndU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -6927,7 +6927,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct ); state.push1(old); } - Operator::I64AtomicRmw8UAnd { ref memarg } => { + Operator::I64AtomicRmw8AndU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -6969,7 +6969,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i64_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f64()); } - Operator::I64AtomicRmw16UAnd { ref memarg } => { + Operator::I64AtomicRmw16AndU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7011,7 +7011,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i64_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f64()); } - Operator::I64AtomicRmw32UAnd { ref memarg } => { + Operator::I64AtomicRmw32AndU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7092,7 +7092,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct ); state.push1(old); } - Operator::I32AtomicRmw8UOr { ref memarg } => { + Operator::I32AtomicRmw8OrU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7134,7 +7134,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i32_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f32()); } - Operator::I32AtomicRmw16UOr { ref memarg } => { + Operator::I32AtomicRmw16OrU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7216,7 +7216,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i32_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f32()); } - Operator::I64AtomicRmw8UOr { ref memarg } => { + Operator::I64AtomicRmw8OrU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7258,7 +7258,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i64_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f64()); } - Operator::I64AtomicRmw16UOr { ref memarg } => { + Operator::I64AtomicRmw16OrU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7300,7 +7300,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i64_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f64()); } - Operator::I64AtomicRmw32UOr { ref memarg } => { + Operator::I64AtomicRmw32OrU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7381,7 +7381,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct ); state.push1(old); } - Operator::I32AtomicRmw8UXor { ref memarg } => { + Operator::I32AtomicRmw8XorU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7423,7 +7423,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i32_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f32()); } - Operator::I32AtomicRmw16UXor { ref memarg } => { + Operator::I32AtomicRmw16XorU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7504,7 +7504,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct ); state.push1(old); } - Operator::I64AtomicRmw8UXor { ref memarg } => { + Operator::I64AtomicRmw8XorU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7546,7 +7546,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i64_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f64()); } - Operator::I64AtomicRmw16UXor { ref memarg } => { + Operator::I64AtomicRmw16XorU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7588,7 +7588,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i64_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f64()); } - Operator::I64AtomicRmw32UXor { ref memarg } => { + Operator::I64AtomicRmw32XorU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7669,7 +7669,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct ); state.push1(old); } - Operator::I32AtomicRmw8UXchg { ref memarg } => { + Operator::I32AtomicRmw8XchgU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7711,7 +7711,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i32_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f32()); } - Operator::I32AtomicRmw16UXchg { ref memarg } => { + Operator::I32AtomicRmw16XchgU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7792,7 +7792,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct ); state.push1(old); } - Operator::I64AtomicRmw8UXchg { ref memarg } => { + Operator::I64AtomicRmw8XchgU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7834,7 +7834,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i64_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f64()); } - Operator::I64AtomicRmw16UXchg { ref memarg } => { + Operator::I64AtomicRmw16XchgU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7876,7 +7876,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i64_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f64()); } - Operator::I64AtomicRmw32UXchg { ref memarg } => { + Operator::I64AtomicRmw32XchgU { ref memarg } => { let value = state.pop1()?.into_int_value(); let effective_address = resolve_memory_ptr( builder, @@ -7957,7 +7957,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct ); state.push1(old); } - Operator::I32AtomicRmw8UCmpxchg { ref memarg } => { + Operator::I32AtomicRmw8CmpxchgU { ref memarg } => { let ((cmp, cmp_info), (new, new_info)) = state.pop2_extra()?; let cmp = apply_pending_canonicalization(builder, intrinsics, cmp, cmp_info); let new = apply_pending_canonicalization(builder, intrinsics, new, new_info); @@ -8009,7 +8009,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i32_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f32()); } - Operator::I32AtomicRmw16UCmpxchg { ref memarg } => { + Operator::I32AtomicRmw16CmpxchgU { ref memarg } => { let ((cmp, cmp_info), (new, new_info)) = state.pop2_extra()?; let cmp = apply_pending_canonicalization(builder, intrinsics, cmp, cmp_info); let new = apply_pending_canonicalization(builder, intrinsics, new, new_info); @@ -8105,7 +8105,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_extract_value(old, 0, "").unwrap(); state.push1(old); } - Operator::I64AtomicRmw8UCmpxchg { ref memarg } => { + Operator::I64AtomicRmw8CmpxchgU { ref memarg } => { let ((cmp, cmp_info), (new, new_info)) = state.pop2_extra()?; let cmp = apply_pending_canonicalization(builder, intrinsics, cmp, cmp_info); let new = apply_pending_canonicalization(builder, intrinsics, new, new_info); @@ -8157,7 +8157,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i64_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f64()); } - Operator::I64AtomicRmw16UCmpxchg { ref memarg } => { + Operator::I64AtomicRmw16CmpxchgU { ref memarg } => { let ((cmp, cmp_info), (new, new_info)) = state.pop2_extra()?; let cmp = apply_pending_canonicalization(builder, intrinsics, cmp, cmp_info); let new = apply_pending_canonicalization(builder, intrinsics, new, new_info); @@ -8209,7 +8209,7 @@ impl<'ctx> FunctionCodeGenerator for LLVMFunctionCodeGenerator<'ct let old = builder.build_int_z_extend(old, intrinsics.i64_ty, &state.var_name()); state.push1_extra(old, ExtraInfo::arithmetic_f64()); } - Operator::I64AtomicRmw32UCmpxchg { ref memarg } => { + Operator::I64AtomicRmw32CmpxchgU { ref memarg } => { let ((cmp, cmp_info), (new, new_info)) = state.pop2_extra()?; let cmp = apply_pending_canonicalization(builder, intrinsics, cmp, cmp_info); let new = apply_pending_canonicalization(builder, intrinsics, new, new_info); From 0b3f77b1f6705009fadad5b2203fa5272de4e8ff Mon Sep 17 00:00:00 2001 From: Mark McCaskey Date: Wed, 18 Dec 2019 12:58:07 -0500 Subject: [PATCH 3/3] Update to 0.45.0 wasmparser Operator names in singlepass-backend --- lib/singlepass-backend/src/codegen_x64.rs | 122 +++++++++++----------- 1 file changed, 61 insertions(+), 61 deletions(-) diff --git a/lib/singlepass-backend/src/codegen_x64.rs b/lib/singlepass-backend/src/codegen_x64.rs index 57cffc7851a..c8f53bdd46c 100644 --- a/lib/singlepass-backend/src/codegen_x64.rs +++ b/lib/singlepass-backend/src/codegen_x64.rs @@ -2021,7 +2021,7 @@ impl X64FunctionCode { Ok(()) } - // Checks for underflow/overflow/nan before IxxTrunc{U/S}F32. + // Checks for underflow/overflow/nan before IxxTruncF32{U/S}. fn emit_f32_int_conv_check( a: &mut Assembler, m: &mut Machine, @@ -2069,7 +2069,7 @@ impl X64FunctionCode { m.release_temp_gpr(tmp); } - // Checks for underflow/overflow/nan before IxxTrunc{U/S}F64. + // Checks for underflow/overflow/nan before IxxTruncF64{U/S}. fn emit_f64_int_conv_check( a: &mut Assembler, m: &mut Machine, @@ -2401,7 +2401,7 @@ impl FunctionCodeGenerator for X64FunctionCode { }; match *op { - Operator::GetGlobal { global_index } => { + Operator::GlobalGet { global_index } => { let global_index = global_index as usize; let tmp = self.machine.acquire_temp_gpr().unwrap(); @@ -2467,7 +2467,7 @@ impl FunctionCodeGenerator for X64FunctionCode { self.machine.release_temp_gpr(tmp); } - Operator::SetGlobal { global_index } => { + Operator::GlobalSet { global_index } => { let mut global_index = global_index as usize; let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); @@ -2515,7 +2515,7 @@ impl FunctionCodeGenerator for X64FunctionCode { self.machine.release_temp_gpr(tmp); } - Operator::GetLocal { local_index } => { + Operator::LocalGet { local_index } => { let local_index = local_index as usize; let ret = self.machine.acquire_locations( a, @@ -2532,7 +2532,7 @@ impl FunctionCodeGenerator for X64FunctionCode { ); self.value_stack.push(ret); } - Operator::SetLocal { local_index } => { + Operator::LocalSet { local_index } => { let local_index = local_index as usize; let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); @@ -2546,7 +2546,7 @@ impl FunctionCodeGenerator for X64FunctionCode { self.locals[local_index], ); } - Operator::TeeLocal { local_index } => { + Operator::LocalTee { local_index } => { let local_index = local_index as usize; let loc = *self.value_stack.last().unwrap(); @@ -3363,7 +3363,7 @@ impl FunctionCodeGenerator for X64FunctionCode { &mut self.value_stack, Condition::GreaterEqual, )?, - Operator::I64ExtendUI32 => { + Operator::I64ExtendI32U => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -3381,7 +3381,7 @@ impl FunctionCodeGenerator for X64FunctionCode { ret, ); } - Operator::I64ExtendSI32 => { + Operator::I64ExtendI32S => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -4514,7 +4514,7 @@ impl FunctionCodeGenerator for X64FunctionCode { } } - Operator::I32TruncUF32 => { + Operator::I32TruncF32U => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -4567,7 +4567,7 @@ impl FunctionCodeGenerator for X64FunctionCode { } } - Operator::I32TruncSF32 => { + Operator::I32TruncF32S => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -4627,7 +4627,7 @@ impl FunctionCodeGenerator for X64FunctionCode { } } - Operator::I64TruncSF32 => { + Operator::I64TruncF32S => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -4686,7 +4686,7 @@ impl FunctionCodeGenerator for X64FunctionCode { } } - Operator::I64TruncUF32 => { + Operator::I64TruncF32U => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -4770,7 +4770,7 @@ impl FunctionCodeGenerator for X64FunctionCode { } } - Operator::I32TruncUF64 => { + Operator::I32TruncF64U => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -4824,7 +4824,7 @@ impl FunctionCodeGenerator for X64FunctionCode { } } - Operator::I32TruncSF64 => { + Operator::I32TruncF64S => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -4889,7 +4889,7 @@ impl FunctionCodeGenerator for X64FunctionCode { } } - Operator::I64TruncSF64 => { + Operator::I64TruncF64S => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -4949,7 +4949,7 @@ impl FunctionCodeGenerator for X64FunctionCode { } } - Operator::I64TruncUF64 => { + Operator::I64TruncF64U => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -5033,7 +5033,7 @@ impl FunctionCodeGenerator for X64FunctionCode { } } - Operator::F32ConvertSI32 => { + Operator::F32ConvertI32S => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -5077,7 +5077,7 @@ impl FunctionCodeGenerator for X64FunctionCode { self.machine.release_temp_xmm(tmp_out); } } - Operator::F32ConvertUI32 => { + Operator::F32ConvertI32U => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -5120,7 +5120,7 @@ impl FunctionCodeGenerator for X64FunctionCode { self.machine.release_temp_xmm(tmp_out); } } - Operator::F32ConvertSI64 => { + Operator::F32ConvertI64S => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -5163,7 +5163,7 @@ impl FunctionCodeGenerator for X64FunctionCode { self.machine.release_temp_xmm(tmp_out); } } - Operator::F32ConvertUI64 => { + Operator::F32ConvertI64U => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -5223,7 +5223,7 @@ impl FunctionCodeGenerator for X64FunctionCode { } } - Operator::F64ConvertSI32 => { + Operator::F64ConvertI32S => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -5267,7 +5267,7 @@ impl FunctionCodeGenerator for X64FunctionCode { self.machine.release_temp_xmm(tmp_out); } } - Operator::F64ConvertUI32 => { + Operator::F64ConvertI32U => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -5311,7 +5311,7 @@ impl FunctionCodeGenerator for X64FunctionCode { self.machine.release_temp_xmm(tmp_out); } } - Operator::F64ConvertSI64 => { + Operator::F64ConvertI64S => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -5355,7 +5355,7 @@ impl FunctionCodeGenerator for X64FunctionCode { self.machine.release_temp_xmm(tmp_out); } } - Operator::F64ConvertUI64 => { + Operator::F64ConvertI64U => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let ret = self.machine.acquire_locations( @@ -6810,7 +6810,7 @@ impl FunctionCodeGenerator for X64FunctionCode { } } } - Operator::Fence { flags: _ } => { + Operator::AtomicFence { flags: _ } => { // Fence is a nop. // // Fence was added to preserve information about fences from @@ -7328,7 +7328,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_mov(Size::S64, Location::GPR(value), ret); self.machine.release_temp_gpr(value); } - Operator::I32AtomicRmw8UAdd { ref memarg } => { + Operator::I32AtomicRmw8AddU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -7359,7 +7359,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_mov(Size::S32, Location::GPR(value), ret); self.machine.release_temp_gpr(value); } - Operator::I32AtomicRmw16UAdd { ref memarg } => { + Operator::I32AtomicRmw16AddU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -7394,7 +7394,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_mov(Size::S32, Location::GPR(value), ret); self.machine.release_temp_gpr(value); } - Operator::I64AtomicRmw8UAdd { ref memarg } => { + Operator::I64AtomicRmw8AddU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -7425,7 +7425,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_mov(Size::S64, Location::GPR(value), ret); self.machine.release_temp_gpr(value); } - Operator::I64AtomicRmw16UAdd { ref memarg } => { + Operator::I64AtomicRmw16AddU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -7460,7 +7460,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_mov(Size::S64, Location::GPR(value), ret); self.machine.release_temp_gpr(value); } - Operator::I64AtomicRmw32UAdd { ref memarg } => { + Operator::I64AtomicRmw32AddU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -7567,7 +7567,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_mov(Size::S64, Location::GPR(value), ret); self.machine.release_temp_gpr(value); } - Operator::I32AtomicRmw8USub { ref memarg } => { + Operator::I32AtomicRmw8SubU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -7599,7 +7599,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_mov(Size::S32, Location::GPR(value), ret); self.machine.release_temp_gpr(value); } - Operator::I32AtomicRmw16USub { ref memarg } => { + Operator::I32AtomicRmw16SubU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -7635,7 +7635,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_mov(Size::S32, Location::GPR(value), ret); self.machine.release_temp_gpr(value); } - Operator::I64AtomicRmw8USub { ref memarg } => { + Operator::I64AtomicRmw8SubU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -7667,7 +7667,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_mov(Size::S64, Location::GPR(value), ret); self.machine.release_temp_gpr(value); } - Operator::I64AtomicRmw16USub { ref memarg } => { + Operator::I64AtomicRmw16SubU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -7703,7 +7703,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_mov(Size::S64, Location::GPR(value), ret); self.machine.release_temp_gpr(value); } - Operator::I64AtomicRmw32USub { ref memarg } => { + Operator::I64AtomicRmw32SubU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -7797,7 +7797,7 @@ impl FunctionCodeGenerator for X64FunctionCode { }, )?; } - Operator::I32AtomicRmw8UAnd { ref memarg } => { + Operator::I32AtomicRmw8AndU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -7826,7 +7826,7 @@ impl FunctionCodeGenerator for X64FunctionCode { }, )?; } - Operator::I32AtomicRmw16UAnd { ref memarg } => { + Operator::I32AtomicRmw16AndU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -7855,7 +7855,7 @@ impl FunctionCodeGenerator for X64FunctionCode { }, )?; } - Operator::I64AtomicRmw8UAnd { ref memarg } => { + Operator::I64AtomicRmw8AndU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -7884,7 +7884,7 @@ impl FunctionCodeGenerator for X64FunctionCode { }, )?; } - Operator::I64AtomicRmw16UAnd { ref memarg } => { + Operator::I64AtomicRmw16AndU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -7913,7 +7913,7 @@ impl FunctionCodeGenerator for X64FunctionCode { }, )?; } - Operator::I64AtomicRmw32UAnd { ref memarg } => { + Operator::I64AtomicRmw32AndU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -8000,7 +8000,7 @@ impl FunctionCodeGenerator for X64FunctionCode { }, )?; } - Operator::I32AtomicRmw8UOr { ref memarg } => { + Operator::I32AtomicRmw8OrU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -8029,7 +8029,7 @@ impl FunctionCodeGenerator for X64FunctionCode { }, )?; } - Operator::I32AtomicRmw16UOr { ref memarg } => { + Operator::I32AtomicRmw16OrU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -8058,7 +8058,7 @@ impl FunctionCodeGenerator for X64FunctionCode { }, )?; } - Operator::I64AtomicRmw8UOr { ref memarg } => { + Operator::I64AtomicRmw8OrU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -8087,7 +8087,7 @@ impl FunctionCodeGenerator for X64FunctionCode { }, )?; } - Operator::I64AtomicRmw16UOr { ref memarg } => { + Operator::I64AtomicRmw16OrU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -8116,7 +8116,7 @@ impl FunctionCodeGenerator for X64FunctionCode { }, )?; } - Operator::I64AtomicRmw32UOr { ref memarg } => { + Operator::I64AtomicRmw32OrU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -8203,7 +8203,7 @@ impl FunctionCodeGenerator for X64FunctionCode { }, )?; } - Operator::I32AtomicRmw8UXor { ref memarg } => { + Operator::I32AtomicRmw8XorU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -8232,7 +8232,7 @@ impl FunctionCodeGenerator for X64FunctionCode { }, )?; } - Operator::I32AtomicRmw16UXor { ref memarg } => { + Operator::I32AtomicRmw16XorU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -8261,7 +8261,7 @@ impl FunctionCodeGenerator for X64FunctionCode { }, )?; } - Operator::I64AtomicRmw8UXor { ref memarg } => { + Operator::I64AtomicRmw8XorU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -8290,7 +8290,7 @@ impl FunctionCodeGenerator for X64FunctionCode { }, )?; } - Operator::I64AtomicRmw16UXor { ref memarg } => { + Operator::I64AtomicRmw16XorU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -8319,7 +8319,7 @@ impl FunctionCodeGenerator for X64FunctionCode { }, )?; } - Operator::I64AtomicRmw32UXor { ref memarg } => { + Operator::I64AtomicRmw32XorU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -8410,7 +8410,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_mov(Size::S64, Location::GPR(value), ret); self.machine.release_temp_gpr(value); } - Operator::I32AtomicRmw8UXchg { ref memarg } => { + Operator::I32AtomicRmw8XchgU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -8441,7 +8441,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_mov(Size::S32, Location::GPR(value), ret); self.machine.release_temp_gpr(value); } - Operator::I32AtomicRmw16UXchg { ref memarg } => { + Operator::I32AtomicRmw16XchgU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -8472,7 +8472,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_mov(Size::S32, Location::GPR(value), ret); self.machine.release_temp_gpr(value); } - Operator::I64AtomicRmw8UXchg { ref memarg } => { + Operator::I64AtomicRmw8XchgU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -8503,7 +8503,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_mov(Size::S64, Location::GPR(value), ret); self.machine.release_temp_gpr(value); } - Operator::I64AtomicRmw16UXchg { ref memarg } => { + Operator::I64AtomicRmw16XchgU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -8534,7 +8534,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_mov(Size::S64, Location::GPR(value), ret); self.machine.release_temp_gpr(value); } - Operator::I64AtomicRmw32UXchg { ref memarg } => { + Operator::I64AtomicRmw32XchgU { ref memarg } => { let loc = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let target = @@ -8665,7 +8665,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_pop(Size::S64, Location::GPR(value)); self.machine.release_temp_gpr(compare); } - Operator::I32AtomicRmw8UCmpxchg { ref memarg } => { + Operator::I32AtomicRmw8CmpxchgU { ref memarg } => { let new = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let cmp = @@ -8715,7 +8715,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_pop(Size::S64, Location::GPR(value)); self.machine.release_temp_gpr(compare); } - Operator::I32AtomicRmw16UCmpxchg { ref memarg } => { + Operator::I32AtomicRmw16CmpxchgU { ref memarg } => { let new = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let cmp = @@ -8765,7 +8765,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_pop(Size::S64, Location::GPR(value)); self.machine.release_temp_gpr(compare); } - Operator::I64AtomicRmw8UCmpxchg { ref memarg } => { + Operator::I64AtomicRmw8CmpxchgU { ref memarg } => { let new = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let cmp = @@ -8815,7 +8815,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_pop(Size::S64, Location::GPR(value)); self.machine.release_temp_gpr(compare); } - Operator::I64AtomicRmw16UCmpxchg { ref memarg } => { + Operator::I64AtomicRmw16CmpxchgU { ref memarg } => { let new = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let cmp = @@ -8865,7 +8865,7 @@ impl FunctionCodeGenerator for X64FunctionCode { a.emit_pop(Size::S64, Location::GPR(value)); self.machine.release_temp_gpr(compare); } - Operator::I64AtomicRmw32UCmpxchg { ref memarg } => { + Operator::I64AtomicRmw32CmpxchgU { ref memarg } => { let new = get_location_released(a, &mut self.machine, self.value_stack.pop().unwrap()); let cmp =