Page MenuHomePhabricator

kparzysz (Krzysztof Parzyszek)
User

Projects

User does not belong to any projects.

User Details

User Since
Apr 21 2014, 4:27 PM (256 w, 2 d)

Recent Activity

Today

kparzysz added a comment to D47735: [DAGCombiner] Create rotates more aggressively.

There can be many changes to the compiled code between the IR combiner and the DAG combiner, so these patterns can certainly appear before DAG combining takes place. Also, we already combine for rotates in the DAG, this patch only makes it more comprehensive.

Thu, Mar 21, 10:45 AM · Restricted Project
kparzysz updated the diff for D47735: [DAGCombiner] Create rotates more aggressively.

Rebased on top of the pre-committed testcases.

Thu, Mar 21, 10:26 AM · Restricted Project
kparzysz committed rG471950294149: Add more rotate tests, including ORs of rotates (authored by kparzysz).
Add more rotate tests, including ORs of rotates
Thu, Mar 21, 10:14 AM
kparzysz committed rL356683: Add more rotate tests, including ORs of rotates.
Add more rotate tests, including ORs of rotates
Thu, Mar 21, 10:14 AM
kparzysz added a comment to D47735: [DAGCombiner] Create rotates more aggressively.

Oof, I somehow missed the comments... :o

Thu, Mar 21, 10:14 AM · Restricted Project

Fri, Mar 15

kparzysz added a comment to D59363: [SelectionDAG] Add icmp UNDEF handling to SelectionDAG::FoldSetCC.

The Hexagon changes look good.

Fri, Mar 15, 7:23 AM · Restricted Project

Wed, Mar 6

kparzysz committed rG9c005bbdd4db: [Hexagon] Avoid creating 5-instruction packets with vgather pseudos (authored by kparzysz).
[Hexagon] Avoid creating 5-instruction packets with vgather pseudos
Wed, Mar 6, 9:44 AM
kparzysz committed rL355524: [Hexagon] Avoid creating 5-instruction packets with vgather pseudos.
[Hexagon] Avoid creating 5-instruction packets with vgather pseudos
Wed, Mar 6, 9:44 AM

Fri, Mar 1

kparzysz added a comment to D58704: Initial (incomplete) implementation of JITLink - A replacement for RuntimeDyld..

I was actually thinking about handling of target-specific relocations, and applying them to instructions. We used to have a large chunk of auto-generated code that did that. The implementation in lld is much shorter, so it's probably not a big deal if it needs to be repeated.

Fri, Mar 1, 3:42 PM · Restricted Project
kparzysz added a comment to D58704: Initial (incomplete) implementation of JITLink - A replacement for RuntimeDyld..

Since you're rewrite this, is there any potential for sharing code with lld? Relocating instructions should essentially be the same between these two.

Fri, Mar 1, 11:46 AM · Restricted Project
kparzysz accepted D58595: [TableGen][SelectionDAG][X86] Add specific isel matchers for immAllZerosV/immAllOnesV. Remove bitcasts from X86 patterns that are no longer necessary..

Looks ok to me.

Fri, Mar 1, 8:38 AM · Restricted Project
kparzysz added a comment to D47735: [DAGCombiner] Create rotates more aggressively.

Ping.

Fri, Mar 1, 8:33 AM · Restricted Project

Thu, Feb 21

kparzysz updated the diff for D47735: [DAGCombiner] Create rotates more aggressively.

This patch uses MatchRotate to do the actual matching, so it's only going to look for opportunities to create a rotate. Maybe that function should be replaced with MatchRotateOrFunnelShift in a future patch.

Thu, Feb 21, 2:23 PM · Restricted Project
kparzysz added a comment to D47735: [DAGCombiner] Create rotates more aggressively.

Are you opposed to having this done in the DAG combiner?

