Page MenuHomePhabricator

tlively (Thomas Lively)
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 31 2018, 10:54 AM (76 w, 3 d)

Recent Activity

Yesterday

tlively created D72972: [WebAssembly] Add experimental multivalue calling ABI.
Fri, Jan 17, 6:39 PM · Restricted Project
tlively updated the diff for D72902: [WebAssembly] Fix RegStackify and ExplicitLocals to handle multivalue.
  • Add script doc comment and update string formatting
Fri, Jan 17, 4:17 PM · Restricted Project
tlively added inline comments to D71496: [WebAssembly] Split and recombine multivalue calls for ISel.
Fri, Jan 17, 3:30 PM · Restricted Project
tlively updated the diff for D71496: [WebAssembly] Split and recombine multivalue calls for ISel.
  • Switch to using MVT::Glue
Fri, Jan 17, 3:30 PM · Restricted Project
tlively added a comment to D71484: [WebAssembly][InstrEmitter] Foundation for multivalue call lowering.

@aheejin, there are no changes I am currently planning to make to this, but I am happy to continue the inline discussions.

Fri, Jan 17, 3:02 PM · Restricted Project
tlively added inline comments to D71484: [WebAssembly][InstrEmitter] Foundation for multivalue call lowering.
Fri, Jan 17, 3:02 PM · Restricted Project
tlively updated the diff for D71484: [WebAssembly][InstrEmitter] Foundation for multivalue call lowering.
  • Rebase on master
Fri, Jan 17, 3:02 PM · Restricted Project
tlively created D72902: [WebAssembly] Fix RegStackify and ExplicitLocals to handle multivalue.
Fri, Jan 17, 12:08 AM · Restricted Project
tlively added a child revision for D71496: [WebAssembly] Split and recombine multivalue calls for ISel: D72902: [WebAssembly] Fix RegStackify and ExplicitLocals to handle multivalue.
Fri, Jan 17, 12:08 AM · Restricted Project
tlively added a comment to D72902: [WebAssembly] Fix RegStackify and ExplicitLocals to handle multivalue.

Just looking for high-level feedback right now, especially on the inclusion of the script and generated test cases. Now that multivalue is testable, I will go back and clean up the previous patches in this chain.

Fri, Jan 17, 12:08 AM · Restricted Project
tlively added a parent revision for D72902: [WebAssembly] Fix RegStackify and ExplicitLocals to handle multivalue: D71496: [WebAssembly] Split and recombine multivalue calls for ISel.
Fri, Jan 17, 12:08 AM · Restricted Project

Wed, Jan 8

tlively added a comment to D71681: [WebAssembly] Track frame registers through VReg and local allocation.

Unfortunately I do not know how multi-return.ll works. Despite its name, it is not a multivalue test (although once multivalue works it would make sense to add a multivalue-enabled run to that file). I generally don't use test-generation scripts because they tend to produce tests with unclear goals, as you observe.

Wed, Jan 8, 11:08 AM · Restricted Project

Mon, Jan 6

tlively accepted D72308: [WebAssembly] Fix landingpad-only case in Emscripten EH.

LGTM! I checked locally and this fixes https://github.com/rust-lang/rust/issues/66308. Thanks for solving this so quickly :)

Mon, Jan 6, 4:52 PM · Restricted Project

Dec 18 2019

tlively committed rG71eb8023d85e: [WebAssembly] Add avgr_u intrinsics and require nuw in patterns (authored by tlively).
[WebAssembly] Add avgr_u intrinsics and require nuw in patterns
Dec 18 2019, 3:45 PM
tlively closed D71648: [WebAssembly] Add avgr_u intrinsics and require nuw in patterns.
Dec 18 2019, 3:45 PM · Restricted Project, Restricted Project

Dec 17 2019

tlively created D71648: [WebAssembly] Add avgr_u intrinsics and require nuw in patterns.
Dec 17 2019, 10:03 PM · Restricted Project, Restricted Project
tlively committed rGf1b351e14a91: [WebAssembly] Implement SIMD {i8x16,i16x8}.avgr_u instructions (authored by tlively).
[WebAssembly] Implement SIMD {i8x16,i16x8}.avgr_u instructions
Dec 17 2019, 3:06 PM
tlively closed D71628: [WebAssembly] Implement SIMD {i8x16,i16x8}.avgr_u instructions.
Dec 17 2019, 3:06 PM · Restricted Project
tlively created D71628: [WebAssembly] Implement SIMD {i8x16,i16x8}.avgr_u instructions.
Dec 17 2019, 2:06 PM · Restricted Project

