[clang] [llvm] Remove Native Client support (PR #133661)

2025-03-31 Thread Derek Schuff via cfe-commits
dschuff wrote: Thanks for working on this! This will be the first time I'm not going to oppose an effort to remove Native Client support 🎉 Although I am going to ask you to wait a couple of months to land it, until we finally turn it off for good and start deleting the support code from Chromi

[clang] [WebAssembly] Rename functions in wasm-eh.cpp (PR #130220)

2025-03-06 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. https://github.com/llvm/llvm-project/pull/130220 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [WebAssembly] Generate __clang_call_terminate for Emscripten EH (PR #129020)

2025-02-27 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. https://github.com/llvm/llvm-project/pull/129020 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [WebAssembly] Generate __clang_call_terminate for Emscripten EH (PR #129020)

2025-02-27 Thread Derek Schuff via cfe-commits
@@ -5150,9 +5150,14 @@ WebAssemblyCXXABI::emitTerminateForUnexpectedException(CodeGenFunction &CGF, // Itanium ABI calls __clang_call_terminate(), which __cxa_begin_catch() on // the violating exception to mark it handled, but it is currently hard to do // with wasm EH i

[clang] [WebAssembly] Generate __clang_call_terminate for Emscripten EH (PR #129020)

2025-02-27 Thread Derek Schuff via cfe-commits
@@ -0,0 +1,13 @@ +// RUN: %clang_cc1 %s -triple wasm32-unknown-unknown -fexceptions -fcxx-exceptions -emit-llvm -o - -std=c++11 2>&1 | FileCheck %s dschuff wrote: should this triple be wasm32-unknown-emscripten? Or do we use em-exceptions by default on all wasm

[clang] [WebAssembly] Generate __clang_call_terminate for Emscripten EH (PR #129020)

2025-02-27 Thread Derek Schuff via cfe-commits
@@ -5150,9 +5150,14 @@ WebAssemblyCXXABI::emitTerminateForUnexpectedException(CodeGenFunction &CGF, // Itanium ABI calls __clang_call_terminate(), which __cxa_begin_catch() on // the violating exception to mark it handled, but it is currently hard to do // with wasm EH i

[clang] [WebAssembly] Generate invokes with llvm.wasm.(re)throw (PR #128105)

2025-02-25 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. https://github.com/llvm/llvm-project/pull/128105 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][WebAssembly] Always have `-pthread` imply `--shared-memory` linker flag (PR #127939)

2025-02-24 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. https://github.com/llvm/llvm-project/pull/127939 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [WebAssembly] Generate invokes with llvm.wasm.(re)throw (PR #128105)

2025-02-24 Thread Derek Schuff via cfe-commits
@@ -0,0 +1,20 @@ +// RUN: %clang_cc1 -triple wasm32-unknown-unknown -fexceptions -fcxx-exceptions -target-feature +reference-types -target-feature +exception-handling -target-feature +multivalue -exception-model=wasm -emit-llvm -o - %s | FileCheck %s + +// Check if __builtin_wa

[clang] [clang][docs] Fix typos concerning wasm __funcref (PR #124365)

2025-01-27 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. Do you need me to commit? https://github.com/llvm/llvm-project/pull/124365 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [clang][docs] Fix typos concerning wasm __funcref (PR #124365)

2025-01-27 Thread Derek Schuff via cfe-commits
@@ -1211,6 +1211,15 @@ WebAssemblyTargetLowering::LowerCall(CallLoweringInfo &CLI, } } } + +// If outgoing arguments are passed via the stack, we cannot tail call +for (const ISD::OutputArg &Out : CLI.Outs) { dschuff wrote: Aha, i ju

[clang] [llvm] [clang][docs] Fix typos concerning wasm __funcref (PR #124365)

2025-01-27 Thread Derek Schuff via cfe-commits
@@ -1211,6 +1211,15 @@ WebAssemblyTargetLowering::LowerCall(CallLoweringInfo &CLI, } } } + +// If outgoing arguments are passed via the stack, we cannot tail call +for (const ISD::OutputArg &Out : CLI.Outs) { dschuff wrote: This is a

[clang] [WebAssembly] Fix EH feature flags when compiling multiple files (PR #124374)

2025-01-24 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. https://github.com/llvm/llvm-project/pull/124374 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [WebAssembly] Enable Wasm EH features only once (PR #124042)

2025-01-23 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. https://github.com/llvm/llvm-project/pull/124042 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [WebAssembly] Add error checking for -wasm-use-legacy-ch (PR #122526)

2025-01-10 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. https://github.com/llvm/llvm-project/pull/122526 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [WebAssembly] Refactor Wasm EH/SjLj error checking (PR #122466)

2025-01-10 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. https://github.com/llvm/llvm-project/pull/122466 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [WebAssembly] Add `-i128:128` to the `datalayout` string. (PR #119204)

2024-12-09 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. LGTM for updating the LLVM datalayout string to match clang's, I don't think this should affect clang's ABI at all. https://github.com/llvm/llvm-project/pull/119204 ___ cfe-commits mailing list cf

[clang] [llvm] [WebAssembly] Add `-i128:128` to the `datalayout` string. (PR #119204)

2024-12-09 Thread Derek Schuff via cfe-commits
@@ -524,9 +524,7 @@ define i64 @utest_f64i64(double %x) { ; CHECK-NEXT:local.get 0 ; CHECK-NEXT:call __fixunsdfti ; CHECK-NEXT:local.get 1 -; CHECK-NEXT:i32.const 8 -; CHECK-NEXT:i32.add -; CHECK-NEXT:i64.load 0 +; CHECK-NEXT:i64.load 8 -

[clang] [llvm] [WebAssembly] Support the new "Lime1" CPU (PR #112035)

2024-12-02 Thread Derek Schuff via cfe-commits
dschuff wrote: LGTM too; I just noticed that nowhere does the tool-conventions document mention that "lime" is short for "linear memory" and that the intention is that this is the subset of features useful to toolchains or runtimes that focus on linear memory. Maybe we should add that. https

[clang] [lld] [llvm] [WebAssembly] Enable nontrapping-fptoint and bulk-memory by default. (PR #112049)

2024-10-25 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. I think Emscripten is ready for this now, thanks for working on this! https://github.com/llvm/llvm-project/pull/112049 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org

[clang] [lld] [llvm] [WebAssembly] Enable nontrapping-fptoint and bulk-memory by default. (PR #112049)

2024-10-16 Thread Derek Schuff via cfe-commits
@@ -1,4 +1,4 @@ -; RUN: llc -filetype=obj %s -o %t.o +; RUN: llc -filetype=obj -mattr=-bulk-memory %s -o %t.o dschuff wrote: Hm, interesting, so we are using passive segments anytime bulk memory is enabled. That makes sense since this was all meant for threads,

[clang] [compiler-rt] [lld] [llvm] [Coverage][WebAssembly] Add initial support for WebAssembly/WASI (PR #111332)

2024-10-07 Thread Derek Schuff via cfe-commits
@@ -177,8 +177,9 @@ class MergeInputChunk : public InputChunk { inputSectionOffset = seg.SectionOffset; } - MergeInputChunk(const WasmSection &s, ObjFile *f) dschuff wrote: the lld changes look reasonable but /cc @sbc100 just to make sure https://gith

[clang] [compiler-rt] [lld] [llvm] [Coverage][WebAssembly] Add initial support for WebAssembly/WASI (PR #111332)

2024-10-07 Thread Derek Schuff via cfe-commits
@@ -584,7 +584,7 @@ void llvm_reset_counters(void) { } } -#if !defined(_WIN32) +#if !defined(_WIN32) && !defined(__wasi__) dschuff wrote: This probably makes sense to make `__wasm__` instead of just `__wasi__` since Emscripten also lacks fork. https://git

[clang] [WebAssembly] Change F16x8 extract lane to require constant integer. (PR #108116)

2024-09-11 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. https://github.com/llvm/llvm-project/pull/108116 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [WebAssembly] Change F16x8 extract lane to require constant integer. (PR #108116)

2024-09-10 Thread Derek Schuff via cfe-commits
@@ -1888,18 +1888,15 @@ static __inline__ v128_t __FP16_FN_ATTRS wasm_f16x8_splat(float __a) { return (v128_t)__builtin_wasm_splat_f16x8(__a); } -static __inline__ float __FP16_FN_ATTRS wasm_f16x8_extract_lane(v128_t __a, -

[clang] [llvm] [WebAssembly] Change half-precision feature name to fp16. (PR #105434)

2024-08-22 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. https://github.com/llvm/llvm-project/pull/105434 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [WebAssembly] Change half-precision feature name to fp16. (PR #105434)

2024-08-20 Thread Derek Schuff via cfe-commits
dschuff wrote: I'm fine with calling this feature fp16 (I like it better than half-precision anyway) but I also wanted to point out that consistency with the spec is probably more important in the long term than consistency with V8, because the V8 flags eventually disappear (once V8 enabled su

[clang] [llvm] [WebAssembly] Implement f16x8.replace_lane instruction. (PR #99388)

2024-07-22 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. otherwise LGTM https://github.com/llvm/llvm-project/pull/99388 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [WebAssembly] Implement f16x8.replace_lane instruction. (PR #99388)

2024-07-22 Thread Derek Schuff via cfe-commits
@@ -702,6 +702,19 @@ defm "" : ReplaceLane; defm "" : ReplaceLane; defm "" : ReplaceLane; +// For now use an instrinsic for f16x8.replace_lane instead of ReplaceLane above +// since LL generated with half type arguments is not well supported and creates dsch

[clang] [llvm] Finish deleting the le32/le64 targets (PR #98497)

2024-07-11 Thread Derek Schuff via cfe-commits
@@ -842,8 +842,8 @@ class LLVM_LIBRARY_VISIBILITY NaClTargetInfo : public OSTargetInfo { } else if (Triple.getArch() == llvm::Triple::mipsel) { // Handled on mips' setDataLayout. } else { - assert(Triple.getArch() == llvm::Triple::le32); - this->resetDa

[clang] [llvm] [WebAssembly] Implement f16x8 madd and nmadd instructions. (PR #95151)

2024-06-11 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. https://github.com/llvm/llvm-project/pull/95151 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [WebAssembly] Implement prototype f16x8.extract_lane instruction. (PR #93272)

2024-05-24 Thread Derek Schuff via cfe-commits
https://github.com/dschuff closed https://github.com/llvm/llvm-project/pull/93272 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [WebAssembly] Implement prototype f16x8.extract_lane instruction. (PR #93272)

2024-05-24 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. https://github.com/llvm/llvm-project/pull/93272 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [WebAssembly] Re-enable reference types by default (PR #93261)

2024-05-24 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. https://github.com/llvm/llvm-project/pull/93261 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [WebAssembly] Implement prototype f16x8.splat instruction. (PR #93228)

2024-05-23 Thread Derek Schuff via cfe-commits
@@ -90,6 +90,7 @@ class LLVM_LIBRARY_VISIBILITY WebAssemblyTargetInfo : public TargetInfo { StringRef getABI() const override; bool setABI(const std::string &Name) override; + bool useFP16ConversionIntrinsics() const override { return false; } dschuff wr

[clang] [libunwind] [libunwind][WebAssembly] Make libunwind compilable (PR #92192)

2024-05-21 Thread Derek Schuff via cfe-commits
https://github.com/dschuff edited https://github.com/llvm/llvm-project/pull/92192 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [libunwind] [libunwind][WebAssembly] Make libunwind compilable (PR #92192)

2024-05-21 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. These changes make sense from the wasm point of view, and it looks like you've address the comment, so LGTM https://github.com/llvm/llvm-project/pull/92192 ___ cfe-commits mailing list cfe-commits

[clang] [WebAssembly] Define __WASM_EXCEPTIONS__ for -fwasm-exceptions (PR #92604)

2024-05-20 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. LGTM too, I don't see a huge risk of breaking external users using the old define at this point, and as noted we can fix the library usage without breaking anything either. https://github.com/llvm/llvm-project/pull/92604 __

[clang] [llvm] [WebAssembly] Implement prototype f32.store_f16 instruction. (PR #91545)

2024-05-09 Thread Derek Schuff via cfe-commits
@@ -192,6 +192,7 @@ TARGET_BUILTIN(__builtin_wasm_relaxed_dot_bf16x8_add_f32_f32x4, "V4fV8UsV8UsV4f" // Half-Precision (fp16) TARGET_BUILTIN(__builtin_wasm_loadf16_f32, "fh*", "nU", "half-precision") +TARGET_BUILTIN(__builtin_wasm_storef16_f32, "vfh*", "nU", "half-precision")

[clang] [WebAssembly] Make EH depend on multivalue and reference-types (PR #91299)

2024-05-07 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. LGTM. Are we currently running wasm-eh tests on the Chromium CI with node 16? If so, I guess this will have the same issue we had when we tried to turn it on by default. I don't think this needs to be a showstopper in the same way (since th

[clang] [llvm] [WebAssembly] Implement prototype f32.load_f16 instruction. (PR #90906)

2024-05-02 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. Overall this looks good, and I think it makes sense to model this as short* for now. I think it will be interesting to see if that ends up causing issues. Out of curiosity does this work if you try `_fp16`? https://github.com/llvm/llvm-pro

[clang] [WebAssembly] Add all remaining features to bleeding-edge (PR #90875)

2024-05-02 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. https://github.com/llvm/llvm-project/pull/90875 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [WebAssembly] Add all remaining features to bleeding-edge (PR #90875)

2024-05-02 Thread Derek Schuff via cfe-commits
dschuff wrote: This makes sense to me, I think it was the original intention (although I don't recall it being important to us or anyone else I'm aware of). https://github.com/llvm/llvm-project/pull/90875 ___ cfe-commits mailing list cfe-commits@lists

[clang] [WebAssembly] Disable reference types in generic CPU (PR #90792)

2024-05-01 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. https://github.com/llvm/llvm-project/pull/90792 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] [libcxx] [clang] Enable sized deallocation by default in C++14 onwards (PR #83774)

2024-04-26 Thread Derek Schuff via cfe-commits
dschuff wrote: We are also seeing the Windows failure. Given that there appear to be 2 separate problems, this patch should probably be reverted rather than trying to fix-forward. https://github.com/llvm/llvm-project/pull/83774 ___ cfe-commits mailin

[clang] [WebAssembly] Enable multivalue and reference-types in generic CPU config (PR #80923)

2024-04-23 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. (also LGTM FTR) https://github.com/llvm/llvm-project/pull/80923 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [WebAssembly] Enable multivalue and reference-types in generic CPU config (PR #80923)

2024-04-23 Thread Derek Schuff via cfe-commits
https://github.com/dschuff edited https://github.com/llvm/llvm-project/pull/80923 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [WebAssembly] Enable multivalue and reference-types in generic CPU config (PR #80923)

2024-04-23 Thread Derek Schuff via cfe-commits
@@ -147,19 +147,25 @@ void WebAssemblyTargetInfo::setFeatureEnabled(llvm::StringMap &Features, bool WebAssemblyTargetInfo::initFeatureMap( llvm::StringMap &Features, DiagnosticsEngine &Diags, StringRef CPU, const std::vector &FeaturesVec) const { - if (CPU == "bleedin

[clang] [WebAssembly] Enable multivalue and reference-types in generic CPU config (PR #80923)

2024-04-23 Thread Derek Schuff via cfe-commits
dschuff wrote: I think "generic" is the default CPU so object files will have it enabled by default. You can still specify "mvp" as the CPU as before to avoid it. https://github.com/llvm/llvm-project/pull/80923 ___ cfe-commits mailing list cfe-commits

[clang] [llvm] [clang-tools-extra] [CodeGen] Mark mem intrinsic loads and stores as dereferenceable (PR #80184)

2024-02-06 Thread Derek Schuff via cfe-commits
dschuff wrote: I am getting one local test failure here, in `/test/CodeGen/BPF/undef.ll`: The test has a bunch of [stores](https://github.com/llvm/llvm-project/blob/cdd9221489ec4ed6afc0e5146c2fae4daa8ab260/llvm/test/CodeGen/BPF/undef.ll#L44-L54) into an alloca, which i think are supposed to get

[clang-tools-extra] [clang] [llvm] [CodeGen] Mark mem intrinsic loads and stores as dereferenceable (PR #80184)

2024-02-06 Thread Derek Schuff via cfe-commits
https://github.com/dschuff updated https://github.com/llvm/llvm-project/pull/80184 >From 8fce40a38370f92926f1dabbc00c29e2d48b46e7 Mon Sep 17 00:00:00 2001 From: Derek Schuff Date: Tue, 30 Jan 2024 17:39:00 -0800 Subject: [PATCH 1/6] Use getObjectPtrOffset to generate constant offsets for memcp

[lld] [llvm] [clang] [clang-tools-extra] [Object][Wasm] Allow parsing of GC types in type and table sections (PR #79235)

2024-01-25 Thread Derek Schuff via cfe-commits
https://github.com/dschuff closed https://github.com/llvm/llvm-project/pull/79235 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[llvm] [lld] [clang] [clang-tools-extra] [Object][Wasm] Allow parsing of GC types in type and table sections (PR #79235)

2024-01-24 Thread Derek Schuff via cfe-commits
@@ -259,10 +259,13 @@ class InputFunction : public InputChunk { file->codeSection->Content.slice(inputSectionOffset, function->Size); debugName = function->DebugName; comdat = function->Comdat; +assert(s.Kind != WasmSignature::Placeholder);

[llvm] [lld] [clang] [clang-tools-extra] [Object][Wasm] Allow parsing of GC types in type and table sections (PR #79235)

2024-01-24 Thread Derek Schuff via cfe-commits
https://github.com/dschuff updated https://github.com/llvm/llvm-project/pull/79235 >From 976c98f631e5ed48bb18accbe59c9babd354a924 Mon Sep 17 00:00:00 2001 From: Derek Schuff Date: Wed, 3 Jan 2024 09:06:37 -0800 Subject: [PATCH 01/12] parse types --- llvm/include/llvm/BinaryFormat/Wasm.h | 8

[lld] [clang] [llvm] [clang-tools-extra] [Object][Wasm] Allow parsing of GC types in type and table sections (PR #79235)

2024-01-24 Thread Derek Schuff via cfe-commits
@@ -259,10 +259,13 @@ class InputFunction : public InputChunk { file->codeSection->Content.slice(inputSectionOffset, function->Size); debugName = function->DebugName; comdat = function->Comdat; +assert(s.Kind != WasmSignature::Placeholder);

[lld] [clang-tools-extra] [llvm] [clang] [Object][Wasm] Allow parsing of GC types in type and table sections (PR #79235)

2024-01-23 Thread Derek Schuff via cfe-commits
https://github.com/dschuff created https://github.com/llvm/llvm-project/pull/79235 This change allows a WasmObjectFile to be created from a wasm file even if it uses typed funcrefs and GC types. It does not significantly change how lib/Object models its various internal types (e.g. WasmSignatu

[lld] [compiler-rt] [openmp] [flang] [lldb] [libcxx] [libc] [mlir] [llvm] [clang] [polly] [WebAssembly] Correctly consider signext/zext arg flags at function declaration (PR #77281)

2024-01-09 Thread Derek Schuff via cfe-commits
dschuff wrote: Yeah, sorry I missed Alex's suggestion there. There's no hurry. https://github.com/llvm/llvm-project/pull/77281 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[lldb] [llvm] [clang] [lld] [libcxx] [libc] [mlir] [compiler-rt] [openmp] [polly] [flang] [WebAssembly] Correctly consider signext/zext arg flags at function declaration (PR #77281)

2024-01-09 Thread Derek Schuff via cfe-commits
@@ -839,9 +839,11 @@ bool WebAssemblyFastISel::selectCall(const Instruction *I) { unsigned Reg; -if (Attrs.hasParamAttr(I, Attribute::SExt)) +if (Attrs.hasParamAttr(I, Attribute::SExt) || +(IsDirect && Func->hasParamAttribute(I, Attribute::SExt))) ---

[polly] [flang] [mlir] [openmp] [libc] [compiler-rt] [lld] [llvm] [lldb] [clang] [libcxx] [WebAssembly] Correctly consider signext/zext arg flags at function declaration (PR #77281)

2024-01-09 Thread Derek Schuff via cfe-commits
https://github.com/dschuff approved this pull request. Thanks for the fix! https://github.com/llvm/llvm-project/pull/77281 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[llvm] [compiler-rt] [lldb] [mlir] [libc] [libcxx] [openmp] [clang] [flang] [lld] [polly] [WebAssembly] Correctly consider signext/zext arg flags at function declaration (PR #77281)

2024-01-08 Thread Derek Schuff via cfe-commits
@@ -0,0 +1,125 @@ +; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py +; RUN: llc < %s -O0 | FileCheck %s dschuff wrote: Is there a test that covers this behavior for DAG ISel? Maybe it would make sense to add test expectations for bot

[clang] c6a33ff - [clang][CodeGen] Emit annotations for function declarations.

2023-09-12 Thread Derek Schuff via cfe-commits
Author: Brendan Dahl Date: 2023-09-12T13:07:55-07:00 New Revision: c6a33ff49dfb3498dae15c718820ea3d9c19f3cb URL: https://github.com/llvm/llvm-project/commit/c6a33ff49dfb3498dae15c718820ea3d9c19f3cb DIFF: https://github.com/llvm/llvm-project/commit/c6a33ff49dfb3498dae15c718820ea3d9c19f3cb.diff

[clang] d0d8d2d - [clang][Driver] use DWARF4 for wasm

2022-01-24 Thread Derek Schuff via cfe-commits
Author: Derek Schuff Date: 2022-01-24T15:46:54-08:00 New Revision: d0d8d2d572cd1db54d0f6d90f8dd3825f9c7b36b URL: https://github.com/llvm/llvm-project/commit/d0d8d2d572cd1db54d0f6d90f8dd3825f9c7b36b DIFF: https://github.com/llvm/llvm-project/commit/d0d8d2d572cd1db54d0f6d90f8dd3825f9c7b36b.diff

[clang] ac02baa - WebAssembly: Update datalayout to match fp128 ABI change

2021-07-09 Thread Derek Schuff via cfe-commits
Author: Derek Schuff Date: 2021-07-09T16:51:36-07:00 New Revision: ac02baab48c2ff512e40140e2fe6845d2b6a636f URL: https://github.com/llvm/llvm-project/commit/ac02baab48c2ff512e40140e2fe6845d2b6a636f DIFF: https://github.com/llvm/llvm-project/commit/ac02baab48c2ff512e40140e2fe6845d2b6a636f.diff

[clang] 77973f8 - [WebAssembly] Add support for DWARF type units

2020-10-28 Thread Derek Schuff via cfe-commits
Author: Derek Schuff Date: 2020-10-28T17:41:22-07:00 New Revision: 77973f8dee6d4d6f1b7c2a026249c1f7068f267b URL: https://github.com/llvm/llvm-project/commit/77973f8dee6d4d6f1b7c2a026249c1f7068f267b DIFF: https://github.com/llvm/llvm-project/commit/77973f8dee6d4d6f1b7c2a026249c1f7068f267b.diff

[clang] 44eea0b - Revert "[WebAssembly] Add support for DWARF type units"

2020-10-27 Thread Derek Schuff via cfe-commits
Author: Derek Schuff Date: 2020-10-27T17:57:32-07:00 New Revision: 44eea0b1a7301de4c284afed1c023014c391372f URL: https://github.com/llvm/llvm-project/commit/44eea0b1a7301de4c284afed1c023014c391372f DIFF: https://github.com/llvm/llvm-project/commit/44eea0b1a7301de4c284afed1c023014c391372f.diff

[clang] bcb8a11 - [WebAssembly] Add support for DWARF type units

2020-10-27 Thread Derek Schuff via cfe-commits
Author: Derek Schuff Date: 2020-10-27T17:13:41-07:00 New Revision: bcb8a119df210753c5f1a3ac346d49597fef0f51 URL: https://github.com/llvm/llvm-project/commit/bcb8a119df210753c5f1a3ac346d49597fef0f51 DIFF: https://github.com/llvm/llvm-project/commit/bcb8a119df210753c5f1a3ac346d49597fef0f51.diff

[clang] 0ff28fa - Support dwarf fission for wasm object files

2020-09-17 Thread Derek Schuff via cfe-commits
Author: Derek Schuff Date: 2020-09-17T14:42:41-07:00 New Revision: 0ff28fa6a75617d61b1aeea77463d6a1684c3c89 URL: https://github.com/llvm/llvm-project/commit/0ff28fa6a75617d61b1aeea77463d6a1684c3c89 DIFF: https://github.com/llvm/llvm-project/commit/0ff28fa6a75617d61b1aeea77463d6a1684c3c89.diff

[clang] c5bd3d0 - Support Swift calling convention for WebAssembly targets

2020-01-24 Thread Derek Schuff via cfe-commits
Author: Yuta Saito Date: 2020-01-24T10:30:46-08:00 New Revision: c5bd3d07262ffda5b21576b9e1e2d2dd2e51fb4b URL: https://github.com/llvm/llvm-project/commit/c5bd3d07262ffda5b21576b9e1e2d2dd2e51fb4b DIFF: https://github.com/llvm/llvm-project/commit/c5bd3d07262ffda5b21576b9e1e2d2dd2e51fb4b.diff LO

r357127 - Revert "[WebAssembly] Don't use default GetLinkerPath"

2019-03-27 Thread Derek Schuff via cfe-commits
Author: dschuff Date: Wed Mar 27 15:22:18 2019 New Revision: 357127 URL: http://llvm.org/viewvc/llvm-project?rev=357127&view=rev Log: Revert "[WebAssembly] Don't use default GetLinkerPath" This reverts commit 4dcf3acce6d7455fd079d8e57441906ca2bad254. (reverts LLVM SVN r356953) Modified: cfe/

[PATCH] D26431: [WebAssembly] Define __unix__ as part of the wasm target

2016-11-08 Thread Derek Schuff via cfe-commits
dschuff added a comment. Yeah, I don't mean for this to be the final word; mostly this just matches asm.js. I do agree with you that the unixy stuff goes with the emscripten environment rather than wasm per se. I had thought we might define emscripten as an "OS" (i.e. the third or maybe even 4t

[PATCH] D26431: [WebAssembly] Define __unix__ as part of the wasm target

2016-11-08 Thread Derek Schuff via cfe-commits
dschuff accepted this revision. dschuff added a comment. This revision is now accepted and ready to land. Also it matches asm.js @sunfish is planning on unifying the triples, and this will be part of that (and there may be more defines that we want to add and/or subtract), but for now it makes m

Re: [PATCH] D24134: [WebAssembly] Change wasm SizeType to match asmjs

2016-09-01 Thread Derek Schuff via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL280420: [WebAssembly] Change wasm SizeType to match asmjs (authored by dschuff). Changed prior to commit: https://reviews.llvm.org/D24134?vs=70008&id=70082#toc Repository: rL LLVM https://reviews.ll

r280420 - [WebAssembly] Change wasm SizeType to match asmjs

2016-09-01 Thread Derek Schuff via cfe-commits
Author: dschuff Date: Thu Sep 1 17:38:37 2016 New Revision: 280420 URL: http://llvm.org/viewvc/llvm-project?rev=280420&view=rev Log: [WebAssembly] Change wasm SizeType to match asmjs Summary: We want wasm and asmjs to have matching ABIs, and right now asmjs uses unsigned int for its size_t. This

Re: [PATCH] D24134: [WebAssembly] Change wasm SizeType to match asmjs

2016-09-01 Thread Derek Schuff via cfe-commits
dschuff accepted this revision. dschuff added a comment. This revision is now accepted and ready to land. LGTM https://reviews.llvm.org/D24134 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe

Re: [PATCH] D24134: [WebAssembly] Change wasm SizeType to match asmjs

2016-09-01 Thread Derek Schuff via cfe-commits
dschuff added a comment. test comment https://reviews.llvm.org/D24134 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D23244: [Driver] Enable CFI for WebAssembly

2016-08-08 Thread Derek Schuff via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL278051: [Driver] Enable CFI for WebAssembly (authored by dschuff). Changed prior to commit: https://reviews.llvm.org/D23244?vs=67090&id=67226#toc Repository: rL LLVM https://reviews.llvm.org/D23244

r278051 - [Driver] Enable CFI for WebAssembly

2016-08-08 Thread Derek Schuff via cfe-commits
Author: dschuff Date: Mon Aug 8 16:14:15 2016 New Revision: 278051 URL: http://llvm.org/viewvc/llvm-project?rev=278051&view=rev Log: [Driver] Enable CFI for WebAssembly Since CFI support has landed in the WebAssembly backend, enable it in the frontend driver. Patch by Dominic Chen Differential

r269099 - [WebAssembly] Reduce strictness of static destructor test

2016-05-10 Thread Derek Schuff via cfe-commits
Author: dschuff Date: Tue May 10 13:35:31 2016 New Revision: 269099 URL: http://llvm.org/viewvc/llvm-project?rev=269099&view=rev Log: [WebAssembly] Reduce strictness of static destructor test It didn't work on non-asserts builds Modified: cfe/trunk/test/CodeGenCXX/static-destructor.cpp Modi

Re: [PATCH] D19275: Do not register incompatible C++ destructors with __cxa_atexit

2016-05-10 Thread Derek Schuff via cfe-commits
dschuff added a comment. Well, I forgot to squash my local commits before landing, so this is r269085 thru r269089 :( Repository: rL LLVM http://reviews.llvm.org/D19275 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.or

Re: [PATCH] D19275: Do not register incompatible C++ destructors with __cxa_atexit

2016-05-10 Thread Derek Schuff via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL269085: Do not register incompatible C++ destructors with __cxa_atexit (authored by dschuff). Changed prior to commit: http://reviews.llvm.org/D19275?vs=56218&id=56751#toc Repository: rL LLVM http:/

r269089 - Introduce CGCXXABI::canCallMismatchedFunctionType

2016-05-10 Thread Derek Schuff via cfe-commits
Author: dschuff Date: Tue May 10 12:44:55 2016 New Revision: 269089 URL: http://llvm.org/viewvc/llvm-project?rev=269089&view=rev Log: Introduce CGCXXABI::canCallMismatchedFunctionType Modified: cfe/trunk/lib/CodeGen/CGCXXABI.h cfe/trunk/lib/CodeGen/CGDeclCXX.cpp cfe/trunk/lib/CodeGen/

r269088 - more cleanup

2016-05-10 Thread Derek Schuff via cfe-commits
Author: dschuff Date: Tue May 10 12:44:52 2016 New Revision: 269088 URL: http://llvm.org/viewvc/llvm-project?rev=269088&view=rev Log: more cleanup Modified: cfe/trunk/lib/CodeGen/CGDeclCXX.cpp Modified: cfe/trunk/lib/CodeGen/CGDeclCXX.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/l

r269085 - Do not register incompatible C++ destructors with __cxa_atexit

2016-05-10 Thread Derek Schuff via cfe-commits
Author: dschuff Date: Tue May 10 12:44:46 2016 New Revision: 269085 URL: http://llvm.org/viewvc/llvm-project?rev=269085&view=rev Log: Do not register incompatible C++ destructors with __cxa_atexit Summary: For a static object with a nontrivial destructor, clang generates an initializer function (

r269086 - Clean up condition, add ARM to test

2016-05-10 Thread Derek Schuff via cfe-commits
Author: dschuff Date: Tue May 10 12:44:48 2016 New Revision: 269086 URL: http://llvm.org/viewvc/llvm-project?rev=269086&view=rev Log: Clean up condition, add ARM to test Modified: cfe/trunk/lib/CodeGen/CGDeclCXX.cpp cfe/trunk/test/CodeGenCXX/static-destructor.cpp Modified: cfe/trunk/lib/

r269087 - Clarify condition, remove redundant check

2016-05-10 Thread Derek Schuff via cfe-commits
Author: dschuff Date: Tue May 10 12:44:50 2016 New Revision: 269087 URL: http://llvm.org/viewvc/llvm-project?rev=269087&view=rev Log: Clarify condition, remove redundant check Modified: cfe/trunk/lib/CodeGen/CGDeclCXX.cpp Modified: cfe/trunk/lib/CodeGen/CGDeclCXX.cpp URL: http://llvm.org/vi

Re: [PATCH] D19275: Do not register incompatible C++ destructors with __cxa_atexit

2016-05-10 Thread Derek Schuff via cfe-commits
dschuff added a comment. Ping? http://reviews.llvm.org/D19275 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D19275: Do not register incompatible C++ destructors with __cxa_atexit

2016-05-04 Thread Derek Schuff via cfe-commits
dschuff updated this revision to Diff 56218. dschuff added a comment. - Introduce CGCXXABI::canCallMismatchedFunctionType http://reviews.llvm.org/D19275 Files: lib/CodeGen/CGCXXABI.h lib/CodeGen/CGDeclCXX.cpp lib/CodeGen/ItaniumCXXABI.cpp test/CodeGenCXX/static-destructor.cpp Index: te

Re: [PATCH] D19275: Do not register incompatible C++ destructors with __cxa_atexit

2016-05-04 Thread Derek Schuff via cfe-commits
dschuff added a comment. Thanks for the feedback, PTAL http://reviews.llvm.org/D19275 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

r268256 - [WebAssembly] Rename memory_size intrinsic to current_memory

2016-05-02 Thread Derek Schuff via cfe-commits
Author: dschuff Date: Mon May 2 12:26:19 2016 New Revision: 268256 URL: http://llvm.org/viewvc/llvm-project?rev=268256&view=rev Log: [WebAssembly] Rename memory_size intrinsic to current_memory This follows the recent change in the wasm spec. Modified: cfe/trunk/include/clang/Basic/Builtins

Re: [PATCH] D19275: Do not register incompatible C++ destructors with __cxa_atexit

2016-04-22 Thread Derek Schuff via cfe-commits
dschuff added a subscriber: rengolin. dschuff added a comment. any comments from @t.p.northover or perhaps @rengolin ? (This does have a potential new cost on ARM, as it requires one thunk (which is just a tail call) per static initializer on ARM and WebAssembly) http://reviews.llvm.org/D19275

Re: [PATCH] D19275: Do not register incompatible C++ destructors with __cxa_atexit

2016-04-19 Thread Derek Schuff via cfe-commits
dschuff updated this revision to Diff 54274. dschuff marked 2 inline comments as done. dschuff added a comment. - Clean up condition, add ARM to test - Clarify condition, remove redundant check - more cleanup http://reviews.llvm.org/D19275 Files: lib/CodeGen/CGDeclCXX.cpp test/CodeGenCXX/ru

Re: [PATCH] D19275: Do not register incompatible C++ destructors with __cxa_atexit

2016-04-19 Thread Derek Schuff via cfe-commits
dschuff added inline comments. Comment at: lib/CodeGen/CGDeclCXX.cpp:92 @@ +91,3 @@ + // disabled via a flag, a different helper function is generated anyway. + const CXXRecordDecl *Record = type->getAsCXXRecordDecl(); + bool CanRegisterDestructor = Record && j

Re: [PATCH] D19275: Do not register incompatible C++ destructors with __cxa_atexit

2016-04-19 Thread Derek Schuff via cfe-commits
dschuff updated this revision to Diff 54264. dschuff added a comment. - Clarify condition, remove redundant check http://reviews.llvm.org/D19275 Files: lib/CodeGen/CGDeclCXX.cpp test/CodeGenCXX/runtimecc.cpp test/CodeGenCXX/static-destructor.cpp Index: test/CodeGenCXX/static-destructor.c

Re: [PATCH] D19275: Do not register incompatible C++ destructors with __cxa_atexit

2016-04-19 Thread Derek Schuff via cfe-commits
dschuff updated this revision to Diff 54260. dschuff marked 3 inline comments as done. dschuff added a comment. - Clean up condition, add ARM to test http://reviews.llvm.org/D19275 Files: lib/CodeGen/CGDeclCXX.cpp test/CodeGenCXX/runtimecc.cpp test/CodeGenCXX/static-destructor.cpp Index:

Re: [PATCH] D19275: Do not register incompatible C++ destructors with __cxa_atexit

2016-04-19 Thread Derek Schuff via cfe-commits
dschuff added a reviewer: sunfish. dschuff added a comment. Will want a reviewer who's involved with ARM too, still looking. http://reviews.llvm.org/D19275 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman

[PATCH] D19275: Do not register incompatible C++ destructors with __cxa_atexit

2016-04-19 Thread Derek Schuff via cfe-commits
dschuff created this revision. dschuff added a subscriber: cfe-commits. Herald added subscribers: dschuff, jfb, aemerson. For a static object with a nontrivial destructor, clang generates an initializer function (__cxx_global_var_init) which registers that object's destructor using __cxa_atexit. H

Re: [PATCH] D16154: Default vaarg lowering should support indirect struct types.

2016-02-17 Thread Derek Schuff via cfe-commits
dschuff added a comment. This LGTM for PNaCl and WebAssembly. It's possible that for wasm we may still end up doing our own thing for varargs instead of using the default, but this still looks like strictly an improvement, (and it makes bootstrapping a backend simpler). http://reviews.llvm.or

r253259 - Derive nacltools::Linker from GnuTool to get response file support

2015-11-16 Thread Derek Schuff via cfe-commits
Author: dschuff Date: Mon Nov 16 16:21:25 2015 New Revision: 253259 URL: http://llvm.org/viewvc/llvm-project?rev=253259&view=rev Log: Derive nacltools::Linker from GnuTool to get response file support It could be derived from gnutools::Linker directly but this way makes it consistent with all the

Re: [PATCH] D11271: Change Native Client x86 usr include and link path to match SDK expectations

2015-08-26 Thread Derek Schuff via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL246040: Change Native Client x86 usr include and link path to match SDK expectations (authored by dschuff). Changed prior to commit: http://reviews.llvm.org/D11271?vs=29924&id=33216#toc Repository: r

r246040 - Change Native Client x86 usr include and link path to match SDK expectations

2015-08-26 Thread Derek Schuff via cfe-commits
Author: dschuff Date: Wed Aug 26 12:14:08 2015 New Revision: 246040 URL: http://llvm.org/viewvc/llvm-project?rev=246040&view=rev Log: Change Native Client x86 usr include and link path to match SDK expectations GNU multilib style uses x86_64-nacl/include and x86_64-nacl/usr/include but the SDK ex

  1   2   >