Page MenuHomePhabricator

wangleiat (Ray Wang)
User

Projects

User does not belong to any projects.

User Details

User Since
Dec 14 2021, 1:56 AM (35 w, 2 d)

Recent Activity

Today

wangleiat requested review of D132119: [MC][LoongArch] Make .reloc support arbitrary relocation types.
Thu, Aug 18, 2:39 AM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D132108: [LoongArch] Add some fixups and relocations.

test case change larch to loongarch

Thu, Aug 18, 2:34 AM · Restricted Project, Unknown Object (Project)
wangleiat updated the diff for D132108: [LoongArch] Add some fixups and relocations.

Address @xen0n's comment.

Thu, Aug 18, 2:30 AM · Restricted Project, Unknown Object (Project)
wangleiat requested review of D132108: [LoongArch] Add some fixups and relocations.
Thu, Aug 18, 12:34 AM · Restricted Project, Unknown Object (Project)

Yesterday

wangleiat added inline comments to D132012: [LoongArch] Add support for llvm.eh.dwarf.cfa.
Wed, Aug 17, 12:51 AM · Unknown Object (Project), Restricted Project

Tue, Aug 9

wangleiat requested review of D131491: [LoongArch] Override TargetLowering::isOffsetFoldingLegal().
Tue, Aug 9, 6:06 AM · Unknown Object (Project), Restricted Project

Mon, Aug 8

wangleiat added inline comments to D131380: [LoongArch] Support register-register-addressed GPR loads/stores.
Mon, Aug 8, 2:42 AM · Restricted Project, Unknown Object (Project)

Sun, Aug 7

wangleiat updated the diff for D131316: [LoongArch] Implement branch analysis.

Address @barannikov88's comments.

Sun, Aug 7, 11:22 PM · Unknown Object (Project), Restricted Project
wangleiat added a comment to D131316: [LoongArch] Implement branch analysis.

Just passed by, you can ignore my comments.

Sun, Aug 7, 11:16 PM · Unknown Object (Project), Restricted Project

Sat, Aug 6

wangleiat requested review of D131316: [LoongArch] Implement branch analysis.
Sat, Aug 6, 1:41 AM · Unknown Object (Project), Restricted Project

Thu, Aug 4

wangleiat added inline comments to D130250: [LoongArch] Support for varargs.
Thu, Aug 4, 8:06 PM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D130250: [LoongArch] Support for varargs.

Typo fix.

Thu, Aug 4, 8:05 PM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D130249: [LoongArch] Implement more of the ABI.

Address @xen0n's comment, Thanks.

Thu, Aug 4, 8:03 PM · Unknown Object (Project), Restricted Project

Sun, Jul 31

wangleiat retitled D130249: [LoongArch] Implement more of the ABI from [LoongArch] Improve the calling convention to [LoongArch] Implement more of the ABI.
Sun, Jul 31, 11:59 PM · Unknown Object (Project), Restricted Project
wangleiat added a comment to D130250: [LoongArch] Support for varargs.

The test cases seem sane enough (after some hard thought). Anyway let's wait for someone more professional than me to take a look ;-)

Sun, Jul 31, 11:57 PM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D130250: [LoongArch] Support for varargs.

Address @xen0n's comments.

Sun, Jul 31, 11:56 PM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D130249: [LoongArch] Implement more of the ABI.

Address @xen0n's comments.

Sun, Jul 31, 11:49 PM · Unknown Object (Project), Restricted Project
wangleiat added a comment to D130249: [LoongArch] Implement more of the ABI.

Thank you very much for your comments and I will revise these.

Sun, Jul 31, 11:47 PM · Unknown Object (Project), Restricted Project
wangleiat added a comment to D130250: [LoongArch] Support for varargs.

polite ping

Sun, Jul 31, 9:02 PM · Unknown Object (Project), Restricted Project
wangleiat added a comment to D130249: [LoongArch] Implement more of the ABI.

polite ping

Sun, Jul 31, 9:02 PM · Unknown Object (Project), Restricted Project

Mon, Jul 25

wangleiat updated the diff for D130250: [LoongArch] Support for varargs.

rebase

Mon, Jul 25, 6:01 AM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D130249: [LoongArch] Implement more of the ABI.

rebase

Mon, Jul 25, 6:00 AM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D130248: [LoongArch] Offset folding for frameindex.

Address @barannikov88's comment.

Mon, Jul 25, 6:00 AM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D130247: [LoongArch] Refactor insertDivByZeroTrap.