Dec 16 2019

tlively added inline comments to D71496: [WebAssembly] Split and recombine multivalue calls for ISel.
Dec 16 2019, 3:18 PM · Restricted Project
tlively updated the diff for D71496: [WebAssembly] Split and recombine multivalue calls for ISel.
  • Use MVT::Other for link, rebase
Dec 16 2019, 2:53 PM · Restricted Project
tlively updated the diff for D71484: [WebAssembly][InstrEmitter] Foundation for multivalue call lowering.
  • Add OpInfo check to avoid OOB when there are only variadic ops
Dec 16 2019, 2:49 PM · Restricted Project
tlively added inline comments to D71496: [WebAssembly] Split and recombine multivalue calls for ISel.
Dec 16 2019, 2:26 PM · Restricted Project
tlively updated the diff for D71484: [WebAssembly][InstrEmitter] Foundation for multivalue call lowering.
  • Check isVariadic explicitly in InstrEmitter
Dec 16 2019, 1:30 PM · Restricted Project
tlively updated the diff for D71496: [WebAssembly] Split and recombine multivalue calls for ISel.
  • Address simple comments
Dec 16 2019, 1:30 PM · Restricted Project
tlively updated subscribers of D71484: [WebAssembly][InstrEmitter] Foundation for multivalue call lowering.
Dec 16 2019, 1:05 PM · Restricted Project
tlively committed rG3a93756dfbb0: [WebAssembly] Replace SIMD int min/max builtins with patterns (authored by tlively).
[WebAssembly] Replace SIMD int min/max builtins with patterns
Dec 16 2019, 12:07 PM
tlively closed D71500: [WebAssembly] Replace SIMD int min/max builtins with patterns.
Dec 16 2019, 12:07 PM · Restricted Project, Restricted Project
tlively added inline comments to D71500: [WebAssembly] Replace SIMD int min/max builtins with patterns.
Dec 16 2019, 11:49 AM · Restricted Project, Restricted Project

Dec 13 2019

tlively created D71500: [WebAssembly] Replace SIMD int min/max builtins with patterns.
Dec 13 2019, 5:16 PM · Restricted Project, Restricted Project
tlively added inline comments to D71496: [WebAssembly] Split and recombine multivalue calls for ISel.
Dec 13 2019, 4:31 PM · Restricted Project
tlively added a comment to D71484: [WebAssembly][InstrEmitter] Foundation for multivalue call lowering.

In the description you say " .. unique among upstream targets", and later "... WebAssembly and similar downstream targets.". Was it deliberate to use both "upstream" and "downstream", what do these term mean here? Also the "unique" statement seems to contract the "and similar" statement.

Dec 13 2019, 3:45 PM · Restricted Project
tlively added a child revision for D71484: [WebAssembly][InstrEmitter] Foundation for multivalue call lowering: D71496: [WebAssembly] Split and recombine multivalue calls for ISel.
Dec 13 2019, 3:36 PM · Restricted Project
tlively added a parent revision for D71496: [WebAssembly] Split and recombine multivalue calls for ISel: D71484: [WebAssembly][InstrEmitter] Foundation for multivalue call lowering.
Dec 13 2019, 3:36 PM · Restricted Project
tlively created D71496: [WebAssembly] Split and recombine multivalue calls for ISel.
Dec 13 2019, 3:27 PM · Restricted Project
tlively planned changes to D66983: [WebAssembly] Add wasm-specific vector shuffle builtin and intrinsic.

This issue is still not resolved.

Dec 13 2019, 11:10 AM · Restricted Project, Restricted Project
tlively created D71484: [WebAssembly][InstrEmitter] Foundation for multivalue call lowering.
Dec 13 2019, 11:10 AM · Restricted Project

Nov 15 2019

