[PATCH] D91428: Add support for multiple program address spaces

2020-11-13 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. I think this is a good direction overall, and I'm glad the code doesn't become any messier with this change. I do think it would be good to also email llvm-dev about this change to get general feedback and make sure it doesn't require a full RFC. Com

[PATCH] D91428: Add support for multiple program address spaces

2020-11-17 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. @arsenm, Are you suggesting that we just relax the verification rules to allow calling function pointers to arbitrary address spaces without needing any changes to the data layout string? That seems fine to me, but the data layout string solution does allow targets to o

[PATCH] D88968: [WebAssembly] Prototype i16x8.q15mulr_sat_s

2020-10-07 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added a reviewer: aheejin. Herald added subscribers: llvm-commits, cfe-commits, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100, dschuff. Herald added projects: clang, LLVM. tlively requested review of this revision. This saturating, rounding, Q-form

[PATCH] D88968: [WebAssembly] Prototype i16x8.q15mulr_sat_s

2020-10-09 Thread Thomas Lively via Phabricator via cfe-commits
tlively added inline comments. Comment at: clang/include/clang/Basic/BuiltinsWebAssembly.def:117 +TARGET_BUILTIN(__builtin_wasm_q15mulr_saturate_s_i8x16, "V8UsV8UsV8Us", "nc", "simd128") + aheejin wrote: > - Is it implemented in the VM? If not shouldn't we use

[PATCH] D88968: [WebAssembly] Prototype i16x8.q15mulr_sat_s

2020-10-09 Thread Thomas Lively via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGd8f58bf53a98: [WebAssembly] Prototype i16x8.q15mulr_sat_s (authored by tlively). Changed prior to commit: https://reviews.llvm.org/D88968?vs=29667

[PATCH] D89366: [WebAssembly] v128.load{8, 16, 32, 64}_lane instructions

2020-10-13 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added reviewers: aheejin, dschuff. Herald added subscribers: llvm-commits, cfe-commits, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100. Herald added projects: clang, LLVM. tlively requested review of this revision. Prototype the newly proposed load_

[PATCH] D89366: [WebAssembly] v128.load{8, 16, 32, 64}_lane instructions

