Page MenuHomePhabricator
Feed Advanced Search

Yesterday

stefanp added a comment to D81947: [PowerPC][PCRelative] Thread Local Storage Support for Initial Exec.

I think this patch is getting close. A couple more comments from me.

Thu, Jul 2, 6:57 AM · Restricted Project, Restricted Project
stefanp added a comment to D82315: [PowerPC][PCRelative] Thread Local Storage Support for General Dynamic.

Bunch of nits but overall the idea is fine. I only had one real concern with respect to the setup of InReg and you can find that in the comments.

Thu, Jul 2, 6:25 AM · Restricted Project, Restricted Project

Wed, Jul 1

stefanp accepted D82816: [LLD][PowerPC] Implement R_PPC64_REL24_NOTOC calls, callee also has no TOC.

I had a minor nit.
Otherwise I think this is fine.
LGTM.

Wed, Jul 1, 1:32 PM · Restricted Project
stefanp updated the diff for D82950: [PowerPC] Support PCRelative Callees for R_PPC64_REL24 Relocation.

Updated initial test case to clean up some of the instruction.
Added a second test to check that an error is reported when the nop after the
call is missing.

Wed, Jul 1, 11:54 AM · Restricted Project
stefanp created D82950: [PowerPC] Support PCRelative Callees for R_PPC64_REL24 Relocation.
Wed, Jul 1, 5:22 AM · Restricted Project
stefanp added a comment to D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses.

Gentle ping

Wed, Jul 1, 4:49 AM · Restricted Project

Tue, Jun 30

stefanp updated the diff for D81126: [PowerPC] Fix for PC Relative call protocol.

Fixed final nit.

Tue, Jun 30, 11:56 AM · Restricted Project
stefanp updated the diff for D81126: [PowerPC] Fix for PC Relative call protocol.

Fixed up comment and test cases.
Removed condition that was not required.

Tue, Jun 30, 5:23 AM · Restricted Project

Mon, Jun 29

stefanp added inline comments to D79625: [PowerPC] Extend .reloc directive on PowerPC.
Mon, Jun 29, 9:42 AM · Restricted Project
stefanp accepted D82510: [PowerPC][Power10] Implement low-order Vector Multiply, Modulus and Divide Instructions.

LGTM

Mon, Jun 29, 4:17 AM · Restricted Project, Restricted Project
stefanp updated the diff for D81126: [PowerPC] Fix for PC Relative call protocol.

Reworked the body of callsShareTOCBase to check for PC Relative callees in all cases.
Also, added test cases for ifunc and aliased functions. For the ifunc case I just added test lines to an existing test file.

Mon, Jun 29, 3:44 AM · Restricted Project
stefanp added inline comments to D81126: [PowerPC] Fix for PC Relative call protocol.
Mon, Jun 29, 3:44 AM · Restricted Project

Fri, Jun 26

stefanp updated the diff for D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses.

Address review comments.
Mainly reworked two functions: isPartOfGOTToPCRelPair and addLinkerOpt.
Unfortunately I was not able to move isPartOfGOTToPCRelPair out of PPCELFStreamer because I was not able to find a good place for it.

Fri, Jun 26, 3:45 AM · Restricted Project

Tue, Jun 23

stefanp updated the diff for D79625: [PowerPC] Extend .reloc directive on PowerPC.

Fixed a number of issues pointed out by the reviewers.

Tue, Jun 23, 12:21 PM · Restricted Project
stefanp added inline comments to D79625: [PowerPC] Extend .reloc directive on PowerPC.
Tue, Jun 23, 12:21 PM · Restricted Project
stefanp updated the diff for D81948: [LLD][PowerPC] Add support for R_PPC64_GOT_PCREL34.

Updated with last nits.

Tue, Jun 23, 12:21 PM · Restricted Project

Mon, Jun 22

stefanp added a comment to D81947: [PowerPC][PCRelative] Thread Local Storage Support for Initial Exec.

Overall this seems fine. I have a number of comments but they are mostly minor.

Mon, Jun 22, 12:54 PM · Restricted Project, Restricted Project
stefanp updated the diff for D81457: [LLD][PowerPC] Add support for R_PPC64_PCREL34.

Fixed comment and added a new overflow test case.

