Page MenuHomePhabricator

aheejin (Heejin Ahn)
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 29 2016, 12:33 AM (181 w, 21 h)

Recent Activity

Mon, Jan 6

aheejin committed rG21f7b362095f: [WebAssembly] Fix landingpad-only case in Emscripten EH (authored by aheejin).
[WebAssembly] Fix landingpad-only case in Emscripten EH
Mon, Jan 6, 5:11 PM
aheejin closed D72308: [WebAssembly] Fix landingpad-only case in Emscripten EH.
Mon, Jan 6, 5:10 PM · Restricted Project
aheejin created D72308: [WebAssembly] Fix landingpad-only case in Emscripten EH.
Mon, Jan 6, 4:34 PM · Restricted Project

Dec 18 2019

aheejin accepted D71648: [WebAssembly] Add avgr_u intrinsics and require nuw in patterns.
Dec 18 2019, 3:07 PM · Restricted Project, Restricted Project

Dec 17 2019

aheejin accepted D71628: [WebAssembly] Implement SIMD {i8x16,i16x8}.avgr_u instructions.
Dec 17 2019, 2:16 PM · Restricted Project

Dec 16 2019

aheejin added inline comments to D71496: [WebAssembly] Split and recombine multivalue calls for ISel.
Dec 16 2019, 4:16 PM · Restricted Project
aheejin added inline comments to D71484: [WebAssembly][InstrEmitter] Foundation for multivalue call lowering.
Dec 16 2019, 4:07 PM · Restricted Project
aheejin accepted D71500: [WebAssembly] Replace SIMD int min/max builtins with patterns.
Dec 16 2019, 11:30 AM · Restricted Project, Restricted Project
aheejin added a comment to D71496: [WebAssembly] Split and recombine multivalue calls for ISel.

Nice! Are there no tests because we don't have the assembly printer support yet?

Dec 16 2019, 10:34 AM · Restricted Project
aheejin added a comment to D71484: [WebAssembly][InstrEmitter] Foundation for multivalue call lowering.

Mostly LGTM to me

Dec 16 2019, 10:34 AM · Restricted Project

Dec 14 2019

aheejin committed rG0133dc3983c2: [IR] Include more target specific intrinsic headers (authored by aheejin).
[IR] Include more target specific intrinsic headers
Dec 14 2019, 7:25 PM

Dec 12 2019

aheejin committed rG5368f35efaf6: [IR] Include target specific intrinsic headers (authored by aheejin).
[IR] Include target specific intrinsic headers
Dec 12 2019, 3:57 PM

Nov 21 2019

aheejin accepted D70567: [WebAssembly][SelectionDAG] Remove unused WebAssemblyDAGToDAGISel::ForCodeSize..
Nov 21 2019, 2:48 PM · Restricted Project

Nov 13 2019

aheejin committed rG70ee430c6e45: [WebAssembly] -fwasm-exceptions enables reference-types (authored by aheejin).
[WebAssembly] -fwasm-exceptions enables reference-types
Nov 13 2019, 7:51 PM
aheejin closed D69832: [WebAssembly] -fwasm-exceptions enables reference-types.
Nov 13 2019, 7:51 PM · Restricted Project
aheejin committed rG3306fe10fabb: [unittests] Add InitializePasses.h includes (authored by aheejin).
[unittests] Add InitializePasses.h includes
Nov 13 2019, 7:44 PM
aheejin closed D70217: [unittests] Add InitializePasses.h includes.
Nov 13 2019, 7:43 PM · Restricted Project
aheejin updated the diff for D70217: [unittests] Add InitializePasses.h includes.
  • Remove Pass.h includes that are unnecessary now
Nov 13 2019, 6:30 PM · Restricted Project
aheejin created D70217: [unittests] Add InitializePasses.h includes.
Nov 13 2019, 6:30 PM · Restricted Project
aheejin added a comment to D69832: [WebAssembly] -fwasm-exceptions enables reference-types.

pong

Nov 13 2019, 2:21 PM · Restricted Project

Nov 12 2019

aheejin added a comment to D69832: [WebAssembly] -fwasm-exceptions enables reference-types.

ping

Nov 12 2019, 10:28 AM · Restricted Project

Nov 4 2019

