[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-10-05 Thread Heejin Ahn via cfe-commits
https://github.com/aheejin closed https://github.com/llvm/llvm-project/pull/65876 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-10-05 Thread Heejin Ahn via cfe-commits
https://github.com/aheejin approved this pull request. Thanks for your patience! Will merge this. https://github.com/llvm/llvm-project/pull/65876 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-10-05 Thread Heejin Ahn via cfe-commits
@@ -1,33 +1,95 @@ -; RUN: llc < %s -asm-verbose=false -verify-machineinstrs | FileCheck %s -; RUN: llc < %s -asm-verbose=false -fast-isel -fast-isel-abort=1 -verify-machineinstrs | FileCheck %s +; The assertions in this file were autogenerated by +;

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-10-05 Thread Heejin Ahn via cfe-commits
https://github.com/aheejin deleted https://github.com/llvm/llvm-project/pull/65876 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-10-05 Thread Heejin Ahn via cfe-commits
@@ -95,57 +92,4 @@ define i32 @missing_ret_noreturn_unreachable() { ; CHECK-NEXT:end_function call void @ext_never_return() unreachable -} - -; We could emit no instructions at all for the llvm unreachables in these next -; three tests, as the signatures match and

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-10-05 Thread Heejin Ahn via cfe-commits
@@ -85,7 +81,8 @@ define i32 @missing_ret_unreachable() { } ; This is similar to the above test, but ensures wasm unreachable is emitted -; even after a noreturn call. +; even after a noreturn call. Using --no-trap-after-noreturn was previously +; known to break this.

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-10-04 Thread Matt Harding via cfe-commits
https://github.com/majaha updated https://github.com/llvm/llvm-project/pull/65876 >From 7c43c803764bf9e0256d4e3e9f497d2622bb8f69 Mon Sep 17 00:00:00 2001 From: Matt Harding Date: Fri, 25 Aug 2023 06:19:14 +0100 Subject: [PATCH 01/13] Add no-trap-after-noreturn flag and wasm tests Add the

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-10-04 Thread Matt Harding via cfe-commits
https://github.com/majaha updated https://github.com/llvm/llvm-project/pull/65876 >From 7c43c803764bf9e0256d4e3e9f497d2622bb8f69 Mon Sep 17 00:00:00 2001 From: Matt Harding Date: Fri, 25 Aug 2023 06:19:14 +0100 Subject: [PATCH 01/12] Add no-trap-after-noreturn flag and wasm tests Add the

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-10-04 Thread Heejin Ahn via cfe-commits
https://github.com/aheejin edited https://github.com/llvm/llvm-project/pull/65876 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-10-04 Thread Heejin Ahn via cfe-commits
https://github.com/aheejin edited https://github.com/llvm/llvm-project/pull/65876 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-10-04 Thread Heejin Ahn via cfe-commits
@@ -1,33 +1,151 @@ -; RUN: llc < %s -asm-verbose=false -verify-machineinstrs | FileCheck %s -; RUN: llc < %s -asm-verbose=false -fast-isel -fast-isel-abort=1 -verify-machineinstrs | FileCheck %s +; The assertions in this file were autogenerated by +;

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-10-04 Thread Heejin Ahn via cfe-commits
@@ -1,33 +1,151 @@ -; RUN: llc < %s -asm-verbose=false -verify-machineinstrs | FileCheck %s -; RUN: llc < %s -asm-verbose=false -fast-isel -fast-isel-abort=1 -verify-machineinstrs | FileCheck %s +; The assertions in this file were autogenerated by +;

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-10-04 Thread Heejin Ahn via cfe-commits
@@ -1,33 +1,151 @@ -; RUN: llc < %s -asm-verbose=false -verify-machineinstrs | FileCheck %s -; RUN: llc < %s -asm-verbose=false -fast-isel -fast-isel-abort=1 -verify-machineinstrs | FileCheck %s +; The assertions in this file were autogenerated by +;

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-10-04 Thread Heejin Ahn via cfe-commits
@@ -1,33 +1,151 @@ -; RUN: llc < %s -asm-verbose=false -verify-machineinstrs | FileCheck %s -; RUN: llc < %s -asm-verbose=false -fast-isel -fast-isel-abort=1 -verify-machineinstrs | FileCheck %s +; The assertions in this file were autogenerated by +;

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-10-04 Thread Heejin Ahn via cfe-commits
@@ -1,33 +1,151 @@ -; RUN: llc < %s -asm-verbose=false -verify-machineinstrs | FileCheck %s -; RUN: llc < %s -asm-verbose=false -fast-isel -fast-isel-abort=1 -verify-machineinstrs | FileCheck %s +; The assertions in this file were autogenerated by +;

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-10-01 Thread Matt Harding via cfe-commits
https://github.com/majaha updated https://github.com/llvm/llvm-project/pull/65876 >From 7c43c803764bf9e0256d4e3e9f497d2622bb8f69 Mon Sep 17 00:00:00 2001 From: Matt Harding Date: Fri, 25 Aug 2023 06:19:14 +0100 Subject: [PATCH 01/10] Add no-trap-after-noreturn flag and wasm tests Add the

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-29 Thread Heejin Ahn via cfe-commits
@@ -1,33 +1,133 @@ -; RUN: llc < %s -asm-verbose=false -verify-machineinstrs | FileCheck %s -; RUN: llc < %s -asm-verbose=false -fast-isel -fast-isel-abort=1 -verify-machineinstrs | FileCheck %s - -; Test that LLVM unreachable instruction and trap intrinsic are lowered to -;

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-29 Thread Heejin Ahn via cfe-commits
aheejin wrote: > > Yeah I get that we haven't been warning about a similar case > > (--trap-unreachable) before. But I think they are more of what ended up > > happen, and not the firm intention not to warn for conflicted requests. > > For example, that --trap-unreachable command line option

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-27 Thread Heejin Ahn via cfe-commits
aheejin wrote: > Yeah you've got it, that's the main point. It can be set via the C++ API, and > when I tried doing so in the Rust compiler I found it broke the WebAssembly > backend. Sorry if I didn't make that clear enough earlier, I'm glad we're on > the same page now. The other points I

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-27 Thread Matt Harding via cfe-commits
@@ -1,33 +1,133 @@ -; RUN: llc < %s -asm-verbose=false -verify-machineinstrs | FileCheck %s -; RUN: llc < %s -asm-verbose=false -fast-isel -fast-isel-abort=1 -verify-machineinstrs | FileCheck %s - -; Test that LLVM unreachable instruction and trap intrinsic are lowered to -;

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-27 Thread Matt Harding via cfe-commits
majaha wrote: Yeah you've got it, that's the main point. It can be set via the C++ API, and when I tried doing so in the Rust compiler I found it broke the WebAssembly backend. Sorry if I didn't make that clear enough earlier, I'm glad we're on the same page now.

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-27 Thread Heejin Ahn via cfe-commits
aheejin wrote: > > But `--no-trap-after-noreturn` didn't exist before, so there was no way to > > specify that from the command line. You _created_ it, originally in this > > PR, and then the split-off PR in #67051. If this is a bugfix, it sounds > > like you are fixing a bug of your own

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-27 Thread Heejin Ahn via cfe-commits
https://github.com/aheejin edited https://github.com/llvm/llvm-project/pull/65876 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-27 Thread Heejin Ahn via cfe-commits
@@ -1,33 +1,133 @@ -; RUN: llc < %s -asm-verbose=false -verify-machineinstrs | FileCheck %s -; RUN: llc < %s -asm-verbose=false -fast-isel -fast-isel-abort=1 -verify-machineinstrs | FileCheck %s - -; Test that LLVM unreachable instruction and trap intrinsic are lowered to -;

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-27 Thread Heejin Ahn via cfe-commits
@@ -1,33 +1,133 @@ -; RUN: llc < %s -asm-verbose=false -verify-machineinstrs | FileCheck %s -; RUN: llc < %s -asm-verbose=false -fast-isel -fast-isel-abort=1 -verify-machineinstrs | FileCheck %s - -; Test that LLVM unreachable instruction and trap intrinsic are lowered to -;

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-27 Thread Heejin Ahn via cfe-commits
@@ -1,33 +1,133 @@ -; RUN: llc < %s -asm-verbose=false -verify-machineinstrs | FileCheck %s -; RUN: llc < %s -asm-verbose=false -fast-isel -fast-isel-abort=1 -verify-machineinstrs | FileCheck %s - -; Test that LLVM unreachable instruction and trap intrinsic are lowered to -;

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-27 Thread Heejin Ahn via cfe-commits
@@ -1,33 +1,133 @@ -; RUN: llc < %s -asm-verbose=false -verify-machineinstrs | FileCheck %s -; RUN: llc < %s -asm-verbose=false -fast-isel -fast-isel-abort=1 -verify-machineinstrs | FileCheck %s - -; Test that LLVM unreachable instruction and trap intrinsic are lowered to -;

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-27 Thread Heejin Ahn via cfe-commits
@@ -1,33 +1,133 @@ -; RUN: llc < %s -asm-verbose=false -verify-machineinstrs | FileCheck %s -; RUN: llc < %s -asm-verbose=false -fast-isel -fast-isel-abort=1 -verify-machineinstrs | FileCheck %s - -; Test that LLVM unreachable instruction and trap intrinsic are lowered to -;

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-27 Thread Sam Clegg via cfe-commits
sbc100 wrote: > But `--no-trap-after-noreturn` didn't exist before, so there was no way to > specify that from the command line. You _created_ it, originally in this PR, > and then the split-off PR in #67051. If this is a bugfix, it sounds like you > are fixing a bug of your own making. I

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-27 Thread Heejin Ahn via cfe-commits
aheejin wrote: > There's no difference between "doing nothing with respect to it" and > "silently rejecting", it's the same thing. The wasm backend understands > neither --xcoff-traceback-table, --trap-unreachable, _or_ > --no-trap-after-noreturn (the fact that --no-trap-after-noreturn

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-25 Thread Matt Harding via cfe-commits
majaha wrote: > These are just non-wasm options, so they mean nothing to wasm. Yes, and using them gives no warning. > Wasm simply doesn't do anything with respect to these options and wasm is not > overriding them. --trap-unreachable is absolutely overridden, in exactly the same place as

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-24 Thread Heejin Ahn via cfe-commits
aheejin wrote: > > Can you point out what are the unsupported options here? > > All of them, they are all options that translate to TargetOptions, and they > do nothing for a wasm target triple: ` --trap-unreachable=false > --xcoff-traceback-table=true --relax-elf-relocations=false

[clang] Ensure NoTrapAfterNoreturn is false for the wasm backend (PR #65876)

2023-09-24 Thread Matt Harding via cfe-commits
https://github.com/majaha updated https://github.com/llvm/llvm-project/pull/65876 >From 7c43c803764bf9e0256d4e3e9f497d2622bb8f69 Mon Sep 17 00:00:00 2001 From: Matt Harding Date: Fri, 25 Aug 2023 06:19:14 +0100 Subject: [PATCH 1/8] Add no-trap-after-noreturn flag and wasm tests Add the