Thu, Feb 21, 11:54 AM · Restricted Project
kparzysz committed rGf6e875bacfca: [Hexagon] Use misaligned load instead of trap0(#0) for __builtin_trap (authored by kparzysz).
[Hexagon] Use misaligned load instead of trap0(#0) for __builtin_trap
Thu, Feb 21, 11:44 AM
kparzysz committed rL354611: [Hexagon] Use misaligned load instead of trap0(#0) for __builtin_trap.
[Hexagon] Use misaligned load instead of trap0(#0) for __builtin_trap
Thu, Feb 21, 11:44 AM
kparzysz committed rG948c9f93c401: Revert r354606, it breaks asan tests (authored by kparzysz).
Revert r354606, it breaks asan tests
Thu, Feb 21, 11:34 AM
kparzysz committed rL354609: Revert r354606, it breaks asan tests.
Revert r354606, it breaks asan tests
Thu, Feb 21, 11:34 AM
kparzysz committed rG5f47fac3a2b0: [Hexagon] Use misaligned load instead of trap0(#0) for __builtin_trap (authored by kparzysz).
[Hexagon] Use misaligned load instead of trap0(#0) for __builtin_trap
Thu, Feb 21, 10:39 AM
kparzysz committed rL354606: [Hexagon] Use misaligned load instead of trap0(#0) for __builtin_trap.
[Hexagon] Use misaligned load instead of trap0(#0) for __builtin_trap
Thu, Feb 21, 10:38 AM
kparzysz added a comment to D58490: [ARM] Be super conservative about atomics.

The Hexagon changes are OK.

Thu, Feb 21, 6:18 AM · Restricted Project

Wed, Feb 20

kparzysz added a comment to D47735: [DAGCombiner] Create rotates more aggressively.

One goal was to be able to generate rol-and-accumulate instruction (on Hexagon), specifically for the accumulate operation being | (see f11 in rotate.ll). For the C code we still don't generate it:

unsigned blah(unsigned x, unsigned s) {
  return s | (x << 27) | (x >> 5);
}
Wed, Feb 20, 2:02 PM · Restricted Project
kparzysz committed rG6128ac5a8fbb: [Hexagon] Split vector pairs for ISD::SIGN_EXTEND and ISD::ZERO_EXTEND (authored by kparzysz).
[Hexagon] Split vector pairs for ISD::SIGN_EXTEND and ISD::ZERO_EXTEND
Wed, Feb 20, 7:06 AM
kparzysz committed rL354473: [Hexagon] Split vector pairs for ISD::SIGN_EXTEND and ISD::ZERO_EXTEND.
[Hexagon] Split vector pairs for ISD::SIGN_EXTEND and ISD::ZERO_EXTEND
Wed, Feb 20, 7:04 AM

Feb 18 2019

kparzysz accepted D58356: Hexagon: Add ImmArg to intrinsics.

I see. Thanks for looking into it.

Feb 18 2019, 12:31 PM
kparzysz added a comment to D58356: Hexagon: Add ImmArg to intrinsics.

I'm not expecting this patch to be complete. Most of the intrinsic definitions are actually auto-generated, so we'll need to update the generating scripts to include these new annotations. What concerns me is that you claim that some things are missing, which could indicate that there are some issues with the generators. I'm trying to understand exactly what the missing pieces are, the contents of this patch are actually of secondary importance.

Feb 18 2019, 9:44 AM
kparzysz added a comment to D58356: Hexagon: Add ImmArg to intrinsics.

There has to be a corresponding builtin definition explicitly defined in clang, which also needs to correctly mark the required constant operands. The test coverage for which operands need to be constants is spotty or nonexistent for these, so those are possibly missing in the builtin definition.

Feb 18 2019, 9:22 AM
kparzysz added a comment to D58356: Hexagon: Add ImmArg to intrinsics.

I don't really understand the summary, could you elaborate on how the asserting implies the conclusion (the part that follows "This means that..."). Also, what does that part mean on its own? "Intrinsics are missing that don't use GCCBuiltin...", meaning that you'd expect some intrinsics that don't use GCCBuiltin, but they're not defined?

Feb 18 2019, 8:22 AM

Feb 13 2019

kparzysz accepted D55295: LiveIntervals: Add removePhysReg.
Feb 13 2019, 1:08 PM
kparzysz added a comment to D55295: LiveIntervals: Add removePhysReg.

I'm not trying to block this from being committed, but I'm really not a fan of it. I think that register units are fundamental enough not to be treated as an "implementation detail". Besides, they are quite explicit in the public interface of LiveIntervals.

Feb 13 2019, 11:55 AM
kparzysz added inline comments to D55295: LiveIntervals: Add removePhysReg.
Feb 13 2019, 11:22 AM
kparzysz added inline comments to D55295: LiveIntervals: Add removePhysReg.
Feb 13 2019, 10:38 AM

Feb 7 2019

kparzysz accepted D57917: [zorg] Update host compiler for reverse-iteration builder.
Feb 7 2019, 12:06 PM
kparzysz added inline comments to D57917: [zorg] Update host compiler for reverse-iteration builder.
Feb 7 2019, 11:25 AM
kparzysz accepted D57865: [zorg] Update host compiler for polly-arm-linux builder.
Feb 7 2019, 6:19 AM

Feb 2 2019

kparzysz added a comment to D57608: [NFC][GlobalISel]: Add a convenience method to MachineInstrBuilder to simplify getOperand(i).getReg().

If we're going to add a helper to shave some characters off, we might as well go for something really short like getOpReg().

Feb 2 2019, 7:22 AM · Restricted Project

Feb 1 2019

kparzysz committed rL352915: [Hexagon] Update release notes with the changes to the Hexagon backend.
[Hexagon] Update release notes with the changes to the Hexagon backend
Feb 1 2019, 12:55 PM
kparzysz committed rL352912: [Hexagon] Update release notes with the changes to the Hexagon backend.
[Hexagon] Update release notes with the changes to the Hexagon backend
Feb 1 2019, 12:44 PM

Jan 24 2019

kparzysz committed rL352101: [zorg] Pass environment to getPollyBuildFactory and getAOSPBuildFactory.
[zorg] Pass environment to getPollyBuildFactory and getAOSPBuildFactory
Jan 24 2019, 12:53 PM
kparzysz closed D51058: [zorg] Pass environment to getPollyBuildFactory and getAOSPBuildFactory.
Jan 24 2019, 12:53 PM
Herald added a reviewer for D51058: [zorg] Pass environment to getPollyBuildFactory and getAOSPBuildFactory: serge-sans-paille.
Jan 24 2019, 12:44 PM

Jan 23 2019

kparzysz committed rL351956: [Hexagon] Remove incorrect bit negation.
[Hexagon] Remove incorrect bit negation
Jan 23 2019, 7:37 AM

Jan 16 2019

kparzysz committed rL351369: [Hexagon] Do not promote terminator instructions in Hexagon loop idioms.
[Hexagon] Do not promote terminator instructions in Hexagon loop idioms
Jan 16 2019, 11:44 AM

Dec 20 2018

kparzysz committed rL349770: [Hexagon] Add patterns for funnel shifts.
[Hexagon] Add patterns for funnel shifts
Dec 20 2018, 8:44 AM

Dec 17 2018

kparzysz committed rL349391: [SDAG] Clarify the origin of chain in REG_SEQUENCE in comment, NFC.
[SDAG] Clarify the origin of chain in REG_SEQUENCE in comment, NFC
Dec 17 2018, 12:33 PM

Dec 14 2018

kparzysz committed rL349202: [Hexagon] Add patterns for shifts of v2i16.
[Hexagon] Add patterns for shifts of v2i16
Dec 14 2018, 2:37 PM
kparzysz committed rL349199: [Hexagon] Use IMPLICIT_DEF to any-extend 32-bit values to 64 bits.
[Hexagon] Use IMPLICIT_DEF to any-extend 32-bit values to 64 bits
Dec 14 2018, 2:09 PM
kparzysz committed rL349186: [SDAG] Ignore chain operand in REG_SEQUENCE when emitting instructions.
[SDAG] Ignore chain operand in REG_SEQUENCE when emitting instructions
Dec 14 2018, 12:17 PM
kparzysz added a comment to D55448: [DAGCombiner] allow hoisting vector bitwise logic ahead of truncates.

The Hexagon tests were meant to check operations on vector predicate registers, so for them to work the inputs need to be vectors of i1 with the lengths that correspond to the lengths of vectors of 8+ bit integers. The only way to generate such values is do either a compare or a truncate. Since compare instructions can be fused with logical operations, this leaves truncate as the only option. With the changes from this patch, truncate is also eliminated, so it appears that these instructions cannot be emitted anymore (from a non-intrinsic code). With this in mind, I am ok with these changes.

Dec 14 2018, 11:13 AM

Dec 11 2018

kparzysz added a comment to D55373: [LSR] Generate formulae to enable more indexed accesses.

I've run some tests and the results are not great for us. On some tests we got up to 5.5% improvements, but there are a lot of severe degradations (15+% worse). If this patch goes in, we'd like to be able to opt out.

Dec 11 2018, 9:05 AM · Restricted Project

Dec 10 2018

kparzysz committed rL348802: [Hexagon] Couple of fixes in optimize addressing mode.
[Hexagon] Couple of fixes in optimize addressing mode
Dec 10 2018, 1:59 PM
kparzysz committed rL348792: Revert "[Hexagon] Check if operand is an immediate before getImm".
Revert "[Hexagon] Check if operand is an immediate before getImm"
Dec 10 2018, 11:36 AM
kparzysz committed rL348787: [Hexagon] Check if operand is an immediate before getImm.
[Hexagon] Check if operand is an immediate before getImm
Dec 10 2018, 10:43 AM
kparzysz committed rL348785: [Hexagon] Add patterns for any_extend from i1 and short vectors of i1.
[Hexagon] Add patterns for any_extend from i1 and short vectors of i1
Dec 10 2018, 10:40 AM

Dec 7 2018

kparzysz committed rL348655: [Hexagon] Fix post-ra expansion of PS_wselect.
[Hexagon] Fix post-ra expansion of PS_wselect
Dec 7 2018, 2:03 PM

Dec 5 2018

kparzysz committed rC348419: [Hexagon] Add intrinsics for Hexagon V66.
[Hexagon] Add intrinsics for Hexagon V66
Dec 5 2018, 2:06 PM
kparzysz committed rL348419: [Hexagon] Add intrinsics for Hexagon V66.
[Hexagon] Add intrinsics for Hexagon V66
Dec 5 2018, 2:06 PM
kparzysz committed rL348415: [Hexagon] Add support for Hexagon V66.
[Hexagon] Add support for Hexagon V66
Dec 5 2018, 1:41 PM
kparzysz committed rC348415: [Hexagon] Add support for Hexagon V66.
[Hexagon] Add support for Hexagon V66
Dec 5 2018, 1:41 PM
kparzysz committed rL348413: [Hexagon] Add intrinsics for Hexagon V66.
[Hexagon] Add intrinsics for Hexagon V66
Dec 5 2018, 1:18 PM
kparzysz committed rL348411: [Hexagon] Add instruction definitions for Hexagon V66.
[Hexagon] Add instruction definitions for Hexagon V66
Dec 5 2018, 1:05 PM
kparzysz committed rL348407: [Hexagon] Foundation of support for Hexagon V66.
[Hexagon] Foundation of support for Hexagon V66
Dec 5 2018, 12:21 PM

Dec 4 2018

kparzysz committed rL348275: [Hexagon] Update builtin definitions.
[Hexagon] Update builtin definitions
Dec 4 2018, 7:50 AM
kparzysz committed rC348275: [Hexagon] Update builtin definitions.
[Hexagon] Update builtin definitions
Dec 4 2018, 7:50 AM
kparzysz committed rL348269: [Hexagon] Remove unused checker functions from asm parser.
[Hexagon] Remove unused checker functions from asm parser
Dec 4 2018, 7:01 AM

Dec 3 2018

kparzysz committed rL348214: [Hexagon] Fix intrinsic test.
[Hexagon] Fix intrinsic test
Dec 3 2018, 3:55 PM
kparzysz committed rC348214: [Hexagon] Fix intrinsic test.
[Hexagon] Fix intrinsic test
Dec 3 2018, 3:55 PM
kparzysz committed rL348206: [Hexagon] Switch to auto-generated intrinsic definitions and patterns.
[Hexagon] Switch to auto-generated intrinsic definitions and patterns
Dec 3 2018, 2:43 PM
kparzysz committed rL348196: [Hexagon] Extract operand decoders into a separate file, NFC.
[Hexagon] Extract operand decoders into a separate file, NFC
Dec 3 2018, 2:02 PM
kparzysz committed rL348193: [Hexagon] Remove unused encodings, NFC.
[Hexagon] Remove unused encodings, NFC
Dec 3 2018, 1:52 PM
kparzysz committed rL348183: [Hexagon] Update timing classes.
[Hexagon] Update timing classes
Dec 3 2018, 12:16 PM
kparzysz committed rL348171: [Hexagon] Change instruction type field in TSFlags to 7 bits.
[Hexagon] Change instruction type field in TSFlags to 7 bits
Dec 3 2018, 11:37 AM
kparzysz committed rL348167: [Hexagon] Add HasV5 predicate for compatibility with auto-generated files.
[Hexagon] Add HasV5 predicate for compatibility with auto-generated files
Dec 3 2018, 11:08 AM
kparzysz committed rL348163: [Hexagon] Remove unused operand definitions, NFC.
[Hexagon] Remove unused operand definitions, NFC
Dec 3 2018, 10:57 AM
kparzysz committed rL348162: [Hexagon] Some formatting changes, NFC.
[Hexagon] Some formatting changes, NFC
Dec 3 2018, 10:44 AM

Nov 29 2018

kparzysz committed rL347894: [TableGen] Examine entire subreg compositions to detect ambiguity.
[TableGen] Examine entire subreg compositions to detect ambiguity
Nov 29 2018, 10:23 AM
kparzysz closed D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.
Nov 29 2018, 10:23 AM
kparzysz added a comment to D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.

This sounds good to me. I hope a better solution is developed later, but at least we get rid of the warning.

Nov 29 2018, 7:41 AM

Nov 28 2018

kparzysz added a comment to D54962: [SystemZ] Rework subreg structure to avoid TableGen warning.

Could we not simply add a way for the target to tell TableGen to not define any implicit compositions?

Nov 28 2018, 10:09 AM
kparzysz committed rL347768: [Hexagon] Add missing flags to ELF YAMLIO.
[Hexagon] Add missing flags to ELF YAMLIO
Nov 28 2018, 8:28 AM

Nov 27 2018

kparzysz added a comment to D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.

@kparzysz, does that make sense to you?

Nov 27 2018, 11:12 AM
kparzysz added a comment to D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.

I must have missed the earlier discussion, but I agree with @bjope 's comment earlier that subreg_h32(V0) -> F0S is actually wrong; there should not be any subreg_h32(V0) at all!

Nov 27 2018, 7:58 AM
kparzysz updated the diff for D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.

Fixed the definition of subreg_l32 in the testcase.

Nov 27 2018, 7:23 AM
kparzysz added inline comments to D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.
Nov 27 2018, 7:21 AM

Nov 26 2018

kparzysz updated the diff for D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.

Examine subregister (and composition) actions on all registers when detecting ambiguities. This eliminates the warning from the SystemZ build, but keeps the warning in the subreg_ll32 from earlier comments.

Nov 26 2018, 1:00 PM

Nov 20 2018

kparzysz added a comment to D50725: [SystemZ] Replace subreg_r with subreg_h.

We're all still waiting on a fix here....

If Krzysztof can't address this, maybe the code owner for SystemZ (CC-ed I
believe) can take a look?

Nov 20 2018, 6:13 AM

Nov 9 2018

kparzysz committed rL346523: [Hexagon] Place globals with explicit .sdata section in small data.
[Hexagon] Place globals with explicit .sdata section in small data
Nov 9 2018, 9:34 AM
kparzysz committed rL346494: [Hexagon] Handle Hexagon's SHF_HEX_GPREL section flag.
[Hexagon] Handle Hexagon's SHF_HEX_GPREL section flag
Nov 9 2018, 6:20 AM

Nov 2 2018

kparzysz committed rL345975: [Hexagon] Do not reduce load size for globals in small-data.
[Hexagon] Do not reduce load size for globals in small-data
Nov 2 2018, 7:21 AM

Nov 1 2018

kparzysz accepted D53991: [Hexagon] Remove unintended fallthrough from MC duplex code.

Thanks!

Nov 1 2018, 12:46 PM

Oct 31 2018

kparzysz accepted D53931: TableGen: Fix ASAN error.

Thanks for the investigation. What concerns me a bit is that this isn't the only place where this pattern occurs, but hopefully it will be detected if it causes problems. It would be nice to have enough data to file a bug report against stdc++, but for now we can apply this workaround.

Oct 31 2018, 10:43 AM
kparzysz committed rL345731: [Hexagon] Make sure not to use GP-relative addressing with PIC.
[Hexagon] Make sure not to use GP-relative addressing with PIC
Oct 31 2018, 8:56 AM
kparzysz added inline comments to D53931: TableGen: Fix ASAN error.
Oct 31 2018, 7:16 AM

Oct 26 2018

kparzysz added a comment to D49671: [SchedModel] Propagate read advance cycles to implicit operands outside instruction descriptor.

Hexagon packets (bundles) have 4 slots, numbered 0..3. Each one of the three instructions (2 x S2_extractu, and PS_call_nr) can only go in slots 2 or 3, so something went horribly wrong.

Oct 26 2018, 8:25 AM

Oct 24 2018

kparzysz committed rL345170: [Hexagon] Flip hexagon-autohvx to be true by default.
[Hexagon] Flip hexagon-autohvx to be true by default
Oct 24 2018, 10:58 AM
kparzysz committed rL345169: [Hexagon] Flip hexagon-autohvx to be true by default.
[Hexagon] Flip hexagon-autohvx to be true by default
Oct 24 2018, 10:58 AM
kparzysz committed rC345170: [Hexagon] Flip hexagon-autohvx to be true by default.
[Hexagon] Flip hexagon-autohvx to be true by default
Oct 24 2018, 10:58 AM

Oct 19 2018

kparzysz added a comment to D52366: [tblgen][disasm] Separate encodings from instructions.

The encoding of an instruction includes encodings of its operands. How are you planning to implement separate encoder/decoder methods? Right now their names are all embedded into operand definitions.

Oct 19 2018, 2:23 PM
kparzysz committed rL344791: [Hexagon] Remove support for V4.
[Hexagon] Remove support for V4
Oct 19 2018, 10:33 AM
kparzysz committed rL344786: [Hexagon] Remove support for V4.
[Hexagon] Remove support for V4
Oct 19 2018, 8:39 AM