Address @MaskRay's comments.

Mon, Jul 25, 5:45 AM · Restricted Project, Unknown Object (Project)
wangleiat added a comment to D130248: [LoongArch] Offset folding for frameindex.

Do you know why csky/hexagon need isOrEquivalentToAdd while other targets can produce efficient code without isOrEquivalentToAdd ?

Other targets just do that manually in *ISelDAGToDAG.cpp file. E.g. X86:

case ISD::OR:
  // We want to look through a transform in InstCombine and DAGCombiner that
  // turns 'add' into 'or', so we can treat this 'or' exactly like an 'add'.
  // Example: (or (and x, 1), (shl y, 3)) --> (add (and x, 1), (shl y, 3))
  // An 'lea' can then be used to match the shift (multiply) and add:
  // and $1, %esi
  // lea (%rsi, %rdi, 8), %rax
  if (CurDAG->haveNoCommonBitsSet(N.getOperand(0), N.getOperand(1)) &&
      !matchAdd(N, AM, Depth))
    return false;
  break;

ARM:

// Determine whether an ISD::OR's operands are suitable to turn the operation
// into an addition, which often has more compact encodings.
bool ARMDAGToDAGISel::SelectAddLikeOr(SDNode *Parent, SDValue N, SDValue &Out) {
  assert(Parent->getOpcode() == ISD::OR && "unexpected parent");
  Out = N;
  return CurDAG->haveNoCommonBitsSet(N, Parent->getOperand(1));
}
Mon, Jul 25, 5:37 AM · Unknown Object (Project), Restricted Project
wangleiat added a comment to D130247: [LoongArch] Refactor insertDivByZeroTrap.

Ensure non-terminators don't follow terminators.

Ensure the non-terminator BREAK doesn't follow the terminator BNEZ.

Mon, Jul 25, 5:34 AM · Restricted Project, Unknown Object (Project)

Thu, Jul 21

wangleiat accepted D129977: [LoongArch] Support load/store of dso_local PIC global values.

Thanks!

load-store.ll has UB due to out-of-bounds load/store. Fix the UB in the variable
test and add an array test. Note: PIC array index is currently wrong.

Spelling mistakes? Is NONPIC?

I pick NOPIC because -fno-pic is usually used to refer the position-dependent codegen. NOPIC should be fine.

The wrong array index is due to constant folding with GlobalAddress when isDSOLocal().
The interface function of the common layer is TargetLowering::isOffsetFoldingLegal.

Thanks!

Thu, Jul 21, 7:30 PM · Unknown Object (Project), Restricted Project
wangleiat requested review of D130250: [LoongArch] Support for varargs.
Thu, Jul 21, 4:43 AM · Unknown Object (Project), Restricted Project
wangleiat requested review of D130249: [LoongArch] Implement more of the ABI.
Thu, Jul 21, 4:40 AM · Unknown Object (Project), Restricted Project
wangleiat requested review of D130248: [LoongArch] Offset folding for frameindex.
Thu, Jul 21, 4:25 AM · Unknown Object (Project), Restricted Project
wangleiat requested review of D130247: [LoongArch] Refactor insertDivByZeroTrap.
Thu, Jul 21, 4:23 AM · Restricted Project, Unknown Object (Project)

Jul 17 2022

wangleiat added a comment to D129977: [LoongArch] Support load/store of dso_local PIC global values.

Thanks!

load-store.ll has UB due to out-of-bounds load/store. Fix the UB in the variable
test and add an array test. Note: PIC array index is currently wrong.

Spelling mistakes? Is NONPIC?

I pick NOPIC because -fno-pic is usually used to refer the position-dependent codegen. NOPIC should be fine.

Jul 17 2022, 11:06 PM · Unknown Object (Project), Restricted Project
wangleiat added a comment to D129977: [LoongArch] Support load/store of dso_local PIC global values.

load-store.ll has UB due to out-of-bounds load/store. Fix the UB in the variable
test and add an array test. Note: PIC array index is currently wrong.

Jul 17 2022, 7:23 PM · Unknown Object (Project), Restricted Project

Jul 3 2022

wangleiat added inline comments to D128432: [LoongArch] Implement prologue/epilogue insertion.
Jul 3 2022, 8:34 PM · Restricted Project, Unknown Object (Project)
wangleiat updated the diff for D128432: [LoongArch] Implement prologue/epilogue insertion.

Add missing semicolon.

