Page MenuHomePhabricator

nemanjai (Nemanja Ivanovic)
User

Projects

User does not belong to any projects.

User Details

User Since
Jan 23 2015, 9:38 AM (388 w, 5 d)

Recent Activity

Yesterday

nemanjai added a comment to D77558: PowerPC: Don't hoist float multiply + add to fused operation on SPE.

I think this is the right thing to do regardless of whether it affects CTR loops or not. The FMA is never faster with SPE and that should be marked as such. But yes, we still need a test case.

Wed, Jul 6, 1:43 PM · Restricted Project, Restricted Project

Tue, Jul 5

nemanjai requested changes to D129016: [PowerPC] implemented @llvm.ppc.kill.canary to corrupt stack guard.

Please run clang-format, rebase and re-upload. It doesn't apply cleanly to ToT.

Tue, Jul 5, 12:08 PM · Restricted Project, Restricted Project, Restricted Project
nemanjai accepted D128421: [PowerPC] PPCTLSDynamicCall does not preserve LiveIntervals.

LGTM. Thanks for fixing this.

Tue, Jul 5, 12:00 PM · Restricted Project, Restricted Project

Mon, Jul 4

nemanjai added a comment to D40554: [PowerPC] Fix bugs in sign-/zero-extension elimination.

As tends to be the case with huge patches such as this, it is difficult to get this patch to converge and it still needs a bit of work. But I think it is pretty close overall.

Mon, Jul 4, 3:02 PM · Restricted Project, Restricted Project

Fri, Jul 1

nemanjai added inline comments to D127530: [PowerPC] Extend GlobalISel implementation to emit and/or/xor..
Fri, Jul 1, 1:20 AM · Restricted Project, Restricted Project

Wed, Jun 29

nemanjai requested changes to D128652: [PowerPC] Finished kill_canary implementation and debugging.
Wed, Jun 29, 1:58 AM · Restricted Project, Restricted Project, Restricted Project
nemanjai added a comment to D128652: [PowerPC] Finished kill_canary implementation and debugging.

"Made a new phabricator review because of git issues" is not an appropriate description of a review/revision.

Wed, Jun 29, 1:58 AM · Restricted Project, Restricted Project, Restricted Project
nemanjai added a comment to D127189: [clang][AIX] Add option to control quadword lock free atomics ABI on AIX.

I am ok with this change overall, I just have a couple of questions about naming of the option.

Wed, Jun 29, 1:04 AM · Restricted Project, Restricted Project

Tue, Jun 28

nemanjai added a comment to D128421: [PowerPC] PPCTLSDynamicCall does not preserve LiveIntervals.

Is it possible to add a testcase that fails to verify or otherwise shows that a live range is computed incorrectly?

Tue, Jun 28, 7:34 AM · Restricted Project, Restricted Project
nemanjai accepted D128703: [PowerPC] Improve getNormalLoadInput to reach more splat load opportunities.

Ah, this is a good point. I guess we didn't consider that we may have a bitcast of a bitcast. Thanks for fixing this. LGTM.

Tue, Jun 28, 4:31 AM · Restricted Project, Restricted Project

Fri, Jun 24

nemanjai added inline comments to D127554: [PowerPC] Allow llvm.ppc.cfence to accept pointer types.
Fri, Jun 24, 1:12 AM · Restricted Project, Restricted Project

Fri, Jun 17

nemanjai accepted D128062: [PowerPC] Fix PPCVSXSwapRemoval pass to include MTVSCR and MFVSCR as not swappable..

LGTM. Thanks for fixing this.

Fri, Jun 17, 7:51 AM · Restricted Project, Restricted Project

Thu, Jun 16

nemanjai accepted D124093: [PowerPC] Fixing implicit castings in altivec for -fno-lax-vector-conversions.

LGTM. Thanks.