aheejin created D69832: [WebAssembly] -fwasm-exceptions enables reference-types.
Nov 4 2019, 4:06 PM · Restricted Project

Oct 31 2019

aheejin accepted D69697: [WebAssembly] Add experimental SIMD dot product instruction.
Oct 31 2019, 8:46 PM · Restricted Project, Restricted Project
aheejin committed rGb9903ec8979f: [clang][driver] Add ProfileData to LLVM_LINK_COMPONENTS (authored by aheejin).
[clang][driver] Add ProfileData to LLVM_LINK_COMPONENTS
Oct 31 2019, 7:56 PM
aheejin closed D69699: [clang][driver] Add ProfileData to LLVM_LINK_COMPONENTS.
Oct 31 2019, 7:56 PM · Restricted Project
aheejin added inline comments to D69697: [WebAssembly] Add experimental SIMD dot product instruction.
Oct 31 2019, 7:56 PM · Restricted Project, Restricted Project
aheejin created D69699: [clang][driver] Add ProfileData to LLVM_LINK_COMPONENTS.
Oct 31 2019, 7:56 PM · Restricted Project
aheejin accepted 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:29 PM · Restricted Project, Restricted Project

Oct 30 2019

aheejin accepted D69604: [WebAssembly] Expand setcc of v2i64.
Oct 30 2019, 8:39 PM · Restricted Project
aheejin accepted D69640: [WebAssembly] Handle multiple loads of splatted loads.