2020-10-14 Thread Thomas Lively via Phabricator via cfe-commits
tlively added inline comments. Comment at: clang/include/clang/Basic/BuiltinsWebAssembly.def:180 +TARGET_BUILTIN(__builtin_wasm_load32_lane, "V4iIii*", "nU", "simd128") +TARGET_BUILTIN(__builtin_wasm_load64_lane, "V2LLiIiLLi*", "nU", "simd128") +TARGET_BUILTIN(__builtin_wasm_stor

[PATCH] D89366: [WebAssembly] v128.load{8, 16, 32, 64}_lane instructions

2020-10-14 Thread Thomas Lively via Phabricator via cfe-commits
tlively planned changes to this revision. tlively added inline comments. Comment at: llvm/test/CodeGen/WebAssembly/simd-load-lane-offset.ll:4 + +; Test SIMD v128.load{8,16,32,64}_lane instructions. TODO: Use the offset field. + aheejin wrote: > Maybe add a comme

[PATCH] D89366: [WebAssembly] v128.load{8, 16, 32, 64}_lane instructions

2020-10-14 Thread Thomas Lively via Phabricator via cfe-commits
tlively updated this revision to Diff 298209. tlively marked 2 inline comments as done. tlively added a comment. This revision is now accepted and ready to land. - Add missing vec argument to loads and fix argument order - Add comments and fix formatting Repository: rG LLVM Github Monorepo CH

[PATCH] D89366: [WebAssembly] v128.load{8, 16, 32, 64}_lane instructions

2020-10-14 Thread Thomas Lively via Phabricator via cfe-commits
tlively requested review of this revision. tlively added a comment. The structure is the same, but I would appreciate a review of the diff since a lot of things had to change. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D89366/new/ https://review

[PATCH] D89366: [WebAssembly] v128.load{8, 16, 32, 64}_lane instructions

2020-10-14 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. In D89366#2331154 , @aheejin wrote: > Do loads need the vector argument? The proposal has that but I'm wondering > why... Can that possibly be an error from the author's side? Oops, I meant to answer that before but I did not. Th

[PATCH] D89366: [WebAssembly] v128.load{8, 16, 32, 64}_lane instructions

2020-10-14 Thread Thomas Lively via Phabricator via cfe-commits
tlively added inline comments. Comment at: clang/include/clang/Basic/BuiltinsWebAssembly.def:180 +TARGET_BUILTIN(__builtin_wasm_load32_lane, "V4iIii*", "nU", "simd128") +TARGET_BUILTIN(__builtin_wasm_load64_lane, "V2LLiIiLLi*", "nU", "simd128") +TARGET_BUILTIN(__builtin_wasm_stor

[PATCH] D89366: [WebAssembly] v128.load{8, 16, 32, 64}_lane instructions

2020-10-14 Thread Thomas Lively via Phabricator via cfe-commits
tlively updated this revision to Diff 298291. tlively added a comment. - Remove "Pure" from load builtins Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D89366/new/ https://reviews.llvm.org/D89366 Files: clang/include/clang/Basic/BuiltinsWebAssemb

[PATCH] D89446: [WebAssembly] Prototype i8x16.popcnt

2020-10-14 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added a reviewer: aheejin. Herald added subscribers: llvm-commits, cfe-commits, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100, dschuff. Herald added projects: clang, LLVM. tlively requested review of this revision. As proposed at https://github.com

[PATCH] D89366: [WebAssembly] v128.load{8, 16, 32, 64}_lane instructions

2020-10-15 Thread Thomas Lively via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG7c6bfd90ab2d: [WebAssembly] v128.load{8,16,32,64}_lane instructions (authored by tlively). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST

[PATCH] D89446: [WebAssembly] Prototype i8x16.popcnt

2020-10-15 Thread Thomas Lively via Phabricator via cfe-commits
tlively updated this revision to Diff 298457. tlively added a comment. - Update builtin function name Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D89446/new/ https://reviews.llvm.org/D89446 Files: clang/include/clang/Basic/BuiltinsWebAssembly.d

[PATCH] D89446: [WebAssembly] Prototype i8x16.popcnt

2020-10-15 Thread Thomas Lively via Phabricator via cfe-commits
tlively marked an inline comment as done. tlively added inline comments. Comment at: clang/include/clang/Basic/BuiltinsWebAssembly.def:117 +TARGET_BUILTIN(__builtin_wasm_popcnt, "V16ScV16Sc", "nc", "simd128") + aheejin wrote: > - Even if there's only one vector

[PATCH] D89446: [WebAssembly] Prototype i8x16.popcnt

2020-10-15 Thread Thomas Lively via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. tlively marked an inline comment as done. Closed by commit rG1992e30c2d75: [WebAssembly] Prototype i8x16.popcnt (authored by tlively). Repository: rG LLVM Github Mon

[PATCH] D90253: [WebAssembly] Prototype extending multiplication SIMD instructions

2020-10-27 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added a reviewer: aheejin. Herald added subscribers: llvm-commits, cfe-commits, dexonsmith, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100, dschuff. Herald added projects: clang, LLVM. tlively requested review of this revision. As proposed in https:

[PATCH] D90253: [WebAssembly] Prototype extending multiplication SIMD instructions

2020-10-27 Thread Thomas Lively via Phabricator via cfe-commits
tlively updated this revision to Diff 301147. tlively added a comment. - Use V8 encodings: https://chromium-review.googlesource.com/c/v8/v8/+/2469156/4/src/wasm/wasm-opcodes.h Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90253/new/ https://review

[PATCH] D90253: [WebAssembly] Prototype extending multiplication SIMD instructions

2020-10-28 Thread Thomas Lively via Phabricator via cfe-commits
tlively added inline comments. Comment at: llvm/include/llvm/IR/IntrinsicsWebAssembly.td:263 +// TODO: Add a new LLVMMatchType that can describe the relationship between the +// result and parameter types here. +def int_wasm_extmul_low_signed : aheejin wrote: > I

[PATCH] D90253: [WebAssembly] Prototype extending multiplication SIMD instructions

2020-10-28 Thread Thomas Lively via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG31e944556f54: [WebAssembly] Prototype extending multiplication SIMD instructions (authored by tlively). Changed prior to commit: https://reviews.l

[PATCH] D90294: [WebAssembly] Clang-format builtins generation (NFC)

2020-10-28 Thread Thomas Lively via Phabricator via cfe-commits
tlively accepted this revision. tlively added a comment. This revision is now accepted and ready to land. Thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90294/new/ https://reviews.llvm.org/D90294

[PATCH] D90357: [WebAssembly] Implement SIMD signselect instructions

2020-10-28 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added a reviewer: aheejin. Herald added subscribers: llvm-commits, cfe-commits, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100, dschuff. Herald added projects: clang, LLVM. tlively requested review of this revision. As proposed in https://github.com

[PATCH] D90357: [WebAssembly] Implement SIMD signselect instructions

2020-10-29 Thread Thomas Lively via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGbe6f50798e79: [WebAssembly] Implement SIMD signselect instructions (authored by tlively). Herald added a subscriber: wingo. Repository: rG LLVM Gi

[PATCH] D90504: [WebAssembly] Prototype i64x2.widen_{low,high}_i32x4_{s,u}

2020-10-30 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added a reviewer: aheejin. Herald added subscribers: llvm-commits, cfe-commits, wingo, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100, dschuff. Herald added projects: clang, LLVM. tlively requested review of this revision. As proposed in https://git

[PATCH] D90508: [WebAssembly] Prototype i64x2.eq

2020-10-30 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added a reviewer: aheejin. Herald added subscribers: llvm-commits, cfe-commits, wingo, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100, dschuff. Herald added projects: clang, LLVM. tlively requested review of this revision. As proposed in https://git

[PATCH] D90504: [WebAssembly] Prototype i64x2.widen_{low,high}_i32x4_{s,u}

2020-10-30 Thread Thomas Lively via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG1cb0b5660777: [WebAssembly] Prototype i64x2.widen_{low,high}_i32x4_{s,u} (authored by tlively). Repository: rG LLVM Github Monorepo CHANGES SINCE

[PATCH] D90508: [WebAssembly] Prototype i64x2.eq

2020-10-30 Thread Thomas Lively via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG0a512a555a8d: [WebAssembly] Prototype i64x2.eq (authored by tlively). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://rev

[PATCH] D90514: [WebAssembly] Prototype i64x2.bitmask

2020-10-30 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added a reviewer: aheejin. Herald added subscribers: llvm-commits, cfe-commits, wingo, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100, dschuff. Herald added projects: clang, LLVM. tlively requested review of this revision. As proposed in https://git

[PATCH] D90514: [WebAssembly] Prototype i64x2.bitmask

2020-10-30 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. Thanks for all the reviews! That's the last of them for now :) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90514/new/ https://reviews.llvm.org/D90514 ___ cfe-commits mailing li

[PATCH] D90514: [WebAssembly] Prototype i64x2.bitmask

2020-10-30 Thread Thomas Lively via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGa787e0977912: [WebAssembly] Prototype i64x2.bitmask (authored by tlively). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https:

[PATCH] D95425: Implementation of global.get/set for reftypes in LLVM IR

2021-05-24 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. It would be good to add dedicated tests for table.get and table.set as well. Comment at: llvm/lib/CodeGen/MachineOperand.cpp:1174 + } else +OS << ", opaque "; if (getAlign() != getBaseAlign()) pmatos wrote: > tlively wrote: > >

[PATCH] D101140: [WebAssembly][CodeGen] IR support for WebAssembly local variables

2021-05-27 Thread Thomas Lively via Phabricator via cfe-commits
tlively accepted this revision. tlively added a comment. This revision is now accepted and ready to land. LGTM with that one last comment on the test. Comment at: llvm/test/CodeGen/WebAssembly/ir-locals.ll:17-20 + ; The DAG combiner infers that %reloaded is the same as %arg and

[PATCH] D101140: [WebAssembly][CodeGen] IR support for WebAssembly local variables

2021-05-31 Thread Thomas Lively via Phabricator via cfe-commits
tlively accepted this revision. tlively added a comment. In D101140#2789199 , @wingo wrote: > Quick r? to @tlively -- OK with having the new util function in > WebAssemblyFrameLowering? It didn't work to have it in the utils library > because the funct

[PATCH] D95557: [WebAssembly] Prototype i8x16 to i32x4 widening instructions

2021-01-27 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added a reviewer: aheejin. Herald added subscribers: wingo, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100, dschuff. tlively requested review of this revision. Herald added projects: clang, LLVM. Herald added subscribers: llvm-commits, cfe-commits.

[PATCH] D95557: [WebAssembly] Prototype i8x16 to i32x4 widening instructions

2021-01-28 Thread Thomas Lively via Phabricator via cfe-commits
tlively added inline comments. Comment at: llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td:1279 +(I32x4.vt (int_wasm_widen_signed + (I8x16.vt V128:$vec), (i32 timm:$idx], + "i32x4.widen_i8x16_s\t$dst, $vec, $idx", aheejin

[PATCH] D95557: [WebAssembly] Prototype i8x16 to i32x4 widening instructions

2021-01-28 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. In D95557#2527731 , @aheejin wrote: > This does not yet have i64x2 version of the instructions in > https://github.com/WebAssembly/simd/pull/395 yet, right? Yes, that's intentional. These are the only versions implemented in V8 a

[PATCH] D95557: [WebAssembly] Prototype i8x16 to i32x4 widening instructions

2021-01-28 Thread Thomas Lively via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG4b68b64dcc5b: [WebAssembly] Prototype i8x16 to i32x4 widening instructions (authored by tlively). Repository: rG LLVM Github Monorepo CHANGES SIN

[PATCH] D96091: [WebAssembly] Use single-threaded mode when -matomics isn't enabled.

2021-02-04 Thread Thomas Lively via Phabricator via cfe-commits
tlively accepted this revision. tlively added a comment. This revision is now accepted and ready to land. LGTM, thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D96091/new/ https://reviews.llvm.org/D96091 __

[PATCH] D110111: [WebAssembly] Add relaxed-simd feature

2021-09-21 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. Nice! Thanks for writing this :D Do you know what happens when you actually try to compile some code with `-mrelaxed-simd`? I'm concerned that it will throw an error because the "relaxed-simd" target feature has not yet been defined in the backend (specifically in WebAs

[PATCH] D110111: [WebAssembly] Add relaxed-simd feature

2021-09-22 Thread Thomas Lively via Phabricator via cfe-commits
tlively accepted this revision. tlively added a comment. This revision is now accepted and ready to land. Great, thanks! I will take care of landing this. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110111/new/ https://reviews.llvm.org/D110111 _

[PATCH] D110111: [WebAssembly] Add relaxed-simd feature

2021-09-22 Thread Thomas Lively via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG1552179ac019: [WebAssembly] Add relaxed-simd feature (authored by ngzhian, committed by tlively). Repository: rG LLVM Github Monorepo CHANGES SIN

[PATCH] D110295: [WebAssembly] Add prototype relaxed SIMD fma/fms instructions

2021-09-22 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added reviewers: aheejin, ngzhian. Herald added subscribers: wingo, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100, dschuff. tlively requested review of this revision. Herald added projects: clang, LLVM. Herald added subscribers: llvm-commits, cfe-co

[PATCH] D110295: [WebAssembly] Add prototype relaxed SIMD fma/fms instructions

2021-09-23 Thread Thomas Lively via Phabricator via cfe-commits
tlively updated this revision to Diff 374606. tlively added a comment. - Fix comment Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D110295/new/ https://reviews.llvm.org/D110295 Files: clang/include/clang/Basic/BuiltinsWebAssembly.def clang/lib/

[PATCH] D110295: [WebAssembly] Add prototype relaxed SIMD fma/fms instructions

2021-09-23 Thread Thomas Lively via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG2f519825ba56: [WebAssembly] Add prototype relaxed SIMD fma/fms instructions (authored by tlively). Repository: rG LLVM Github Monorepo CHANGES SI

[PATCH] D95425: Implementation of global.get/set for reftypes in LLVM IR

2021-06-09 Thread Thomas Lively via Phabricator via cfe-commits
tlively accepted this revision. tlively added a comment. This revision is now accepted and ready to land. Thanks for your patience through all the review! Let's get this landed :) Comment at: llvm/lib/Target/WebAssembly/WebAssemblyInstrTable.td:19 [],

[PATCH] D104797: [WebAssembly] Implementation of global.get/set for reftypes in LLVM IR

2021-06-23 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. Unfortunately I don't think In D104797#2836475 , @pmatos wrote: > @tlively Do you think it would be ok to re-add the code removed in `ac81cb7e` > but only error if the pointer is to an **opaque** non-integral type? Unfortunatel

[PATCH] D104797: [WebAssembly] Implementation of global.get/set for reftypes in LLVM IR

2021-06-24 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a subscriber: aeubanks. tlively added a comment. The opaque pointers project is documented here: https://llvm.org/docs/OpaquePointers.html. It's been making very slow progress for the past few years but has recently been picking up steam under the direction of @aeubanks. Search ll

[PATCH] D108387: [WebAssembly] Restore builtins and intrinsics for pmin/pmax

2021-08-19 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added reviewers: aheejin, dschuff. Herald added subscribers: wingo, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100. tlively requested review of this revision. Herald added projects: clang, LLVM. Herald added subscribers: llvm-commits, cfe-commits. P

[PATCH] D108401: [WebAssembly] Make bitmask instructions return unsigned ints

2021-08-19 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added reviewers: aheejin, dschuff. Herald added subscribers: wingo, ecnelises, sunfish, jgravelle-google, sbc100. tlively requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Since they are bitmasks, it wil

[PATCH] D108412: [WebAssembly] Add SIMD intrinsics using unsigned integers

2021-08-19 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added reviewers: aheejin, dschuff. Herald added subscribers: wingo, ecnelises, sunfish, jgravelle-google, sbc100. tlively requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. For each SIMD intrinsic functio

[PATCH] D108415: [WebAssembly] Make shift values unsigned in wasm_simd128.h

2021-08-19 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added reviewers: aheejin, dschuff. Herald added subscribers: wingo, ecnelises, sunfish, jgravelle-google, sbc100. tlively requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. On some platforms, negative shi

[PATCH] D108412: [WebAssembly] Add SIMD intrinsics using unsigned integers

2021-08-19 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. In D108412#2955996 , @craig.topper wrote: > Did you read this twitter thread too or just coincidence? > https://twitter.com/rygorous/status/1428207170403725316?s=20 Yes I did :D Repository: rG LLVM Github Monorepo CHANGES

[PATCH] D108401: [WebAssembly] Make bitmask instructions return unsigned ints

2021-08-19 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. Thanks! Will move the relevant test changes up from https://reviews.llvm.org/D108412 to here before landing. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D108401/new/ https://reviews.llvm.org/D108401 _

[PATCH] D108401: [WebAssembly] Make bitmask instructions return unsigned ints

2021-08-19 Thread Thomas Lively via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGfd3bd63df26a: [WebAssembly] Make bitmask instructions return unsigned ints (authored by tlively). Changed prior to commit: https://reviews.llvm.org/D108401?vs=367591&id=367653#toc Repository: rG LLVM

[PATCH] D104797: [WebAssembly] Implementation of global.get/set for reftypes in LLVM IR

2021-06-28 Thread Thomas Lively via Phabricator via cfe-commits
tlively added inline comments. Comment at: llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp:130 TT.isArch64Bit() -? "e-m:e-p:64:64-i64:64-n32:64-S128-ni:1" -: "e-m:e-p:32:32-i64:64-n32:64-S12

[PATCH] D104797: [WebAssembly] Implementation of global.get/set for reftypes in LLVM IR

2021-06-30 Thread Thomas Lively via Phabricator via cfe-commits
tlively added inline comments. Comment at: llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp:130 TT.isArch64Bit() -? "e-m:e-p:64:64-i64:64-n32:64-S128-ni:1" -: "e-m:e-p:32:32-i64:64-n32:64-S12

[PATCH] D104797: [WebAssembly] Implementation of global.get/set for reftypes in LLVM IR

2021-07-01 Thread Thomas Lively via Phabricator via cfe-commits
tlively accepted this revision. tlively added a comment. This revision is now accepted and ready to land. Thanks! Comment at: llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp:130 TT.isArch64Bit() -? "e-m:e-p:64:64-i64

[PATCH] D105675: [WebAssembly] Custom combines for f64x2.promote_low_f32x4

2021-07-08 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added reviewers: aheejin, dschuff. Herald added subscribers: wingo, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100. tlively requested review of this revision. Herald added projects: clang, LLVM. Herald added subscribers: llvm-commits, cfe-commits. R

[PATCH] D105755: [WebAssembly] Custom combines for f32x4.demote_zero_f64x2

2021-07-09 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added a reviewer: aheejin. Herald added subscribers: wingo, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100, dschuff. tlively requested review of this revision. Herald added projects: clang, LLVM. Herald added subscribers: llvm-commits, cfe-commits.

[PATCH] D105675: [WebAssembly] Custom combines for f64x2.promote_low_f32x4

2021-07-09 Thread Thomas Lively via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGe5220104d070: [WebAssembly] Custom combines for f64x2.promote_low_f32x4 (authored by tlively). Repository: rG LLVM Github Monorepo CHANGES SINCE

[PATCH] D105755: [WebAssembly] Custom combines for f32x4.demote_zero_f64x2

2021-07-12 Thread Thomas Lively via Phabricator via cfe-commits
tlively updated this revision to Diff 357983. tlively added a comment. - Check types of splats as well Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105755/new/ https://reviews.llvm.org/D105755 Files: clang/include/clang/Basic/BuiltinsWebAssembl

[PATCH] D105755: [WebAssembly] Custom combines for f32x4.demote_zero_f64x2

2021-07-12 Thread Thomas Lively via Phabricator via cfe-commits
tlively added inline comments. Comment at: clang/include/clang/Basic/BuiltinsWebAssembly.def:192-193 TARGET_BUILTIN(__builtin_wasm_trunc_sat_zero_s_f64x2_i32x4, "V4iV2d", "nc", "simd128") TARGET_BUILTIN(__builtin_wasm_trunc_sat_zero_u_f64x2_i32x4, "V4UiV2d", "nc", "simd128"

[PATCH] D105755: [WebAssembly] Custom combines for f32x4.demote_zero_f64x2

2021-07-12 Thread Thomas Lively via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGcbabfc63b1be: [WebAssembly] Custom combines for f32x4.demote_zero_f64x2 (authored by tlively). Repository: rG LLVM Github Monorepo CHANGES SINCE

[PATCH] D105755: [WebAssembly] Custom combines for f32x4.demote_zero_f64x2

2021-07-12 Thread Thomas Lively via Phabricator via cfe-commits
tlively added inline comments. Comment at: clang/include/clang/Basic/BuiltinsWebAssembly.def:192-193 TARGET_BUILTIN(__builtin_wasm_trunc_sat_zero_s_f64x2_i32x4, "V4iV2d", "nc", "simd128") TARGET_BUILTIN(__builtin_wasm_trunc_sat_zero_u_f64x2_i32x4, "V4UiV2d", "nc", "simd128"

[PATCH] D105950: [WebAssembly] Codegen for v128.loadX_lane instructions

2021-07-13 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added reviewers: aheejin, dschuff. Herald added subscribers: wingo, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100. tlively requested review of this revision. Herald added projects: clang, LLVM. Herald added subscribers: llvm-commits, cfe-commits. R

[PATCH] D105950: [WebAssembly] Codegen for v128.loadX_lane instructions

2021-07-14 Thread Thomas Lively via Phabricator via cfe-commits
tlively updated this revision to Diff 358668. tlively marked 2 inline comments as done. tlively added a comment. - Address comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105950/new/ https://reviews.llvm.org/D105950 Files: clang/include/c

[PATCH] D105950: [WebAssembly] Codegen for v128.loadX_lane instructions

2021-07-14 Thread Thomas Lively via Phabricator via cfe-commits
tlively added inline comments. Comment at: llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td:324 + PatFrag<(ops node:$ptr, node:$vec, node:$idx), + (vector_insert $vec, (i32 (extloadi8 $ptr)), $idx)>; +def load16_lane : aheejin wrote: > Why are i8 and

[PATCH] D105950: [WebAssembly] Codegen for v128.loadX_lane instructions

2021-07-14 Thread Thomas Lively via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG970e0900104d: [WebAssembly] Codegen for v128.loadX_lane instructions (authored by tlively). Changed prior to commit: https://reviews.llvm.org/D105

[PATCH] D106019: [WebAssembly] Codegen for v128.storeX_lane instructions

2021-07-14 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added reviewers: aheejin, dschuff. Herald added subscribers: wingo, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100. tlively requested review of this revision. Herald added projects: clang, LLVM. Herald added subscribers: llvm-commits, cfe-commits. R

[PATCH] D106019: [WebAssembly] Codegen for v128.storeX_lane instructions

2021-07-14 Thread Thomas Lively via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG4a4229f70f81: [WebAssembly] Codegen for v128.storeX_lane instructions (authored by tlively). Changed prior to commit: https://reviews.llvm.org/D10

[PATCH] D112186: [WebAssembly] Add prototype relaxed float to int trunc instructions

2021-10-26 Thread Thomas Lively via Phabricator via cfe-commits
tlively added inline comments. Comment at: clang/lib/CodeGen/CGBuiltin.cpp:18262-18267 +case WebAssembly::BI__builtin_wasm_relaxed_trunc_zero_s_i32x4_f64x2: + IntNo = Intrinsic::wasm_relaxed_trunc_zero_signed; + break; +case WebAssembly::BI__builtin_wasm_relaxed

[PATCH] D112186: [WebAssembly] Add prototype relaxed float to int trunc instructions

2021-10-26 Thread Thomas Lively via Phabricator via cfe-commits
tlively added inline comments. Comment at: clang/lib/CodeGen/CGBuiltin.cpp:18373-18374 +llvm::Type *SrcT = Vec->getType(); +llvm::Type *TruncT = +FixedVectorType::get(llvm::IntegerType::get(getLLVMContext(), 32), 4); +Function *Callee = CGM.getIntrinsic(IntNo,

[PATCH] D112186: [WebAssembly] Add prototype relaxed float to int trunc instructions

2021-10-28 Thread Thomas Lively via Phabricator via cfe-commits
tlively accepted this revision. tlively added a comment. This revision is now accepted and ready to land. LGTM, thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D112186/new/ https://reviews.llvm.org/D112186

[PATCH] D112186: [WebAssembly] Add prototype relaxed float to int trunc instructions

2021-10-28 Thread Thomas Lively via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGfb67f3d96980: [WebAssembly] Add prototype relaxed float to int trunc instructions (authored by tlively). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D112186

[PATCH] D97834: [WebAssembly] Disable uses of __clang_call_terminate

2021-03-03 Thread Thomas Lively via Phabricator via cfe-commits
tlively accepted this revision. tlively added a comment. This revision is now accepted and ready to land. Nice, this actually looks like a good simplification in addition to fixing the specific problem. Comment at: clang/lib/CodeGen/ItaniumCXXABI.cpp:4650 + // Itanium ABI cal

[PATCH] D98457: [WebAssembly] Remove unimplemented-simd target features

2021-03-11 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added reviewers: aheejin, dschuff. Herald added subscribers: jansvoboda11, wingo, dang, ecnelises, jfb, arphaman, sunfish, hiraditya, jgravelle-google, sbc100. tlively requested review of this revision. Herald added projects: clang, LLVM. Herald added subscri

[PATCH] D98466: [WebAssembly] Remove experimental SIMD instructions

2021-03-11 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added reviewers: aheejin, dschuff. Herald added subscribers: wingo, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100. tlively requested review of this revision. Herald added projects: clang, LLVM. Herald added subscribers: llvm-commits, cfe-commits. R

[PATCH] D98466: [WebAssembly] Remove experimental SIMD instructions

2021-03-11 Thread Thomas Lively via Phabricator via cfe-commits
tlively updated this revision to Diff 330116. tlively added a comment. - Remove widen as well Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D98466/new/ https://reviews.llvm.org/D98466 Files: clang/include/clang/Basic/BuiltinsWebAssembly.def cla

[PATCH] D98457: [WebAssembly] Remove unimplemented-simd target features

2021-03-12 Thread Thomas Lively via Phabricator via cfe-commits
tlively added inline comments. Comment at: clang/include/clang/Basic/BuiltinsWebAssembly.def:191 -TARGET_BUILTIN(__builtin_wasm_qfma_f32x4, "V4fV4fV4fV4f", "nc", "unimplemented-simd128") -TARGET_BUILTIN(__builtin_wasm_qfms_f32x4, "V4fV4fV4fV4f", "nc", "unimplemented-simd128")

[PATCH] D98457: [WebAssembly] Remove unimplemented-simd target features

2021-03-12 Thread Thomas Lively via Phabricator via cfe-commits
tlively added inline comments. Comment at: clang/docs/ClangCommandLineReference.rst:3801 Pass -z to the linker - dschuff wrote: > extraneous change? Yes, will revert, thanks. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.l

[PATCH] D131990: [DRAFT][WebAssembly] Do not support `[[clang::musttail]]` by default

2022-08-16 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. Herald added subscribers: pmatos, wingo, ecnelises, sunfish, jgravelle-google, sbc100, dschuff. Herald added a reviewer: aaron.ballman. Herald added a project: All. tlively requested review of this revision. Herald added subscribers: cfe-commits, aheejin. Herald adde

[PATCH] D128440: [WebAssembly] Initial support for reference type funcref in clang

2022-08-16 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. Oops, sorry about that. Will take a look. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D128440/new/ https://reviews.llvm.org/D128440 ___ cfe-commits mailing list cfe-commits@list

[PATCH] D131990: [DRAFT][WebAssembly] Do not support `[[clang::musttail]]` by default

2022-08-16 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. For reference, the existing error from the backend is something like this: test.cpp:9:5: error: WebAssembly 'tail-call' feature not enabled int foo(int x) { ^ Note that it points to the beginning of the callee rather than the specific line containing the tail

[PATCH] D122215: [WebAssembly] Initial support for reference type externref in clang

2022-08-16 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. Very nice! This LGTM with all these small comments addressed. Sorry for the long delay in reviewing. Comment at: clang/include/clang/AST/ASTContext.h:1149 #include "clang/Basic/RISCVVTypes.def" +#define WASM_TYPE(Name, Id, SingletonId) CanQualType Sin

[PATCH] D128440: [WebAssembly] Initial support for reference type funcref in clang

2022-08-16 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. It would be good to add tests for more error conditions like in the externref patch and also additional errors like trying to apply __funcref to types that aren't function pointers. Comment at: clang/include/clang/Basic/Attr.td:4053 + let Spellings =

[PATCH] D140773: [WebAssembly] Use `shufflevector` for shuffle

2023-01-03 Thread Thomas Lively via Phabricator via cfe-commits
tlively accepted this revision. tlively added a comment. This revision is now accepted and ready to land. LGTM % comment. Thanks for taking this! Comment at: llvm/test/CodeGen/WebAssembly/simd-intrinsics.ll:159-160 ; CHECK-NEXT: return $pop[[R]]{{$}} -declare <16 x i8> @llvm.w

[PATCH] D140773: [WebAssembly] Use `shufflevector` for shuffle

2023-01-05 Thread Thomas Lively via Phabricator via cfe-commits
tlively accepted this revision. tlively added inline comments. Comment at: llvm/test/CodeGen/WebAssembly/simd-shuffle.ll:1-2 +; RUN: llc < %s -asm-verbose=false -verify-machineinstrs -disable-wasm-fallthrough-return-opt -wasm-disable-explicit-locals -wasm-keep-registers -mattr=

[PATCH] D138249: [WebAssembly] Update relaxed-simd instruction names

2022-11-17 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added reviewers: aheejin, maratyszcza. Herald added subscribers: pmatos, asb, wingo, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100, dschuff. Herald added a project: All. tlively requested review of this revision. Herald added projects: clang, LLVM.

[PATCH] D133574: [C2x] reject type definitions in offsetof

2023-01-13 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. FWIW I had to patch the musl used by Emscripten to work around this: https://github.com/emscripten-core/emscripten/pull/18510 The fix was simple and I don't have a strong opinion about the right way forward, but this change was slightly disruptive and I imagine other pr

[PATCH] D128282: [WebAssembly] Update test to run it in opaque pointers mode

2022-06-21 Thread Thomas Lively via Phabricator via cfe-commits
tlively accepted this revision. tlively added a comment. I think the lines still differ in that one tests wasm32 and the other tests wasm64 (the triples are different). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D128282/new/ https://reviews.llvm

[PATCH] D128282: [WebAssembly] Update test to run it in opaque pointers mode

2022-06-22 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. In D128282#3601100 , @asb wrote: > In D128282#3600355 , @tlively wrote: > >> I think the lines still differ in that one tests wasm32 and the other tests >> wasm64 (the triples are differe

[PATCH] D127170: [WebAssembly] Implement remaining relaxed SIMD instructions

2022-06-06 Thread Thomas Lively via Phabricator via cfe-commits
tlively created this revision. tlively added a reviewer: aheejin. Herald added subscribers: pmatos, asb, wingo, ecnelises, sunfish, hiraditya, jgravelle-google, sbc100, dschuff. Herald added a project: All. tlively requested review of this revision. Herald added projects: clang, LLVM. Herald added

[PATCH] D127170: [WebAssembly] Implement remaining relaxed SIMD instructions

2022-06-07 Thread Thomas Lively via Phabricator via cfe-commits
tlively planned changes to this revision. tlively added inline comments. Comment at: clang/include/clang/Basic/BuiltinsWebAssembly.def:190 +TARGET_BUILTIN(__builtin_wasm_dot_i8x16_i7x16_s_i16x8, "V8sV16ScV16Sc", "nc", "relaxed-simd") +TARGET_BUILTIN(__builtin_wasm_dot_i8x16_i7x1

[PATCH] D127170: [WebAssembly] Implement remaining relaxed SIMD instructions

2022-06-07 Thread Thomas Lively via Phabricator via cfe-commits
tlively updated this revision to Diff 434968. tlively added a comment. - dot_add takes three operands Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D127170/new/ https://reviews.llvm.org/D127170 Files: clang/include/clang/Basic/BuiltinsWebAssembly

[PATCH] D127170: [WebAssembly] Implement remaining relaxed SIMD instructions

2022-06-08 Thread Thomas Lively via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGaff679a48c43: [WebAssembly] Implement remaining relaxed SIMD instructions (authored by tlively). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D127170/new/ h

[PATCH] D158409: [WebAssembly] Add multiple memories feature

2023-08-21 Thread Thomas Lively via Phabricator via cfe-commits
tlively added a comment. The other file to update here is clang/test/Driver/wasm-features.c. It looks like we haven't been as consistent about updating that one. Comment at: clang/include/clang/Driver/Options.td:4583-4584 def mno_extended_const : Flag<["-"], "mno-extended-con

[PATCH] D158409: [WebAssembly] Add multiple memories feature

2023-08-21 Thread Thomas Lively via Phabricator via cfe-commits
tlively added inline comments. Comment at: clang/include/clang/Driver/Options.td:4583-4584 def mno_extended_const : Flag<["-"], "mno-extended-const">, Group; +def mmulti_memories : Flag<["-"], "mmulti-memories">, Group; +def mno_multi_memories : Flag<["-"], "mno-multi-memories

[PATCH] D158409: [WebAssembly] Add multiple memories feature

2023-08-21 Thread Thomas Lively via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG86ed8cb8fabe: [WebAssembly] Add multiple memories feature (authored by ashleynh, committed by tlively). Changed prior to commit: https://reviews.l

<    1   2   3   4   5   >