Thu, Jun 16, 2:29 PM · Restricted Project, Restricted Project, Restricted Project
nemanjai added inline comments to D126540: PowerPC] Emit warning for incompatible vector types that are currently diagnosed with -fno-lax-vector-conversions.
Thu, Jun 16, 2:25 PM · Restricted Project, Restricted Project
nemanjai added inline comments to D124093: [PowerPC] Fixing implicit castings in altivec for -fno-lax-vector-conversions.
Thu, Jun 16, 9:35 AM · Restricted Project, Restricted Project, Restricted Project
nemanjai accepted D126807: [PowerPC] Fix LQ-STQ instructions to use correct offset and base.

LGTM. Thanks for the fix and all the updates.

Thu, Jun 16, 7:56 AM · Restricted Project, Restricted Project

Wed, Jun 15

nemanjai added inline comments to D126807: [PowerPC] Fix LQ-STQ instructions to use correct offset and base.
Wed, Jun 15, 4:56 PM · Restricted Project, Restricted Project
nemanjai accepted D127818: [PowerPC] Skip combine for vector_shuffles when two scalar_to_vector nodes are different vector types..

LGTM. Thanks for the fix.

Wed, Jun 15, 10:14 AM · Restricted Project, Restricted Project, Restricted Project

Tue, Jun 14

nemanjai requested changes to D126807: [PowerPC] Fix LQ-STQ instructions to use correct offset and base.

If this IR is compiled with -mattr=+quadword-atomics, we emit #STQX_PSEUDO which is definitely not what we want:

%struct.StructA = type { [16 x i8] }
Tue, Jun 14, 5:42 PM · Restricted Project, Restricted Project
nemanjai added inline comments to D126807: [PowerPC] Fix LQ-STQ instructions to use correct offset and base.
Tue, Jun 14, 5:05 PM · Restricted Project, Restricted Project
nemanjai added inline comments to D126807: [PowerPC] Fix LQ-STQ instructions to use correct offset and base.
Tue, Jun 14, 4:55 PM · Restricted Project, Restricted Project
nemanjai added inline comments to D126807: [PowerPC] Fix LQ-STQ instructions to use correct offset and base.
Tue, Jun 14, 4:40 PM · Restricted Project, Restricted Project
nemanjai added inline comments to D127439: [PowerPC] Fix combine step for shufflevector..
Tue, Jun 14, 7:28 AM · Restricted Project, Restricted Project

Wed, Jun 8

nemanjai added a comment to D127364: [MSAN] mark test as unsupported for powerpc..
Wed, Jun 8, 7:04 PM · Restricted Project, Restricted Project
nemanjai added a comment to D127310: [clang][driver] fix to correctly set devtoolset on RHEL.

Do you have more authoritative answer when /root/usr is used and when it isn't?

These suffixes were always part of the code and the mentioned changeset removed it without any justification. The burden of providing this answer should lie with the author of the change that removed this (i.e. @tbaeder). Here at IBM, we are not aware of any Redhat release that does not have this suffix. Namely, all of our RH PowerPC machines with all the toolset versions and distro versions we have available have the suffix. So we are ill equipped to answer this question. I assume that Timm is aware of situations where this isn't part of the path.

Wed, Jun 8, 6:46 PM · Restricted Project, Restricted Project
nemanjai updated subscribers of D125862: [clang][driver] Add gcc-toolset/devtoolset 12 to prefixes.