Mon, Jun 22, 11:49 AM · Restricted Project
stefanp added inline comments to D81457: [LLD][PowerPC] Add support for R_PPC64_PCREL34.
Mon, Jun 22, 11:49 AM · Restricted Project
stefanp updated the diff for D81126: [PowerPC] Fix for PC Relative call protocol.

Address Review Comments

Mon, Jun 22, 9:39 AM · Restricted Project
stefanp added inline comments to D81126: [PowerPC] Fix for PC Relative call protocol.
Mon, Jun 22, 9:09 AM · Restricted Project

Fri, Jun 19

stefanp updated the diff for D79625: [PowerPC] Extend .reloc directive on PowerPC.

Address Review Comments

Fri, Jun 19, 2:41 PM · Restricted Project
stefanp updated the diff for D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses.

Addressed review comments.

Fri, Jun 19, 10:19 AM · Restricted Project
stefanp added inline comments to D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses.
Fri, Jun 19, 10:19 AM · Restricted Project

Thu, Jun 18

stefanp updated the diff for D81948: [LLD][PowerPC] Add support for R_PPC64_GOT_PCREL34.

Addressed review comments.

Thu, Jun 18, 4:19 AM · Restricted Project
stefanp added inline comments to D81948: [LLD][PowerPC] Add support for R_PPC64_GOT_PCREL34.
Thu, Jun 18, 4:19 AM · Restricted Project
stefanp updated the diff for D81457: [LLD][PowerPC] Add support for R_PPC64_PCREL34.

Address review comments.

Thu, Jun 18, 4:19 AM · Restricted Project

Wed, Jun 17

stefanp updated the diff for D81457: [LLD][PowerPC] Add support for R_PPC64_PCREL34.

Addressed review comments.

Wed, Jun 17, 2:02 PM · Restricted Project
stefanp updated the diff for D79625: [PowerPC] Extend .reloc directive on PowerPC.

Added more comments and broke up confusing if statements.

Wed, Jun 17, 12:24 PM · Restricted Project
stefanp added a comment to D79283: [PowerPC] Add missing handling for half precision.

LGTM.

Wed, Jun 17, 3:44 AM · Restricted Project

Tue, Jun 16

stefanp updated the diff for D81126: [PowerPC] Fix for PC Relative call protocol.

Fixed the comment and changed the name of the function to have a better description of what it does.

Tue, Jun 16, 1:44 PM · Restricted Project
stefanp created D81948: [LLD][PowerPC] Add support for R_PPC64_GOT_PCREL34.
Tue, Jun 16, 10:26 AM · Restricted Project
stefanp added a comment to D81457: [LLD][PowerPC] Add support for R_PPC64_PCREL34.

I think all of the comments have been addressed at this point as, based on the discussions, we have decided to leave the code as-is.

Tue, Jun 16, 9:54 AM · Restricted Project

Mon, Jun 15

stefanp added inline comments to D81457: [LLD][PowerPC] Add support for R_PPC64_PCREL34.
Mon, Jun 15, 2:54 PM · Restricted Project
stefanp committed rG57c9dc0521ab: [PowerPC] Do not add the relocation addend to the instruction encoding (authored by stefanp).
[PowerPC] Do not add the relocation addend to the instruction encoding
Mon, Jun 15, 8:08 AM
stefanp closed D81082: [PowerPC] Do not add the relocation addend to the instruction encoding.
Mon, Jun 15, 8:08 AM · Restricted Project

Fri, Jun 12

stefanp added a comment to D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses.

@efriedma
Would you mind looking at the new implementation of this patch to see if you can spot any issues.
Any feed back is very much appreciated!

Fri, Jun 12, 12:35 PM · Restricted Project
stefanp updated the diff for D81457: [LLD][PowerPC] Add support for R_PPC64_PCREL34.

Addressed review comments for the test case.

Fri, Jun 12, 12:35 PM · Restricted Project
stefanp added inline comments to D81457: [LLD][PowerPC] Add support for R_PPC64_PCREL34.
Fri, Jun 12, 12:35 PM · Restricted Project
stefanp added inline comments to D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses.
Fri, Jun 12, 5:22 AM · Restricted Project
stefanp updated the diff for D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses.

Address Review Comments.