LGTM. It's interesting that we can use MemIntrinsicNode for this purpose even if it's not an intrinsic...
(I guess we can also use MachineSDNode because we are effectively doing isel before we reach tablegen, but given that we've used it only in WebAssemblyISelDAGToDAG.cpp and we do most custom SIMD lowering in WebAssemblyISelLowering.cpp, this looks like a good trick.)

Oct 30 2019, 7:28 PM · Restricted Project

Oct 18 2019

aheejin added inline comments to D66983: [WebAssembly] Add wasm-specific vector shuffle builtin and intrinsic.
Oct 18 2019, 4:14 PM · Restricted Project, Restricted Project
aheejin accepted D69156: [WebAssembly] Allow multivalue signatures in object files.
Oct 18 2019, 5:25 AM · Restricted Project

Oct 15 2019

aheejin accepted D68889: [WebAssembly] Allow multivalue types in block signature operands.
Oct 15 2019, 11:26 AM · Restricted Project

Oct 14 2019

aheejin accepted D68902: [WebAssembly] Trapping fptoint builtins and intrinsics.
Oct 14 2019, 3:28 PM · Restricted Project, Restricted Project
aheejin 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:02 AM · Restricted Project

Oct 11 2019

aheejin added a comment to D68889: [WebAssembly] Allow multivalue types in block signature operands.

Nice! Mostly LGTM.

Oct 11 2019, 5:56 PM · Restricted Project
aheejin added inline comments to D68889: [WebAssembly] Allow multivalue types in block signature operands.
Oct 11 2019, 5:56 PM · Restricted Project

Oct 9 2019

aheejin accepted D68684: [WebAssembly] Make returns variadic.
Oct 9 2019, 2:02 PM · Restricted Project
aheejin added a comment to D68527: [WebAssembly] v8x16.swizzle and rewrite BUILD_VECTOR lowering.

If swizzles are a lot more complicated that v128.const in execution, doesn't that mean swizzles will likely to take longer to execute in wasm? Why the opposite?

Swizzles lower directly to hardware instructions so they are fast for engines to execute. But doing the same operation without a swizzle instruction would require a long sequence of other wasm instructions and therefore be slow to execute. Because this difference is large for swizzles it is a good idea to prefer to use them when possible.

Oct 9 2019, 1:47 PM · Restricted Project

Oct 8 2019

aheejin accepted D68527: [WebAssembly] v8x16.swizzle and rewrite BUILD_VECTOR lowering.

We can make the decision based on whatever heuristic we want, but minimizing number of instructions seems like a good metric for now until we can run experiments to tune the selection algorithm.

Wouldn't minimizing the number of instruction be the same thing as minimizing the number of bytes, only more inaccurate?

Oct 8 2019, 11:02 PM · Restricted Project
aheejin committed rG6a37c5d6fcae: [WebAssembly] Fix a bug in 'try' placement (authored by aheejin).
[WebAssembly] Fix a bug in 'try' placement
Oct 8 2019, 9:23 AM
aheejin closed D68619: [WebAssembly] Fix a bug in 'try' placement.
Oct 8 2019, 9:23 AM · Restricted Project
aheejin committed rL374073: [WebAssembly] Fix a bug in 'try' placement.
[WebAssembly] Fix a bug in 'try' placement
Oct 8 2019, 9:13 AM
aheejin accepted D68531: [WebAssembly] Add builtin and intrinsic for v8x16.swizzle.

LLVM produces a poison value if the dynamic swizzle indices are greater than the vector size, but the WebAssembly instruction sets the corresponding output lane to zero.

Where do we set those undef or poison lanes to zero?

Oct 8 2019, 8:54 AM · Restricted Project, Restricted Project
aheejin added a comment to D68527: [WebAssembly] v8x16.swizzle and rewrite BUILD_VECTOR lowering.
  • I remember before we had a somewhat complicated logic to calculate the number of bytes of total instructions of each case of the case we use v128.const and vs. when we use splats. Don't we need that anymore? Can we make the decision solely based the number of swizzles / consts / and splats?
Oct 8 2019, 8:45 AM · Restricted Project

Oct 7 2019

aheejin committed rGa58ddba1137d: [WebAssembly] Add REQUIRES: asserts to cfg-stackify-eh.ll (authored by aheejin).
[WebAssembly] Add REQUIRES: asserts to cfg-stackify-eh.ll
Oct 7 2019, 10:27 PM
aheejin committed rL374015: [WebAssembly] Add REQUIRES: asserts to cfg-stackify-eh.ll.
[WebAssembly] Add REQUIRES: asserts to cfg-stackify-eh.ll
Oct 7 2019, 10:27 PM
aheejin committed rGdaeead4b02f0: [WebAssembly] Fix unwind mismatch stat computation (authored by aheejin).
[WebAssembly] Fix unwind mismatch stat computation
Oct 7 2019, 10:21 PM
aheejin committed rL373975: [WebAssembly] Fix unwind mismatch stat computation.
[WebAssembly] Fix unwind mismatch stat computation
Oct 7 2019, 10:21 PM
aheejin committed rGae5bad7277f4: [llvm-lipo] Add TextAPI to LINK_COMPONENTS (authored by aheejin).
[llvm-lipo] Add TextAPI to LINK_COMPONENTS
Oct 7 2019, 10:21 PM
aheejin closed D68552: [WebAssembly] Fix unwind mismatch stat computation.
Oct 7 2019, 10:21 PM · Restricted Project
aheejin committed rL373974: [llvm-lipo] Add TextAPI to LINK_COMPONENTS.
[llvm-lipo] Add TextAPI to LINK_COMPONENTS
Oct 7 2019, 10:21 PM
aheejin closed D68594: [llvm-lipo] Add TextAPI to LINK_COMPONENTS.
Oct 7 2019, 10:21 PM · Restricted Project
aheejin committed rG58af5be28daf: [WebAssembly] Add memory intrinsics handling to mayThrow() (authored by aheejin).
[WebAssembly] Add memory intrinsics handling to mayThrow()
Oct 7 2019, 10:20 PM
aheejin committed rL373967: [WebAssembly] Add memory intrinsics handling to mayThrow().
[WebAssembly] Add memory intrinsics handling to mayThrow()
Oct 7 2019, 10:20 PM
aheejin closed D68553: [WebAssembly] Add memory intrinsics handling to mayThrow().
Oct 7 2019, 10:20 PM · Restricted Project
aheejin added a comment to D68552: [WebAssembly] Fix unwind mismatch stat computation.

Thank you! Done in r374015.

Oct 7 2019, 7:53 PM · Restricted Project
aheejin updated the summary of D68619: [WebAssembly] Fix a bug in 'try' placement.
Oct 7 2019, 6:09 PM · Restricted Project
aheejin created D68619: [WebAssembly] Fix a bug in 'try' placement.
Oct 7 2019, 6:07 PM · Restricted Project
aheejin added a comment to D68594: [llvm-lipo] Add TextAPI to LINK_COMPONENTS.

Merging this, because this crashes builds.

Oct 7 2019, 3:06 PM · Restricted Project
aheejin created D68594: [llvm-lipo] Add TextAPI to LINK_COMPONENTS.
Oct 7 2019, 2:21 PM · Restricted Project
aheejin updated the summary of D68553: [WebAssembly] Add memory intrinsics handling to mayThrow().
Oct 7 2019, 2:11 PM · Restricted Project

Oct 6 2019

aheejin updated the summary of D68553: [WebAssembly] Add memory intrinsics handling to mayThrow().
Oct 6 2019, 9:40 AM · Restricted Project
aheejin added a parent revision for D68552: [WebAssembly] Fix unwind mismatch stat computation: D68553: [WebAssembly] Add memory intrinsics handling to mayThrow().
Oct 6 2019, 7:36 AM · Restricted Project
aheejin updated the diff for D68552: [WebAssembly] Fix unwind mismatch stat computation.

Rebase onto D68553

Oct 6 2019, 7:36 AM · Restricted Project
aheejin added a child revision for D68553: [WebAssembly] Add memory intrinsics handling to mayThrow(): D68552: [WebAssembly] Fix unwind mismatch stat computation.
Oct 6 2019, 7:36 AM · Restricted Project
aheejin created D68553: [WebAssembly] Add memory intrinsics handling to mayThrow().
Oct 6 2019, 7:19 AM · Restricted Project
aheejin created D68552: [WebAssembly] Fix unwind mismatch stat computation.
Oct 6 2019, 7:19 AM · Restricted Project

Oct 1 2019

aheejin accepted D68254: [WebAssembly] Error when using wasm64 for ISel.
Oct 1 2019, 12:22 AM · Restricted Project

Sep 30 2019

aheejin committed rGe2bcab61009a: [WebAssembly] Make sure EH pads are preferred in sorting (authored by aheejin).
[WebAssembly] Make sure EH pads are preferred in sorting
Sep 30 2019, 11:53 PM
aheejin committed rL373302: [WebAssembly] Make sure EH pads are preferred in sorting.
[WebAssembly] Make sure EH pads are preferred in sorting
Sep 30 2019, 11:52 PM
aheejin closed D68229: [WebAssembly] Make sure EH pads are preferred in sorting.
Sep 30 2019, 11:52 PM · Restricted Project
aheejin committed rG61d5c76a1813: [WebAssembly] Unstackify regs after fixing unwinding mismatches (authored by aheejin).
[WebAssembly] Unstackify regs after fixing unwinding mismatches
Sep 30 2019, 11:21 PM
aheejin committed rL373301: [WebAssembly] Unstackify regs after fixing unwinding mismatches.
[WebAssembly] Unstackify regs after fixing unwinding mismatches
Sep 30 2019, 11:20 PM
aheejin closed D68218: [WebAssembly] Unstackify regs after fixing unwinding mismatches.
Sep 30 2019, 11:20 PM · Restricted Project
aheejin updated the diff for D68218: [WebAssembly] Unstackify regs after fixing unwinding mismatches.
  • Address comments
Sep 30 2019, 11:18 PM · Restricted Project
aheejin added a parent revision for D68229: [WebAssembly] Make sure EH pads are preferred in sorting: D68218: [WebAssembly] Unstackify regs after fixing unwinding mismatches.
Sep 30 2019, 9:07 AM · Restricted Project
aheejin added a child revision for D68218: [WebAssembly] Unstackify regs after fixing unwinding mismatches: D68229: [WebAssembly] Make sure EH pads are preferred in sorting.
Sep 30 2019, 9:07 AM · Restricted Project
aheejin created D68229: [WebAssembly] Make sure EH pads are preferred in sorting.
Sep 30 2019, 9:07 AM · Restricted Project
aheejin created D68218: [WebAssembly] Unstackify regs after fixing unwinding mismatches.
Sep 30 2019, 6:41 AM · Restricted Project

Sep 26 2019

aheejin accepted D68113: [WebAssembly] v128.andnot.
Sep 26 2019, 6:43 PM · Restricted Project
aheejin accepted D68058: [WebAssembly] SIMD Load and extend operations.
Sep 26 2019, 6:20 PM · Restricted Project
aheejin added inline comments to D68058: [WebAssembly] SIMD Load and extend operations.
Sep 26 2019, 6:11 AM · Restricted Project

Sep 23 2019

aheejin accepted D67930: [WebAssembly][NFC] Remove duplicate SIMD instructions and predicates.
Sep 23 2019, 5:09 PM · Restricted Project
aheejin accepted D67784: [WebAssembly] vNxM.load_splat instructions.

Mostly LGTM. By the way this contains diff of D67783 as well.

Sep 23 2019, 8:31 AM · Restricted Project
aheejin added inline comments to D67783: [WebAssembly] Remove unused memory instructions and patterns.
Sep 23 2019, 7:10 AM · Restricted Project

Sep 21 2019

aheejin added inline comments to D67783: [WebAssembly] Remove unused memory instructions and patterns.
Sep 21 2019, 7:53 AM · Restricted Project
aheejin accepted D67783: [WebAssembly] Remove unused memory instructions and patterns.

LGTM as long as they are not used, but I'd like to check with @sunfish to be sure as well.

Sep 21 2019, 12:27 AM · Restricted Project

Sep 18 2019

aheejin added a comment to D67739: [WebAssembly] Let users know that wasm64 does not exist.

+1 on erroring out on the backend side. And how about "wasm64 is not supported"? wasm64... is still a registered target in the frontend, so...

Sep 18 2019, 11:04 PM · Restricted Project

Sep 16 2019

aheejin accepted D67639: [WebAssembly] Restore defaults for stores per memop.

What are the default values for those if we unset them?

Sep 16 2019, 5:23 PM · Restricted Project

Sep 15 2019

aheejin added inline comments to D67368: [NFCI]Create CommonAttributeInfo Type as base type of *Attr and ParsedAttr..
Sep 15 2019, 1:40 AM · Restricted Project

Sep 12 2019

aheejin accepted D67425: [WebAssembly] Narrowing and widening SIMD ops.

LGTM.

  • Maybe we can lower these to these new instructions later? (I'm not very sure what the difference between versions with and without VECTOR, because the versions without VECTOR seem to be able to take vector arguments as well.)
  • Will this simplify the complicated lowering of SIGN_EXTEND_INREG?
Sep 12 2019, 6:16 PM · Restricted Project, Restricted Project

Sep 11 2019

aheejin committed rG75f65fe8d316: [WebAssembly] Delete duplicate REQUIRES line (authored by aheejin).
[WebAssembly] Delete duplicate REQUIRES line
Sep 11 2019, 11:57 PM
aheejin committed rL371712: [WebAssembly] Delete duplicate REQUIRES line.
[WebAssembly] Delete duplicate REQUIRES line
Sep 11 2019, 11:57 PM
aheejin committed rGc4712fda7c6c: [WebAssembly] Make wasm-eh.cpp requires WebAssembly (authored by aheejin).
[WebAssembly] Make wasm-eh.cpp requires WebAssembly
Sep 11 2019, 11:52 PM
aheejin committed rL371711: [WebAssembly] Make wasm-eh.cpp requires WebAssembly.
[WebAssembly] Make wasm-eh.cpp requires WebAssembly
Sep 11 2019, 11:52 PM
aheejin committed rGe8b2b8868d21: [WebAssembly] Add -fwasm-exceptions for wasm EH (authored by aheejin).
[WebAssembly] Add -fwasm-exceptions for wasm EH
Sep 11 2019, 9:02 PM
aheejin committed rL371708: [WebAssembly] Add -fwasm-exceptions for wasm EH.
[WebAssembly] Add -fwasm-exceptions for wasm EH
Sep 11 2019, 9:01 PM
aheejin closed D67208: [WebAssembly] Add -fwasm-exceptions for wasm EH.
Sep 11 2019, 9:01 PM · Restricted Project, Restricted Project
aheejin committed rG4f0245fd98bc: [clang-tidy] Fix build with -DBUILD_SHARED_LIB=ON (authored by aheejin).
[clang-tidy] Fix build with -DBUILD_SHARED_LIB=ON
Sep 11 2019, 8:11 PM