[clang] [llvm] [WebAssembly] Implement the wide-arithmetic proposal (PR #111598)

2024-10-23 Thread Alex Crichton via cfe-commits
alexcrichton wrote: @tlively or @sunfishcode would y'all be ok merging this for me? (I'm unable to do so myself) https://github.com/llvm/llvm-project/pull/111598 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/ma

[clang] [llvm] [WebAssembly] Implement the wide-arithmetic proposal (PR #111598)

2024-10-16 Thread Alex Crichton via cfe-commits
@@ -0,0 +1,51 @@ +; RUN: llc -mattr=+wide-arithmetic < %s | FileCheck %s alexcrichton wrote: Can do 👍 https://github.com/llvm/llvm-project/pull/111598 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://li

[clang] [llvm] [WebAssembly] Implement the wide-arithmetic proposal (PR #111598)

2024-10-16 Thread Alex Crichton via cfe-commits
https://github.com/alexcrichton updated https://github.com/llvm/llvm-project/pull/111598 >From ff058daf9e10347ab1b8d06a429d4997011ac74b Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Tue, 8 Oct 2024 15:22:59 -0700 Subject: [PATCH 1/4] [WebAssembly] Implement the wide-arithmetic proposal Th

[clang] [llvm] [WebAssembly] Implement the wide-arithmetic proposal (PR #111598)

2024-10-08 Thread Alex Crichton via cfe-commits
https://github.com/alexcrichton updated https://github.com/llvm/llvm-project/pull/111598 >From ff058daf9e10347ab1b8d06a429d4997011ac74b Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Tue, 8 Oct 2024 15:22:59 -0700 Subject: [PATCH 1/3] [WebAssembly] Implement the wide-arithmetic proposal Th

[clang] Add wasm-opt warning (PR #100321)

2024-08-29 Thread Alex Crichton via cfe-commits
alexcrichton wrote: I can see how the current state of the world is resulting in this PR, but at least personally I continue to feel that a warning should not be emitted if no flags are passed and `wasm-opt` is not found. Part of it I've [mentioned above](https://github.com/llvm/llvm-project/p

[clang] Add wasm-opt warning (PR #100321)

2024-07-24 Thread Alex Crichton via cfe-commits
alexcrichton wrote: Personally I don't find it to be a great user experience when a tool warns by default in default configration. This means that any user using wasi-sdk, for example, would by default with no other action taken receive warnings. That's annoying and misleading to end users bec

[clang] Add wasm-opt warning (PR #100321)

2024-07-24 Thread Alex Crichton via cfe-commits
alexcrichton wrote: If wasm-opt is explicitly enabled via a flag, then I think it would make sense for this to be an error rather than a warning. Otherwise though if no default behavior was indicated then I would personally fear the churn of this change as most developers I know of on `wasm32-

[clang] [WebAssembly] Disable running `wasm-opt` on components (PR #98373)

2024-07-19 Thread Alex Crichton via cfe-commits
alexcrichton wrote: ping @sbc100 would you be able to merge this for me? https://github.com/llvm/llvm-project/pull/98373 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [WebAssembly] Disable running `wasm-opt` on components (PR #98373)

2024-07-12 Thread Alex Crichton via cfe-commits
alexcrichton wrote: @sbc100 oh I can't merge things myself so if you'd be ok merging for me that'd be appreciated https://github.com/llvm/llvm-project/pull/98373 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/ma

[clang] [WebAssembly] Disable running `wasm-opt` on components (PR #98373)

2024-07-11 Thread Alex Crichton via cfe-commits
alexcrichton wrote: > would it be relevant to open an issue in the binaryen repo for the support of > Wasm components? Oh sorry forgot to respond to this as well. I'm not personally part of the binaryen repo but I suspect they would not object to having an issue to track this. https://github

[clang] [WebAssembly] Disable running `wasm-opt` on components (PR #98373)

2024-07-11 Thread Alex Crichton via cfe-commits
alexcrichton wrote: Ah yeah unfortunately I think it still comes back to how to do all this in the test harness. If there are examples of this elsewhere I'd be happy to investigate and copy. I'm also not sure if shell scripts would work for Windows... @sbc100 if you're ok with this without a

[clang] [WebAssembly] Disable running `wasm-opt` on components (PR #98373)

2024-07-10 Thread Alex Crichton via cfe-commits
alexcrichton wrote: Is there a way to "fake" a `wasm-opt` executable? I didn't find any existing tests for the `wasm-opt` integration and it's auto-disabled if `wasm-opt` isn't found on `$PATH`, which doesn't happen by default in the test suite, so unless I can set up `wasm-opt` to show up in

[clang] [WebAssembly] Disable running `wasm-opt` on components (PR #98373)

2024-07-10 Thread Alex Crichton via cfe-commits
https://github.com/alexcrichton updated https://github.com/llvm/llvm-project/pull/98373 >From 177fe1d4df4e9f02382c2f8f5dce9de4d935d763 Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Wed, 10 Jul 2024 12:18:06 -0700 Subject: [PATCH 1/4] [WebAssembly] Disable running `wasm-opt` on components

[clang] [WebAssembly] Disable running `wasm-opt` on components (PR #98373)

2024-07-10 Thread Alex Crichton via cfe-commits
@@ -61,6 +61,10 @@ std::string wasm::Linker::getLinkerPath(const ArgList &Args) const { return ToolChain.GetProgramPath(ToolChain.getDefaultLinker()); } +static bool IsWasip2(const llvm::Triple &TargetTriple) { + return TargetTriple.getOSName() == "wasip2"; ---

[clang] [WebAssembly] Disable running `wasm-opt` on components (PR #98373)

2024-07-10 Thread Alex Crichton via cfe-commits
https://github.com/alexcrichton updated https://github.com/llvm/llvm-project/pull/98373 >From 177fe1d4df4e9f02382c2f8f5dce9de4d935d763 Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Wed, 10 Jul 2024 12:18:06 -0700 Subject: [PATCH 1/3] [WebAssembly] Disable running `wasm-opt` on components

[clang] Add flag to opt out of wasm-opt (PR #95208)

2024-07-10 Thread Alex Crichton via cfe-commits
alexcrichton wrote: I've opened https://github.com/llvm/llvm-project/pull/98373 to avoid running `wasm-opt` for the `wasm32-wasip2` target by default. It also fixes a minor issue with this PR where if `wasm-opt` were disabled it would skip running the linker entirely. https://github.com/llvm/

[clang] [WebAssembly] Disable running `wasm-opt` on components (PR #98373)

2024-07-10 Thread Alex Crichton via cfe-commits
https://github.com/alexcrichton created https://github.com/llvm/llvm-project/pull/98373 This commit adds a check that disables `wasm-opt` for the `wasm32-wasip2` target because `wasm-opt` doesn't support components at this time. This also fixes a minor issue from #95208 where if `wasm-opt` was

[clang] [WebAssembly] Change the default linker for `wasm32-wasip2` (PR #84569)

2024-03-29 Thread Alex Crichton via cfe-commits
alexcrichton wrote: Oop no I did not, thank you for the heads up! I'll work on updating wasi-sdk now. https://github.com/llvm/llvm-project/pull/84569 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listin

[clang] [WebAssembly] Change the default linker for `wasm32-wasip2` (PR #84569)

2024-03-22 Thread Alex Crichton via cfe-commits
alexcrichton wrote: Yes it's expected that wasi-sdk will need changes to incorporate this PR. I'm waiting for this to be in an LLVM release before updating wasi-sdk. https://github.com/llvm/llvm-project/pull/84569 ___ cfe-commits mailing list cfe-comm

[clang] [WebAssembly] Change the default linker for `wasm32-wasip2` (PR #84569)

2024-03-18 Thread Alex Crichton via cfe-commits
https://github.com/alexcrichton updated https://github.com/llvm/llvm-project/pull/84569 >From 99ca952b60344d2ff683d05d8baa423aa11da83a Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Fri, 8 Mar 2024 13:36:18 -0800 Subject: [PATCH 1/2] [WebAssembly] Change the default linker for `wasm32-wasi

[clang] [WebAssembly] Change the default linker for `wasm32-wasip2` (PR #84569)

2024-03-18 Thread Alex Crichton via cfe-commits
alexcrichton wrote: At @sunfishcode's request I've pushed up a second commit which pass the path to `wasm-ld` to `wasm-component-ld`, and in testing it I also added the ability for `-fuse-ld=lld` to explicitly request that `wasm-ld` is used, regardless of target. https://github.com/llvm/llvm-

[clang] [WebAssembly] Change the default linker for `wasm32-wasip2` (PR #84569)

2024-03-18 Thread Alex Crichton via cfe-commits
https://github.com/alexcrichton updated https://github.com/llvm/llvm-project/pull/84569 >From 99ca952b60344d2ff683d05d8baa423aa11da83a Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Fri, 8 Mar 2024 13:36:18 -0800 Subject: [PATCH 1/2] [WebAssembly] Change the default linker for `wasm32-wasi

[clang] [WebAssembly] Change the default linker for `wasm32-wasip2` (PR #84569)

2024-03-18 Thread Alex Crichton via cfe-commits
alexcrichton wrote: ping @sbc100, happy to answer any more questions if you have them! I was tentatively hoping this could get backported to an 18.1.x release so we could get a wasi-sdk release with p1/p2/etc https://github.com/llvm/llvm-project/pull/84569

[clang] [WebAssembly] Change the default linker for `wasm32-wasip2` (PR #84569)

2024-03-08 Thread Alex Crichton via cfe-commits
alexcrichton wrote: > So the core module + metadata is kind of isomorphic with that > single-core-module-component? Sort of and sort of not. At a high level you're correct, but at a technical level this isn't correct. The subtle differences are: * Most wasm binaries today using WASI probably

[clang] [WebAssembly] Change the default linker for `wasm32-wasip2` (PR #84569)

2024-03-08 Thread Alex Crichton via cfe-commits
alexcrichton wrote: Currently it accepts no extra inputs, but in the future I'd expect that it'll grow an option or two of its own. Currently it [hand-codes the list of options to forward to `wasm-ld`](https://github.com/alexcrichton/wasm-component-ld/blob/2f6106e395e2db99a8bb0524088d08bb69649

[clang] [WebAssembly] Change the default linker for `wasm32-wasip2` (PR #84569)

2024-03-08 Thread Alex Crichton via cfe-commits
alexcrichton wrote: cc @sunfishcode and @sbc100 https://github.com/llvm/llvm-project/pull/84569 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [WebAssembly] Change the default linker for `wasm32-wasip2` (PR #84569)

2024-03-08 Thread Alex Crichton via cfe-commits
https://github.com/alexcrichton created https://github.com/llvm/llvm-project/pull/84569 This commit changes the default linker in the WebAssembly toolchain for the `wasm32-wasip2` target. This target is being added to the WebAssembly/wasi-sdk and WebAssembly/wasi-libc projects to target the Co