Fri, Jun 12, 5:22 AM · Restricted Project
stefanp added inline comments to D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses.
Fri, Jun 12, 5:22 AM · Restricted Project

Thu, Jun 11

stefanp set the repository for D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses to rG LLVM Github Monorepo.
Thu, Jun 11, 2:53 PM · Restricted Project
stefanp updated the diff for D79625: [PowerPC] Extend .reloc directive on PowerPC.

Address review comments.

Thu, Jun 11, 2:52 PM · Restricted Project
stefanp added inline comments to D79625: [PowerPC] Extend .reloc directive on PowerPC.
Thu, Jun 11, 2:20 PM · Restricted Project

Tue, Jun 9

stefanp retitled D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses from [PowerPC] Add new linker optimization for PowerPC to [PowerPC] Add linker opt for PC Relative GOT indirect accesses.
Tue, Jun 9, 9:19 AM · Restricted Project
stefanp created D81457: [LLD][PowerPC] Add support for R_PPC64_PCREL34.
Tue, Jun 9, 4:54 AM · Restricted Project

Mon, Jun 8

stefanp committed rG246d10609410: [PowerPC] Fix pattern for DCBFL/DCBFLP instrinsics. (authored by anil9).
[PowerPC] Fix pattern for DCBFL/DCBFLP instrinsics.
Mon, Jun 8, 7:23 PM
stefanp closed D80151: [PowerPC] Fix pattern for DCBFL/DCBFLP instrinsics..
Mon, Jun 8, 7:23 PM · Restricted Project, Restricted Project, Restricted Project
stefanp committed rGc9790d54f833: [PowerPC] Remove extra instruction left by emitRLDICWhenLoweringJumpTables (authored by anil9).
[PowerPC] Remove extra instruction left by emitRLDICWhenLoweringJumpTables
Mon, Jun 8, 6:51 PM
stefanp committed rGb4036329f163: [PowerPC] Fix incorrect PC Relative relocations for Big Endian (authored by stefanp).
[PowerPC] Fix incorrect PC Relative relocations for Big Endian
Mon, Jun 8, 6:51 PM
stefanp closed D78063: [PowerPC] Remove extra instruction left by emitRLDICWhenLoweringJumpTables.
Mon, Jun 8, 6:50 PM · Restricted Project
stefanp closed D81033: [PowerPC] Fix incorrect PC Relative relocations for Big Endian.
Mon, Jun 8, 6:50 PM · Restricted Project
stefanp updated the diff for D81082: [PowerPC] Do not add the relocation addend to the instruction encoding.

I've put the return instructions back in place.
The test in this patch already prints out the addend. The CHECK-O section prints out the relocation and then it has symbol+<addend>. Is that what you are looking for?
For example:

; CHECK-O-NEXT:    0000000000000000:  R_PPC64_PCREL34      array2+0x1c
Mon, Jun 8, 6:16 PM · Restricted Project
stefanp set the repository for D81033: [PowerPC] Fix incorrect PC Relative relocations for Big Endian to rG LLVM Github Monorepo.
Mon, Jun 8, 5:44 PM · Restricted Project
stefanp added a comment to D81033: [PowerPC] Fix incorrect PC Relative relocations for Big Endian.
After landing this patch can you do an NFC cleanup of the test?
Mon, Jun 8, 2:25 PM · Restricted Project

Fri, Jun 5

stefanp committed rG8dbf5a95014f: [PowerPC] Remove extra nop after notoc call (authored by stefanp).
[PowerPC] Remove extra nop after notoc call
Fri, Jun 5, 4:56 AM
stefanp closed D81081: [PowerPC] Remove extra nop after notoc call.
Fri, Jun 5, 4:56 AM · Restricted Project
stefanp committed rG05e21f8cea27: [PowerPC][NFC] Add more PC Relative tests (authored by stefanp).
[PowerPC][NFC] Add more PC Relative tests
Fri, Jun 5, 4:23 AM

Wed, Jun 3

stefanp created D81126: [PowerPC] Fix for PC Relative call protocol.
Wed, Jun 3, 6:12 PM · Restricted Project

Jun 3 2020