tlively committed rG194d7ec081c3: [WebAssembly] Fix miscompile of select with and (authored by tlively).
[WebAssembly] Fix miscompile of select with and
Nov 15 2019, 4:26 PM
tlively closed D70347: [WebAssembly] Fix miscompile of select with and.
Nov 15 2019, 4:26 PM · Restricted Project
tlively created D70347: [WebAssembly] Fix miscompile of select with and.
Nov 15 2019, 3:42 PM · Restricted Project

Nov 13 2019

tlively accepted D69832: [WebAssembly] -fwasm-exceptions enables reference-types.

LGTM, sorry for the delay!

Nov 13 2019, 5:09 PM · Restricted Project

Nov 1 2019

tlively committed rG935c84c3c27d: [WebAssembly] Add experimental SIMD dot product instruction (authored by tlively).
[WebAssembly] Add experimental SIMD dot product instruction
Nov 1 2019, 10:48 AM
tlively closed D69697: [WebAssembly] Add experimental SIMD dot product instruction.
Nov 1 2019, 10:47 AM · Restricted Project, Restricted Project
tlively committed rGecb7daf68f20: Reland "[WebAssembly] Expand setcc of v2i64" (authored by tlively).
Reland "[WebAssembly] Expand setcc of v2i64"
Nov 1 2019, 10:38 AM
tlively added a reverting change for rG11850a6305c5: [WebAssembly] Expand setcc of v2i64: rGecb7daf68f20: Reland "[WebAssembly] Expand setcc of v2i64".
Nov 1 2019, 10:38 AM
tlively added a reverting change for rGe5cae5692b58: Revert "[WebAssembly] Expand setcc of v2i64": rGecb7daf68f20: Reland "[WebAssembly] Expand setcc of v2i64".
Nov 1 2019, 10:38 AM

Oct 31 2019

tlively updated the diff for D69697: [WebAssembly] Add experimental SIMD dot product instruction.
  • Add second argument
Oct 31 2019, 8:37 PM · Restricted Project, Restricted Project
tlively committed rGa07019a275cd: [WebAssembly] SIMD integer min and max instructions (authored by tlively).
[WebAssembly] SIMD integer min and max instructions
Oct 31 2019, 8:26 PM
tlively closed D69696: [WebAssembly] SIMD integer min and max instructions.
Oct 31 2019, 8:26 PM · Restricted Project, Restricted Project
tlively updated the summary of D69696: [WebAssembly] SIMD integer min and max instructions.
Oct 31 2019, 8:19 PM · Restricted Project, Restricted Project
tlively updated the summary of D69697: [WebAssembly] Add experimental SIMD dot product instruction.
Oct 31 2019, 8:09 PM · Restricted Project, Restricted Project
tlively added a comment to D69697: [WebAssembly] Add experimental SIMD dot product instruction.

https://github.com/WebAssembly/simd/pull/127

Oct 31 2019, 8:09 PM · Restricted Project, Restricted Project
tlively committed rG3479fd25b9d5: Reland "[WebAssembly] Handle multiple loads of splatted loads" (authored by tlively).
Reland "[WebAssembly] Handle multiple loads of splatted loads"
Oct 31 2019, 8:06 PM
tlively added a reverting change for rG92a25fbf11da: Revert "[WebAssembly] Handle multiple loads of splatted loads": rG3479fd25b9d5: Reland "[WebAssembly] Handle multiple loads of splatted loads".
Oct 31 2019, 8:06 PM
tlively accepted D69699: [clang][driver] Add ProfileData to LLVM_LINK_COMPONENTS.

LGTM!

Oct 31 2019, 7:56 PM · Restricted Project
tlively added a comment to D69697: [WebAssembly] Add experimental SIMD dot product instruction.

This is https://github.com/WebAssembly/simd/pull/127

Oct 31 2019, 7:31 PM · Restricted Project, Restricted Project
tlively added a comment to D69696: [WebAssembly] SIMD integer min and max instructions.

Is this https://github.com/WebAssembly/simd/pull/27 ? Can you please include the spec (even if it's still an unmerged PR) in the CL description next time? LGTM.