Jul 3 2022, 8:28 PM · Restricted Project, Unknown Object (Project)
wangleiat added inline comments to D128432: [LoongArch] Implement prologue/epilogue insertion.
Jul 3 2022, 6:20 PM · Restricted Project, Unknown Object (Project)
wangleiat updated the diff for D128433: [LoongArch] Add LoongArch support to update_llc_test_checks.

rebase

Jul 3 2022, 6:20 PM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D128432: [LoongArch] Implement prologue/epilogue insertion.

Address @xen0n's comments.

Jul 3 2022, 6:19 PM · Restricted Project, Unknown Object (Project)
wangleiat added inline comments to D128430: [LoongArch] Support lowering FrameIndex.
Jul 3 2022, 6:09 PM · Unknown Object (Project), Restricted Project

Jul 1 2022

wangleiat added inline comments to D128428: [LoongArch] Add codegen support for conditional branches.
Jul 1 2022, 8:53 PM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D128433: [LoongArch] Add LoongArch support to update_llc_test_checks.

Address @MaskRay's comments.

Jul 1 2022, 7:42 PM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D128432: [LoongArch] Implement prologue/epilogue insertion.

rebase

Jul 1 2022, 7:41 PM · Restricted Project, Unknown Object (Project)
wangleiat updated the diff for D128430: [LoongArch] Support lowering FrameIndex.

rebase

Jul 1 2022, 7:41 PM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D128429: [LoongArch] Add initial support for function calls.

Address @xen0n's comments.

Jul 1 2022, 7:38 PM · Unknown Object (Project), Restricted Project
wangleiat added inline comments to D128428: [LoongArch] Add codegen support for conditional branches.
Jul 1 2022, 7:14 PM · Unknown Object (Project), Restricted Project
wangleiat added a comment to D128427: [LoongArch] Add codegen support for load/store operations.

While I'm not very sure about the new pcalau12i + addi symbol address materialization, they look good regardless, so are the other test cases.

Do you think a test exercising very large offset for getelementptr is worthwhile? LGTM otherwise.

Jul 1 2022, 6:54 PM · Restricted Project, Unknown Object (Project)

Jun 30 2022

wangleiat added a comment to D128427: [LoongArch] Add codegen support for load/store operations.

PING
Do you have any comments on this series of patches?

Jun 30 2022, 2:47 AM · Restricted Project, Unknown Object (Project)

Jun 26 2022

wangleiat added inline comments to D128427: [LoongArch] Add codegen support for load/store operations.
Jun 26 2022, 8:50 PM · Restricted Project, Unknown Object (Project)
wangleiat updated the diff for D128433: [LoongArch] Add LoongArch support to update_llc_test_checks.

Update test to use opaque pointers

Jun 26 2022, 8:47 PM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D128432: [LoongArch] Implement prologue/epilogue insertion.

rebase

Jun 26 2022, 8:46 PM · Restricted Project, Unknown Object (Project)
wangleiat updated the diff for D128430: [LoongArch] Support lowering FrameIndex.

Update test to use opaque pointers

Jun 26 2022, 8:45 PM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D128429: [LoongArch] Add initial support for function calls.

Update test to use opaque pointers

Jun 26 2022, 8:44 PM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D128428: [LoongArch] Add codegen support for conditional branches.

Update tests to use opaque pointers

Jun 26 2022, 8:44 PM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D128427: [LoongArch] Add codegen support for load/store operations.

Update test to use opaque pointers

Jun 26 2022, 8:42 PM · Restricted Project, Unknown Object (Project)

Jun 23 2022

wangleiat added inline comments to D128427: [LoongArch] Add codegen support for load/store operations.
Jun 23 2022, 8:28 PM · Restricted Project, Unknown Object (Project)
wangleiat requested review of D128433: [LoongArch] Add LoongArch support to update_llc_test_checks.
Jun 23 2022, 5:19 AM · Unknown Object (Project), Restricted Project
wangleiat requested review of D128432: [LoongArch] Implement prologue/epilogue insertion.
Jun 23 2022, 5:18 AM · Restricted Project, Unknown Object (Project)
wangleiat requested review of D128430: [LoongArch] Support lowering FrameIndex.
Jun 23 2022, 5:14 AM · Unknown Object (Project), Restricted Project
wangleiat requested review of D128429: [LoongArch] Add initial support for function calls.
Jun 23 2022, 5:12 AM · Unknown Object (Project), Restricted Project
wangleiat requested review of D128428: [LoongArch] Add codegen support for conditional branches.
Jun 23 2022, 5:10 AM · Unknown Object (Project), Restricted Project
wangleiat requested review of D128427: [LoongArch] Add codegen support for load/store operations.
Jun 23 2022, 5:04 AM · Restricted Project, Unknown Object (Project)