stefanp created D81082: [PowerPC] Do not add the relocation addend to the instruction encoding.
Jun 3 2020, 4:53 AM · Restricted Project
stefanp created D81081: [PowerPC] Remove extra nop after notoc call.
Jun 3 2020, 4:20 AM · Restricted Project

Jun 2 2020

stefanp created D81033: [PowerPC] Fix incorrect PC Relative relocations for Big Endian.
Jun 2 2020, 1:43 PM · Restricted Project

Jun 1 2020

stefanp updated the diff for D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses.

Moved the linker opt detection into the pre-emit peephole.
This should solve the problem where instructions between the PLD and the second load/store make the optimization unsafe.

Jun 1 2020, 12:25 PM · Restricted Project
stefanp accepted D80757: [PowerPC] Add clang option -m[no-]pcrel.

LGTM.

Jun 1 2020, 9:06 AM · Restricted Project, Restricted Project

May 28 2020

stefanp added a comment to D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses.

Just looked at what I wrote, and the issue I'm seeing isn't clear.

The code doesn't require that the pld and the lwa are adjacent. Therefore, it's possible that some instruction between the pld and the lwa writes to the destination register of the lwa. If there is such an instruction, the linker optimization would cause a miscompile: the loaded value would be clobbered.

May 28 2020, 7:15 PM · Restricted Project
stefanp updated the diff for D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses.

Addressed some of the review comments.
Added code that I had meant to have in this patch but forgot.

May 28 2020, 7:15 PM · Restricted Project
stefanp added a comment to D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses.