Oct 31 2019, 7:31 PM · Restricted Project, Restricted Project
tlively created D69697: [WebAssembly] Add experimental SIMD dot product instruction.
Oct 31 2019, 6:34 PM · Restricted Project, Restricted Project
tlively added a child revision for D69696: [WebAssembly] SIMD integer min and max instructions: D69697: [WebAssembly] Add experimental SIMD dot product instruction.
Oct 31 2019, 6:34 PM · Restricted Project, Restricted Project
tlively created D69696: [WebAssembly] SIMD integer min and max instructions.
Oct 31 2019, 5:40 PM · Restricted Project, Restricted Project
tlively committed rG2ab1b8c1ec45: [WebAssembly] Handle multiple loads of splatted loads (authored by tlively).
[WebAssembly] Handle multiple loads of splatted loads
Oct 31 2019, 3:02 PM
tlively closed D69640: [WebAssembly] Handle multiple loads of splatted loads.
Oct 31 2019, 3:02 PM · Restricted Project
tlively committed rG11850a6305c5: [WebAssembly] Expand setcc of v2i64 (authored by tlively).
[WebAssembly] Expand setcc of v2i64
Oct 31 2019, 2:25 PM
tlively closed D69604: [WebAssembly] Expand setcc of v2i64.
Oct 31 2019, 2:25 PM · Restricted Project

Oct 30 2019

tlively created D69640: [WebAssembly] Handle multiple loads of splatted loads.
Oct 30 2019, 1:44 PM · Restricted Project

Oct 29 2019

tlively created D69604: [WebAssembly] Expand setcc of v2i64.
Oct 29 2019, 10:40 PM · Restricted Project

Oct 24 2019

tlively added a comment to D66035: [WebAssembly] WIP: Add support for reference types.

One other thought: Does the implementation in this diff care what type the reference type pointers are pointing to? It would be nice if we could enforce the use of an opaque pointee type to prevent the reference types from being dereferenced.

Oct 24 2019, 2:02 PM · Restricted Project, Restricted Project
tlively added a comment to D66035: [WebAssembly] WIP: Add support for reference types.

It would be great to see some test .ll files here so we can get a better understanding for what is implemented here. I would also like to see tests of what happens if you try to do a ptrtoint or some other illegal operation on a reference type.

Oct 24 2019, 2:02 PM · Restricted Project, Restricted Project

Oct 18 2019

tlively committed rL375283: [WebAssembly] Allow multivalue signatures in object files.
[WebAssembly] Allow multivalue signatures in object files
Oct 18 2019, 1:27 PM
tlively committed rG393d0f799f88: [WebAssembly] Allow multivalue signatures in object files (authored by tlively).
[WebAssembly] Allow multivalue signatures in object files
Oct 18 2019, 1:27 PM
tlively closed D69156: [WebAssembly] Allow multivalue signatures in object files.
Oct 18 2019, 1:27 PM · Restricted Project
tlively added inline comments to D69156: [WebAssembly] Allow multivalue signatures in object files.
Oct 18 2019, 10:48 AM · Restricted Project

Oct 17 2019

tlively committed rG807cecad5d98: [WebAssembly] -pthread implies -target-feature +sign-ext (authored by tlively).
[WebAssembly] -pthread implies -target-feature +sign-ext
Oct 17 2019, 9:36 PM
tlively closed D69075: [WebAssembly] -pthread implies -target-feature +sign-ext.
Oct 17 2019, 9:35 PM · Restricted Project
tlively committed rL375199: [WebAssembly] -pthread implies -target-feature +sign-ext.
[WebAssembly] -pthread implies -target-feature +sign-ext
Oct 17 2019, 9:35 PM
tlively created D69156: [WebAssembly] Allow multivalue signatures in object files.
Oct 17 2019, 9:24 PM · Restricted Project
tlively reclaimed D66983: [WebAssembly] Add wasm-specific vector shuffle builtin and intrinsic.

I'm re-opening this revision. After discussion on https://github.com/WebAssembly/simd/issues/118, there is clear consensus that we do not want to break WebAssembly's abstraction and consider underlying platforms, so shuffles should not be merged without some sort of modification to the spec to serve as a platform-agnostic indication that the merged shuffle will be better.

Oct 17 2019, 10:52 AM · Restricted Project, Restricted Project
tlively updated the summary of D66983: [WebAssembly] Add wasm-specific vector shuffle builtin and intrinsic.
Oct 17 2019, 10:33 AM · Restricted Project, Restricted Project

Oct 16 2019