The original toolchain detection added root/usr to the paths which was certainly necessary on PowerPC. Since that suffix is removed in this patch, our Redhat buildbot is now broken (https://lab.llvm.org/buildbot/#/builders/57/builds/18577). @quinnp has posted an update to this at https://reviews.llvm.org/D127310.

Wed, Jun 8, 8:17 AM · Restricted Project, Restricted Project
nemanjai added inline comments to D127310: [clang][driver] fix to correctly set devtoolset on RHEL.
Wed, Jun 8, 8:13 AM · Restricted Project, Restricted Project

Tue, Jun 7

nemanjai requested review of D127218: [PowerPC] Disable automatic generation of STXVP.
Tue, Jun 7, 7:55 AM · Restricted Project, Restricted Project
nemanjai abandoned D41029: [JumpTables][PowerPC] Let targets decide which switch instructions are suitable for jump tables.

This was never committed because it turned out not to be beneficial. Abandoning.

Tue, Jun 7, 7:26 AM · Restricted Project

Jun 6 2022

nemanjai added inline comments to D126483: [AMDGPU] gfx11 vop3dpp instructions.
Jun 6 2022, 2:46 PM · Restricted Project, Restricted Project

Jun 2 2022

nemanjai accepted D107886: [PowerPC] Support huge frame size for PPC64.

LGTM.

Jun 2 2022, 7:36 PM · Restricted Project, Restricted Project

Jun 1 2022

nemanjai requested changes to D126807: [PowerPC] Fix LQ-STQ instructions to use correct offset and base.

In any case, this works if the offset fits but not if it doesn't. So we're just kicking the can down the road a little bit. We need to add the X-Form pseudo to the ImmToIdxMap and expand it at the appropriate time.

Jun 1 2022, 5:56 PM · Restricted Project, Restricted Project
nemanjai added a comment to D126807: [PowerPC] Fix LQ-STQ instructions to use correct offset and base.

I think the root cause here is lq/stq is lacking x-form. There are LQX_PSEUDO and STQX_PSEUDO defined to assist accessing big offset inside stack/heap, but they are expanded pre-RA. I think we should expand them in PPCAtomicExpandPass(which is after prologepilog) and make lq/stq's x-form mapping to LQX_PSEUDO/STQX_PSEUDO.

Jun 1 2022, 5:40 PM · Restricted Project, Restricted Project

May 31 2022

nemanjai committed rG101396743669: [PowerPC] Remove const from paired vector store builtins (authored by nemanjai).
[PowerPC] Remove const from paired vector store builtins
May 31 2022, 7:51 PM · Restricted Project, Restricted Project

May 25 2022

nemanjai added a comment to D124607: Add an error message to the default SIGPIPE handler.

FWIW, this test fails exactly the same way on my MacBook if I use llvm-nm on llvm-config which produces shorter output (although it is successful in its current form). So this seems to be completely pervasive and not at all restricted to PowerPC (or even Linux).

May 25 2022, 8:18 AM · Restricted Project, Restricted Project
nemanjai added a comment to D124607: Add an error message to the default SIGPIPE handler.

Both llvm-symbolizer and llvm-cxxfilt, if called without positional arguments, are run interactively, essentially taking a line of input then writing some output before waiting for more input. This would allow you to force output to be written (by writing to stdin) after the pipe has been closed. Maybe that'll solve the issue, although I'm not sure I understand why the python script doesn't work in its current form: llvm-nm should try to write many bytes of output (> 1 byte), but the pipe is closed after the very first byte is written. Before going and changing the script, I'd like to understand whether this statement is actually true, and if so, why:

That does not appear to be enough. You can either run a tool that runs longer or run llvm-nm with something that produces more output.

May 25 2022, 2:32 AM · Restricted Project, Restricted Project

May 24 2022

nemanjai edited reviewers for D126302: [PowerPC] Diagnose invalid combination with Altivec, VSX and soft-float, added: ltertan; removed: Laurentiu.
May 24 2022, 4:39 PM · Restricted Project, Restricted Project
nemanjai added a comment to D126205: [PowerPC] use BL without nop for some internal calls for fast-isel..

The more analysis we do in FastISel, the less "fast" it becomes. And the tradeoff here is simply a nop after a call which hardly seems like a concern at -O0.

May 24 2022, 4:35 PM · Restricted Project, Restricted Project
nemanjai added a comment to D126203: [PowerPC] make callsShareTOCBase be a member function. NFC.

This seems like a rather invasive refactoring for removing a nop at -O0. I am not particularly in favour of this. Not only is a nop essentially trivial when it comes to performance (and even code size), but this is restricted to unoptimized code gen for which it isn't really reasonable to expect performant code.

May 24 2022, 4:34 PM · Restricted Project, Restricted Project
nemanjai added a comment to D124607: Add an error message to the default SIGPIPE handler.

@t.p.northover made the commit, but it broke clang-ppc64le-linux-multistage buildbot, so it's been reverted.
In the test the input to FileCheck was empty, so maybe the signal handler didn't trigger for some reason.

The test does work on x86 Linux and macOS, so I've tried a ppc64le VM running CentOS 8.
The VM is too slow to compile the entire llvm, but I've tested a simple program with a SIGPIPE signal handler, the same python script and that worked as expected.
So the failure seems to be specific to RHEL or the buildbot environment. Maybe someone from #powerpc can help test this?

May 24 2022, 4:12 PM · Restricted Project, Restricted Project
nemanjai requested review of D126302: [PowerPC] Diagnose invalid combination with Altivec, VSX and soft-float.
May 24 2022, 7:24 AM · Restricted Project, Restricted Project

May 18 2022

nemanjai added a comment to D125846: [StackProtector] Allow targets to specify an instruction is part of terminator sequence.

Why can't you just mark these instructions as being terminators? AMDGPU has to glue a lot of ALU instructions to terminators, and we just define terminator and nonterminator pseudo variants

This seems like a less desirable path. Marking what is inherently a non-terminator instruction as a terminator seems likely to cause problems. I don't have a specific case in mind, but perhaps if some pass makes the assumption that it is safe to split a basic block into two that terminate with two terminators. It might be a safe thing to do except if some terminator is not actually a terminator.

May 18 2022, 7:15 PM · Restricted Project, Restricted Project
nemanjai added a comment to D125846: [StackProtector] Allow targets to specify an instruction is part of terminator sequence.

Why can't you just mark these instructions as being terminators? AMDGPU has to glue a lot of ALU instructions to terminators, and we just define terminator and nonterminator pseudo variants

May 18 2022, 6:42 PM · Restricted Project, Restricted Project
nemanjai committed rG03ba8c83dd42: [Debuginfod] Fix shared libs build break after eafa0530417e (authored by nemanjai).
[Debuginfod] Fix shared libs build break after eafa0530417e
May 18 2022, 3:33 PM · Restricted Project, Restricted Project
nemanjai added a comment to D125846: [StackProtector] Allow targets to specify an instruction is part of terminator sequence.

Can the test be reduced? Do you really need a main()?

May 18 2022, 3:12 PM · Restricted Project, Restricted Project

May 17 2022

nemanjai requested review of D125846: [StackProtector] Allow targets to specify an instruction is part of terminator sequence.
May 17 2022, 7:25 PM · Restricted Project, Restricted Project

May 10 2022

nemanjai accepted D125203: [PowerPC] Fix PPCISD::STBRX selection issue on A2.

Why not also fix this in the front end so that we allow the builtin on the A2 CPU as well (since it's supported)?

Oh I missed that. Thank you for pointing out!

Just now updated the patch. However I didn't update the SemaFeatureCheck message to indicate the support on a2, since if people see this error message, it cannot be a2, and a2 does not easily fit into the message of err_ppc_builtin_only_on_arch. Hope this will not create problem.

May 10 2022, 7:44 AM · Restricted Project, Restricted Project, Restricted Project

May 9 2022

nemanjai added a comment to D125203: [PowerPC] Fix PPCISD::STBRX selection issue on A2.

Why not also fix this in the front end so that we allow the builtin on the A2 CPU as well (since it's supported)?

May 9 2022, 6:49 PM · Restricted Project, Restricted Project, Restricted Project
nemanjai added a comment to D125203: [PowerPC] Fix PPCISD::STBRX selection issue on A2.

The troubled instruction was introduced for both P7 and A2 as below link shows:
https://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20130325/169706.html

This link has been invalid.

May 9 2022, 6:44 PM · Restricted Project, Restricted Project, Restricted Project
nemanjai added a comment to D124841: [PowerPC] Stash GPR to VSR if emergency spill slot is not reachable.

...

Are you saying that even though we have a frame pointer, it's impossible to allocate a stack slot close to the frame pointer? That seems unlikely to me; normal stack layout rules should allow allocating as much space as we need close to the frame pointer. Depending on how the stack is laid out, I guess it's possible that normal spill slots are never close enough to the frame pointer. But if we really need it, we could allocate the emergency spill slot next to the callee-saved registers. (This currently isn't implemented, but shouldn't be complicated.)

May 9 2022, 2:01 AM · Restricted Project, Restricted Project

May 8 2022

nemanjai added inline comments to D123143: SelectionDAG: Swap operands of atomic_store.
May 8 2022, 8:50 AM · Restricted Project, Restricted Project
nemanjai added a comment to D123801: [DAG][PowerPC] Combine shuffle(bitcast(X), Mask) to bitcast(shuffle(X, Mask')).

I am sorry that I didn't get to this within a more reasonable time. This LGTM for PPC and thanks for the patch.

May 8 2022, 8:16 AM · Restricted Project, Restricted Project
nemanjai added a comment to D123394: [CodeGen] Late cleanup of redundant address/immediate definitions..

This is fine from a PPC perspective. What would make more of an impact would be the ability to common partial immediate materializations such as happen in prologue/epilogue when a stack frame is very large. Perhaps this can be extended to do that in the future. It would eliminate things like:

lis 11, 16
ori 11, 11, 256 
stxvx 53, 31, 11                        # 16-byte Folded Spill
lis 11, 16
ori 11, 11, 272 
stxvx 54, 31, 11                        # 16-byte Folded Spill
lis 11, 16
ori 11, 11, 288 
stxvx 55, 31, 11                        # 16-byte Folded Spill
lis 11, 16
ori 11, 11, 304 
stxvx 56, 31, 11                        # 16-byte Folded Spill

Of course, that would involve changing the subsequent ori instructions to addi and would likely be very PPC-specific. I just bring it up here in case SystemZ has the same issue.

May 8 2022, 8:08 AM · Restricted Project, Restricted Project

May 7 2022

nemanjai added a comment to D124841: [PowerPC] Stash GPR to VSR if emergency spill slot is not reachable.

If such an emergency spill also needs to be spilled to a location with a large offset

This shouldn't happen; the emergency spill slot should be placed in a location with a small offset from the frame/stack pointer.

If it's impossible to allocate an emergency spill slot close to the stack pointer, I think we should force a frame pointer, and the emergency spill slot should be allocated close to that. See, for example, AArch64FrameLowering::hasFP().

May 7 2022, 8:13 PM · Restricted Project, Restricted Project

May 3 2022

nemanjai requested review of D124841: [PowerPC] Stash GPR to VSR if emergency spill slot is not reachable.
May 3 2022, 4:27 AM · Restricted Project, Restricted Project

May 2 2022

nemanjai added a comment to rGb26e44e623c7: [NFC] Fixing error on some versions of GCC.

Thank you for fixing this!

May 2 2022, 3:03 PM · Restricted Project, Restricted Project
nemanjai added a comment to D124643: [Object][DX] Initial DXContainer parsing support.
May 2 2022, 2:38 PM · Restricted Project, Restricted Project

Apr 28 2022

nemanjai added inline comments to D122783: [PowerPC] Mark side effects of Power9 darn instruction.
Apr 28 2022, 6:21 PM · Restricted Project, Restricted Project

Apr 27 2022

nemanjai added inline comments to D124060: [PowerPC] Enable CR bits support for Power8 and above..
Apr 27 2022, 7:23 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
nemanjai added inline comments to D124060: [PowerPC] Enable CR bits support for Power8 and above..
Apr 27 2022, 2:42 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project

Apr 26 2022

nemanjai accepted D124423: [flang] Get ppc64le build bot back up.

LGTM. Thanks for the fix.

Apr 26 2022, 9:04 AM · Restricted Project, Restricted Project
nemanjai added a comment to D124423: [flang] Get ppc64le build bot back up.

This can go in as it is. Both Clang and GCC define this macro on PPC. However, it will mean that we don't define these even for compilations with -mabi=ieeelongdouble and -mlong-double-64. If it matters that this works when long double means IEEE 754-R Quad Precision or simply double precision, you could guard it with something like the following

#if defined(__PPC__) && defined(__LONG_DOUBLE_128__) && !defined(__LONG_DOUBLE_IEEE128__)
Apr 26 2022, 7:20 AM · Restricted Project, Restricted Project

Apr 25 2022

nemanjai added a comment to D124167: [flang] Fold transformational bessels when host runtime has bessels.

@jeanPerier I think a buildbot is failing possibly due to this patch. Could you have a look?
https://lab.llvm.org/buildbot/#/builders/21/builds/39420/steps/5/logs/stdio

@jeanPerier Do you have a fix for this issue yet? If we don't get a fix before the end of the day, I'll have to revert this patch.

When is "the end of the day" for you? I might be able to patch this, given some time.

Apr 25 2022, 1:08 PM · Restricted Project, Restricted Project
nemanjai added a comment to D124167: [flang] Fold transformational bessels when host runtime has bessels.

@jeanPerier I think a buildbot is failing possibly due to this patch. Could you have a look?
https://lab.llvm.org/buildbot/#/builders/21/builds/39420/steps/5/logs/stdio

Apr 25 2022, 11:37 AM · Restricted Project, Restricted Project

Apr 21 2022

nemanjai added a comment to D122983: [C11/C2x] Change the behavior of the implicit function declaration warning.

@daltenty Can you please run this with the same config as the bot on one of our AIX machines but be sure to pass -i if it's make or -k 0 if it's ninja?

That would be *awesome*! I have to take off for a few hours, but I'm happy to fix all of the issues you spot in one go when I get back in a bit. Thank you!

Apr 21 2022, 11:04 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
nemanjai added a comment to D122983: [C11/C2x] Change the behavior of the implicit function declaration warning.

@daltenty Can you please run this with the same config as the bot on one of our AIX machines but be sure to pass -i if it's make or -k 0 if it's ninja?

Apr 21 2022, 9:53 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
nemanjai added a comment to rG5819f4a42286: [InstCombine] C0 <<{nsw, nuw} (X - C1) --> (C0 >> C1) << X.

FWIW, this is the reduced test from the PPC bot failure:

; ModuleID = 'bugpoint-reduced-simplified.bc'
source_filename = "macroblock-e4628c.c"
target datalayout = "e-m:e-i64:64-n32:64-S128-v256:256:256-v512:512:512"
target triple = "powerpc64le-unknown-linux-gnu"
Apr 21 2022, 9:49 AM · Restricted Project, Restricted Project

Apr 20 2022

nemanjai requested changes to D124093: [PowerPC] Fixing implicit castings in altivec for -fno-lax-vector-conversions.

Also, please run clang-format on the changes.

Apr 20 2022, 6:43 PM · Restricted Project, Restricted Project, Restricted Project
nemanjai added a comment to D123997: [PowerPC] Bail out of FISel when lowering long calls.

@nemanjai ,thank you for quick fix and please checkout the unit test failed ?

Apr 20 2022, 6:39 PM · Restricted Project, Restricted Project
nemanjai added a comment to D122983: [C11/C2x] Change the behavior of the implicit function declaration warning.

But your link shows failures in compiler-rt/, not in llvm test-suite

Apr 20 2022, 6:36 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
nemanjai added a comment to D122983: [C11/C2x] Change the behavior of the implicit function declaration warning.

This is still causing failures when building test-suite:
https://lab.llvm.org/buildbot/#/builders/105/builds/24292

Apr 20 2022, 5:45 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project

Apr 19 2022

nemanjai added inline comments to D123386: [AArch64] Add lane moves to PerfectShuffle tables.
Apr 19 2022, 7:33 AM · Restricted Project, Restricted Project
nemanjai requested review of D123997: [PowerPC] Bail out of FISel when lowering long calls.
Apr 19 2022, 4:22 AM · Restricted Project, Restricted Project

Apr 18 2022

nemanjai closed D116867: [PowerPC] Fix sanitizers build on FreeBSD.

Committed in https://reviews.llvm.org/rG315d79213025

Apr 18 2022, 5:18 AM · Restricted Project, Restricted Project
nemanjai committed rG315d79213025: [PowerPC] Fix sanitizers build on FreeBSD (authored by pkubaj).
[PowerPC] Fix sanitizers build on FreeBSD
Apr 18 2022, 5:16 AM · Restricted Project, Restricted Project

Apr 13 2022

nemanjai added a comment to D116867: [PowerPC] Fix sanitizers build on FreeBSD.

@nemanjai
As mentioned by adalava, can you commit this patch?

Apr 13 2022, 4:27 PM · Restricted Project, Restricted Project
nemanjai added a comment to D67678: PR17164: Change clang's default behavior from -flax-vector-conversions=all to -flax-vector-conversions=integer..

@dexonsmith @arphaman What do we need to do to get this re-landed?

Apr 13 2022, 4:24 PM · Restricted Project, Restricted Project
nemanjai added a comment to D123663: [PPC][CodeGen][NFC] Use ArrayRef in TargetLowering functions.

While I certainly appreciate the work to refactor this behemoth of a function, I am about as lukewarm on how much of a readability improvement this is. If all the targets are being similarly refactored, I won't stand in the way of doing the same to PPC. So if you get the approval for the other targets, we'll go ahead with PPC as well.

Apr 13 2022, 4:17 PM · Restricted Project, Restricted Project
nemanjai requested review of D123691: [GTest] Change detection of libpthread.
Apr 13 2022, 10:11 AM · Restricted Project, Restricted Project, Restricted Project
nemanjai added a comment to D40554: [PowerPC] Fix bugs in sign-/zero-extension elimination.

Sorry, I had some comments that I haven't submitted because I had not gotten through the entire patch. I am not sure if they all still apply but thought I'd submit them before restarting the review.

Apr 13 2022, 7:57 AM · Restricted Project, Restricted Project

Apr 7 2022

nemanjai accepted D121637: [PowerPC] Fix EmitPPCBuiltinExpr to emit arguments once.

Please add a test case that would cause a failure prior to this patch due to the argument being emitted more than once (i.e. the test case that prompted this patch). If that is already added and I just missed it, please add a note to the test case along the lines of:

// The argument expression must not be emitted multiple times.
Apr 7 2022, 6:59 AM · Restricted Project, Restricted Project

Apr 6 2022

nemanjai accepted D116867: [PowerPC] Fix sanitizers build on FreeBSD.

I am not familiar with the FreeBSD-specific stuff, but there is nothing I see any issues with here.
LGTM.

Apr 6 2022, 11:25 AM · Restricted Project, Restricted Project

Mar 31 2022

nemanjai accepted D121430: [PowerPC] Fix lowering of byval parameters for sizes greater than 8 bytes..

LGTM.

Mar 31 2022, 10:51 AM · Restricted Project, Restricted Project

Mar 21 2022

nemanjai added a comment to D121430: [PowerPC] Fix lowering of byval parameters for sizes greater than 8 bytes..

Seems like we should look at the caller side as well since we might have a similar issue.

Mar 21 2022, 12:17 PM · Restricted Project, Restricted Project

Mar 14 2022

nemanjai committed rG766ca2c59e21: [PowerPC] Add missed VSX shuffles instead of Altivec ones (authored by nemanjai).
[PowerPC] Add missed VSX shuffles instead of Altivec ones
Mar 14 2022, 8:12 AM · Restricted Project

Mar 9 2022

nemanjai added a comment to D121257: [lsan] ppc64: dynamically pick address range for allocator.

This certainly fixes all the lsan issues on Ubuntu 18.04, leaving only one failure in the CRT test:
CRT-powerpc64le-linux :: dso_handle.cpp

Mar 9 2022, 11:07 AM · Restricted Project, Restricted Project

Mar 7 2022

nemanjai accepted D121016: [PowerPC] Fix the none tail call in scalar MASS conversion.

LGTM other than the test cases that need to be improved.

Mar 7 2022, 1:20 PM · Restricted Project, Restricted Project, Restricted Project

Mar 4 2022

nemanjai accepted D117225: [PowerPC][P10] Add Vector pair calling convention.

LGTM.

Mar 4 2022, 10:00 AM · Restricted Project, Restricted Project
nemanjai accepted D117013: [PowerPC] Set the special DSCR with a compiler option..

LGTM.

Mar 4 2022, 9:42 AM · Restricted Project, Restricted Project

Feb 25 2022

nemanjai added a comment to D120305: [Driver] Default CLANG_DEFAULT_PIE_ON_LINUX to ON.

While I feel sorry for leaving clang-ppc64le-rhel red for some time and am willing to fix issues if I have access to a ppc64 machine (especially compiler-rt ones that I care about),
I feel uncomfortably if a group just bluntly request "please pull this patch" when apparently (a) there is a better approach (explicitly setting CLANG_DEFAULT_PIE_ON_LINUX=OFF) and (b) there is something a bot maintainer can do
and (c) there is just some inherent stability problem (in this case, consider not enabling the testing when the target is still unstable) that is causing not only this issue, but various other reports (as I watch sanitizer failures quite closely and ppc64 often tends to be the outlier thing)

Feb 25 2022, 8:59 PM · Restricted Project, Restricted Project, Restricted Project
nemanjai added a comment to D120305: [Driver] Default CLANG_DEFAULT_PIE_ON_LINUX to ON.

@MaskRay The ppc buildbots have been red since these patches - please can you take a look? https://lab.llvm.org/buildbot/#/builders/57/builds/15454

Seems that ppc64 doesn't support test/sanitizer_common test/crt -fpie. I'll just disable them: https://github.com/llvm/llvm-project/issues/54084

Actually I don't know how to disable the tests: https://lab.llvm.org/buildbot/#/builders/57/builds/15497 still failed.
Hope someone from #powerpc can disable them.

Feb 25 2022, 4:09 PM · Restricted Project, Restricted Project, Restricted Project

Feb 23 2022

nemanjai accepted D120349: [NFC][PowerPC] Fix the check-cpu.ll test case..

LGTM.

Feb 23 2022, 2:06 AM · Restricted Project

Feb 22 2022

nemanjai committed rG2aaba44b5c22: [PowerPC] Allow absolute expressions in relocations (authored by nemanjai).
[PowerPC] Allow absolute expressions in relocations
Feb 22 2022, 7:53 AM
nemanjai closed D115419: [PowerPC] Allow absolute expressions in relocations.
Feb 22 2022, 7:53 AM · Restricted Project

Feb 17 2022

nemanjai added a comment to D94576: [LoopVectorize] Guard verifyFunction with EXPENSIVE_CHECKS macro.

Hi @lebedev.ri, did the second example work for you? Please let me know if you need any additional information.

Sorry, this completely dropped off my radar.
My comment is still the same, it would be good to to understand,
is there some particular reason why verification is slow for that sample?
Do you have a bisection as to when it became slow?

Hiding verification under EXPENSIVE_CHECKS is somewhat problematic,
it will effectively disable verification.

Feb 17 2022, 11:55 AM · Restricted Project

Feb 16 2022

nemanjai committed rGd32b875dbc24: [ELF][test] Fix build break after 20bdd3e23263 (authored by nemanjai).
[ELF][test] Fix build break after 20bdd3e23263
Feb 16 2022, 3:59 AM

Feb 15 2022

nemanjai accepted D118753: [PowerPC] Fix __builtin_pdepd and __builtin_pextd to be 64-bit and P10 only..

LGTM.

Feb 15 2022, 8:07 AM · Restricted Project, Restricted Project, Restricted Project
nemanjai accepted D119757: Enabling ccache for all ppc64le buildbots.

LGTM. Thanks for fixing this.

Feb 15 2022, 7:53 AM · Restricted Project

Feb 11 2022

nemanjai accepted D119521: [PowerPC] Add default handling for single element vectors, and split/promote vNi1 vectors..

LGTM.

Feb 11 2022, 7:59 AM · Restricted Project, Restricted Project

Feb 9 2022

nemanjai added a comment to D116867: [PowerPC] Fix sanitizers build on FreeBSD.

Note that __ppc_get_timebase is pretty much copied from glibc (writing it here to make sure that there are no licensing issues).
That said, I don't think there's any other way to read TBR.

Feb 9 2022, 7:32 AM · Restricted Project, Restricted Project