Which will eventually turn it into this by the linker (if we don't actually need to go through the GOT):

plwa 3, vec@got@pcrel+4(0), 1
nop

Which instruction gets replaced by a nop, the pld or the lwa?

May 28 2020, 10:56 AM · Restricted Project

May 27 2020

stefanp added reviewers for D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses: sfertile, efriedma, tstellar, grosbach.
May 27 2020, 3:44 AM · Restricted Project
stefanp added reviewers for D79625: [PowerPC] Extend .reloc directive on PowerPC: sfertile, efriedma, tstellar, grosbach.
May 27 2020, 3:44 AM · Restricted Project

May 26 2020

stefanp accepted D80020: [PowerPC] Add support for -mcpu=pwr10 in both clang and llvm.

LGTM

May 26 2020, 3:17 PM · Restricted Project, Restricted Project, Restricted Project
stefanp accepted D80020: [PowerPC] Add support for -mcpu=pwr10 in both clang and llvm.

LGTM

May 26 2020, 9:44 AM · Restricted Project, Restricted Project, Restricted Project

May 25 2020

stefanp committed rG5a4bcec8db42: [PowerPC][NFC] Split PPCELFStreamer::emitInstruction (authored by stefanp).
[PowerPC][NFC] Split PPCELFStreamer::emitInstruction
May 25 2020, 5:19 AM
stefanp closed D79626: [PowerPC][NFC] Split PPCELFStreamer::emitInstruction.
May 25 2020, 5:19 AM · Restricted Project
stefanp added a parent revision for D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses: D79625: [PowerPC] Extend .reloc directive on PowerPC.
May 25 2020, 4:14 AM · Restricted Project
stefanp added a child revision for D79625: [PowerPC] Extend .reloc directive on PowerPC: D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses.
May 25 2020, 4:14 AM · Restricted Project
stefanp updated the diff for D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses.

Address review comments.

May 25 2020, 4:14 AM · Restricted Project
stefanp added inline comments to D79625: [PowerPC] Extend .reloc directive on PowerPC.
May 25 2020, 4:14 AM · Restricted Project
stefanp updated the diff for D79625: [PowerPC] Extend .reloc directive on PowerPC.

Address review comments.

May 25 2020, 4:14 AM · Restricted Project

May 22 2020

stefanp accepted D79854: [PowerPC] Prevent legalization loop from promoting SELECT_CC from v4i32 to v4i32.

The name of the test is pr45709 which refers to the bug number so I guess anyone interested should look there for the details.
However, I still agree with Amy that adding a description inside the test would be useful since the code in the test is not self explanatory.
Otherwise, LGTM.

May 22 2020, 5:18 AM · Restricted Project

May 21 2020

stefanp accepted D79283: [PowerPC] Add missing handling for half precision.

One minor nit. Otherwise LGTM.

May 21 2020, 11:21 AM · Restricted Project

May 19 2020

stefanp added a comment to D80020: [PowerPC] Add support for -mcpu=pwr10 in both clang and llvm.

Most of my comments are related to the fact that we are now inserting P10 between P9 and Future and so a few things need to change for the Future code to sit on top of P10 now.

May 19 2020, 1:10 PM · Restricted Project, Restricted Project, Restricted Project
stefanp accepted D77542: [PowerPC] Treat 'Z' inline asm constraint as a true memory constraint.

Other than the two missing Ks in the test case as Amy pointed out LGTM.

May 19 2020, 9:48 AM · Restricted Project

May 13 2020

stefanp created D79864: [PowerPC] Add linker opt for PC Relative GOT indirect accesses.
May 13 2020, 8:05 AM · Restricted Project

May 8 2020

stefanp created D79626: [PowerPC][NFC] Split PPCELFStreamer::emitInstruction.
May 8 2020, 4:47 AM · Restricted Project
stefanp created D79625: [PowerPC] Extend .reloc directive on PowerPC.
May 8 2020, 4:15 AM · Restricted Project

May 6 2020

stefanp accepted D77646: [PowerPC] Fold vector merges of swapped vectors to merge the opposite half.

This patch LGTM.
I have a few minor comments but that is it.

May 6 2020, 1:00 PM · Restricted Project
stefanp committed rG7d507ff55f6c: [PowerPC] Fix missing GOT indirect variant kind (authored by stefanp).
[PowerPC] Fix missing GOT indirect variant kind
May 6 2020, 4:16 AM
stefanp closed D79015: [PowerPC] Fix missing GOT indirect variant kind.
May 6 2020, 4:16 AM · Restricted Project

Apr 28 2020

stefanp created D79015: [PowerPC] Fix missing GOT indirect variant kind.
Apr 28 2020, 9:06 AM · Restricted Project

Apr 27 2020

stefanp committed rG1354a03e74c2: [PowerPC][Future] Implement PC Relative Tail Calls (authored by stefanp).
[PowerPC][Future] Implement PC Relative Tail Calls
Apr 27 2020, 11:18 AM
stefanp closed D77788: [PowerPC][Future] Enable Tail Calls for PC Relative Code.
Apr 27 2020, 11:18 AM · Restricted Project

Apr 24 2020

stefanp accepted D78517: [PowerPC][Future] Remove "unskipableSimplifyCode()" in PPCMIPeephole.cpp.

Minor wording as Anil pointed out.
LGTM.

Apr 24 2020, 12:59 PM · Restricted Project

Apr 17 2020

stefanp updated the diff for D77788: [PowerPC][Future] Enable Tail Calls for PC Relative Code.

Addressed Review Comments.

Apr 17 2020, 11:53 AM · Restricted Project
stefanp added a comment to D77788: [PowerPC][Future] Enable Tail Calls for PC Relative Code.

Replied to comments. I'll update the patch in a couple of min.

Apr 17 2020, 11:53 AM · Restricted Project

Apr 15 2020

stefanp added inline comments to D77788: [PowerPC][Future] Enable Tail Calls for PC Relative Code.
Apr 15 2020, 9:50 AM · Restricted Project
stefanp updated the diff for D77788: [PowerPC][Future] Enable Tail Calls for PC Relative Code.

Addressed review nits.

Apr 15 2020, 9:50 AM · Restricted Project
stefanp added a comment to D78132: [PowerPC] Refactor PPCInstrVSX.td .

I like the way that this has been broken down into sections it will make our lives easier for future modifications.

Apr 15 2020, 4:20 AM · Restricted Project

Apr 13 2020

stefanp updated the diff for D77788: [PowerPC][Future] Enable Tail Calls for PC Relative Code.

Addressed review comments.

Apr 13 2020, 5:52 AM · Restricted Project

Apr 9 2020

stefanp committed rG5b18b6e9a84d: [PowerPC][Future] Fix for 6c4b40def77622a5cf62a219ef4af63dc876e144 (authored by stefanp).
[PowerPC][Future] Fix for 6c4b40def77622a5cf62a219ef4af63dc876e144
Apr 9 2020, 6:31 PM