From f0fe359bc330173e2656beb1f7425c5d3b6dacb7 Mon Sep 17 00:00:00 2001 From: Heejin Ahn Date: Mon, 20 Aug 2018 23:49:34 +0000 Subject: [PATCH] [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 --- clang/include/clang/Basic/BuiltinsWebAssembly.def | 2 +- clang/test/CodeGen/builtins-wasm.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/clang/include/clang/Basic/BuiltinsWebAssembly.def b/clang/include/clang/Basic/BuiltinsWebAssembly.def index 45ce072..d987af6 100644 --- a/clang/include/clang/Basic/BuiltinsWebAssembly.def +++ b/clang/include/clang/Basic/BuiltinsWebAssembly.def @@ -37,6 +37,6 @@ BUILTIN(__builtin_wasm_rethrow, "v", "r") // Atomic wait and notify. BUILTIN(__builtin_wasm_atomic_wait_i32, "ii*iLLi", "n") BUILTIN(__builtin_wasm_atomic_wait_i64, "iLLi*LLiLLi", "n") -BUILTIN(__builtin_wasm_atomic_notify, "ULLii*LLi", "n") +BUILTIN(__builtin_wasm_atomic_notify, "Uii*i", "n") #undef BUILTIN diff --git a/clang/test/CodeGen/builtins-wasm.c b/clang/test/CodeGen/builtins-wasm.c index d1c5c30..1eb5222 100644 --- a/clang/test/CodeGen/builtins-wasm.c +++ b/clang/test/CodeGen/builtins-wasm.c @@ -63,8 +63,8 @@ int f9(long long *addr, long long expected, long long timeout) { // WEBASSEMBLY64: call i32 @llvm.wasm.atomic.wait.i64(i64* %{{.*}}, i64 %{{.*}}, i64 %{{.*}}) } -unsigned long long f10(int *addr, long long count) { +unsigned int f10(int *addr, int count) { return __builtin_wasm_atomic_notify(addr, count); -// WEBASSEMBLY32: call i64 @llvm.wasm.atomic.notify(i32* %{{.*}}, i64 %{{.*}}) -// WEBASSEMBLY64: call i64 @llvm.wasm.atomic.notify(i32* %{{.*}}, i64 %{{.*}}) +// WEBASSEMBLY32: call i32 @llvm.wasm.atomic.notify(i32* %{{.*}}, i32 %{{.*}}) +// WEBASSEMBLY64: call i32 @llvm.wasm.atomic.notify(i32* %{{.*}}, i32 %{{.*}}) } -- 2.7.4