tlively created D69075: [WebAssembly] -pthread implies -target-feature +sign-ext.
Oct 16 2019, 5:37 PM · Restricted Project

Oct 15 2019

tlively committed rG190dacc3cc20: [WebAssembly] Elide data segments for .bss sections (authored by tlively).
[WebAssembly] Elide data segments for .bss sections
Oct 15 2019, 12:04 PM
tlively committed rL374940: [WebAssembly] Elide data segments for .bss sections.
[WebAssembly] Elide data segments for .bss sections
Oct 15 2019, 12:04 PM
tlively closed D68965: [WebAssembly] Elide data segments for .bss sections.
Oct 15 2019, 12:04 PM · Restricted Project
tlively added inline comments to D68965: [WebAssembly] Elide data segments for .bss sections.
Oct 15 2019, 11:45 AM · Restricted Project
tlively committed rG2cb27072cefb: [WebAssembly] Allow multivalue types in block signature operands (authored by tlively).
[WebAssembly] Allow multivalue types in block signature operands
Oct 15 2019, 11:27 AM
tlively closed D68889: [WebAssembly] Allow multivalue types in block signature operands.
Oct 15 2019, 11:27 AM · Restricted Project
tlively committed rL374933: [WebAssembly] Allow multivalue types in block signature operands.
[WebAssembly] Allow multivalue types in block signature operands
Oct 15 2019, 11:26 AM
tlively updated the diff for D68889: [WebAssembly] Allow multivalue types in block signature operands.
  • Address comments
Oct 15 2019, 10:58 AM · Restricted Project

Oct 14 2019

tlively committed rG232fd99d9ee6: [WebAssembly] Trapping fptoint builtins and intrinsics (authored by tlively).
[WebAssembly] Trapping fptoint builtins and intrinsics
Oct 14 2019, 6:14 PM
tlively committed rL374856: [WebAssembly] Trapping fptoint builtins and intrinsics.
[WebAssembly] Trapping fptoint builtins and intrinsics
Oct 14 2019, 6:14 PM
tlively closed D68902: [WebAssembly] Trapping fptoint builtins and intrinsics.
Oct 14 2019, 6:14 PM · Restricted Project, Restricted Project
tlively created D68965: [WebAssembly] Elide data segments for .bss sections.
Oct 14 2019, 6:04 PM · Restricted Project
tlively added a comment to D68889: [WebAssembly] Allow multivalue types in block signature operands.

Nice! Mostly LGTM.

Currently non-void blocks are only generated at the end of functions where the block return type needs to agree with the function return type, and that remains true for multivalue blocks. That invariant means that the actual signature does not need to be stored in the block signature MachineOperand because it can be inferred by WebAssemblyMCInstLower from the return type of the parent function.

I guess this is a tentative state before you implement the rest of the proposal in full, right? If other blocks are able to return multivalue, are we gonna change their operands to also take typeindex?

Oct 14 2019, 11:58 AM · Restricted Project

Oct 11 2019

tlively created D68902: [WebAssembly] Trapping fptoint builtins and intrinsics.
Oct 11 2019, 6:32 PM · Restricted Project, Restricted Project
tlively added inline comments to D68889: [WebAssembly] Allow multivalue types in block signature operands.
Oct 11 2019, 6:05 PM · Restricted Project
tlively updated the diff for D68889: [WebAssembly] Allow multivalue types in block signature operands.
  • Explain more about multivalue types in WebAssembly::BlockType
Oct 11 2019, 5:38 PM · Restricted Project
tlively added inline comments to D68889: [WebAssembly] Allow multivalue types in block signature operands.
Oct 11 2019, 5:28 PM · Restricted Project
tlively added inline comments to D68889: [WebAssembly] Allow multivalue types in block signature operands.
Oct 11 2019, 3:56 PM · Restricted Project
tlively added inline comments to D68889: [WebAssembly] Allow multivalue types in block signature operands.
Oct 11 2019, 3:29 PM · Restricted Project
tlively added inline comments to D68889: [WebAssembly] Allow multivalue types in block signature operands.
Oct 11 2019, 3:29 PM · Restricted Project
tlively created D68889: [WebAssembly] Allow multivalue types in block signature operands.
Oct 11 2019, 2:13 PM · Restricted Project