Apr 14 2022

wangleiat added inline comments to D123290: [LoongArch] Add support for selecting constant materializations..
Apr 14 2022, 8:04 PM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D123290: [LoongArch] Add support for selecting constant materializations..

Reduce the test cases and simply cover all the code paths in generateInstSeq

Apr 14 2022, 8:03 PM · Unknown Object (Project), Restricted Project
wangleiat requested review of D123290: [LoongArch] Add support for selecting constant materializations..

ping @MaskRay

Apr 14 2022, 4:36 AM · Unknown Object (Project), Restricted Project

Apr 7 2022

wangleiat updated the diff for D123290: [LoongArch] Add support for selecting constant materializations..

Add const modifiers.

Apr 7 2022, 7:12 PM · Unknown Object (Project), Restricted Project
wangleiat added inline comments to D123290: [LoongArch] Add support for selecting constant materializations..
Apr 7 2022, 7:06 PM · Unknown Object (Project), Restricted Project
wangleiat requested review of D123290: [LoongArch] Add support for selecting constant materializations..
Apr 7 2022, 1:43 AM · Unknown Object (Project), Restricted Project

Apr 2 2022

wangleiat requested review of D122970: [LoongArch] Fix instruction definition.
Apr 2 2022, 1:53 AM · Unknown Object (Project), Restricted Project

Mar 30 2022

wangleiat updated the diff for D122366: [LoongArch] Construct codegen infra and generate first add instruction..

modify the wrong macro name

Mar 30 2022, 2:49 AM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D122366: [LoongArch] Construct codegen infra and generate first add instruction..

Remove a useless ;

Mar 30 2022, 2:43 AM · Unknown Object (Project), Restricted Project

Mar 28 2022

wangleiat updated wangleiat.
Mar 28 2022, 4:02 AM
wangleiat updated wangleiat.
Mar 28 2022, 4:01 AM
wangleiat updated the diff for D122366: [LoongArch] Construct codegen infra and generate first add instruction..

Fix coding style issues.

Mar 28 2022, 3:50 AM · Unknown Object (Project), Restricted Project
wangleiat added inline comments to D122366: [LoongArch] Construct codegen infra and generate first add instruction..
Mar 28 2022, 3:24 AM · Unknown Object (Project), Restricted Project

Mar 24 2022

wangleiat abandoned D122365: [LoongArch] Add LoongArch support to update_llc_test_checks.

This needs tests in llvm/test/tools/UpdateTestChecks/update_llc_test_checks/

Mar 24 2022, 12:12 AM · Restricted Project, Unknown Object (Project)

Mar 23 2022

wangleiat updated the diff for D122366: [LoongArch] Construct codegen infra and generate first add instruction..

Delete useless comments.
Change 'check-prefixes' to check-prefix, because only one check-prefix is needed in the current test.

Mar 23 2022, 6:58 PM · Unknown Object (Project), Restricted Project
wangleiat updated subscribers of D122366: [LoongArch] Construct codegen infra and generate first add instruction..
Mar 23 2022, 6:42 PM · Unknown Object (Project), Restricted Project
wangleiat added reviewers for D122366: [LoongArch] Construct codegen infra and generate first add instruction.: MaskRay, xen0n, rengolin, SixWeining, myhsu.
Mar 23 2022, 6:41 PM · Unknown Object (Project), Restricted Project
wangleiat requested review of D122366: [LoongArch] Construct codegen infra and generate first add instruction..
Mar 23 2022, 6:36 PM · Unknown Object (Project), Restricted Project
wangleiat updated the diff for D122365: [LoongArch] Add LoongArch support to update_llc_test_checks.

Remove unused 'Change-ID'

Mar 23 2022, 6:26 PM · Restricted Project, Unknown Object (Project)
wangleiat requested review of D122365: [LoongArch] Add LoongArch support to update_llc_test_checks.
Mar 23 2022, 6:19 PM · Restricted Project, Unknown Object (Project)

Mar 4 2022

wangleiat removed a watcher for lld: wangleiat.
Mar 4 2022, 5:24 PM

Feb 28 2022

wangleiat added a watcher for lld: wangleiat.
Feb 28 2022, 4:47 AM