Page MenuHomePhabricator

kparzysz (Krzysztof Parzyszek)
User

Projects

User does not belong to any projects.

User Details

User Since
Apr 21 2014, 4:27 PM (247 w, 1 d)

Recent Activity

Thu, Dec 20

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

Mon, Dec 17

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
Mon, Dec 17, 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

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
kparzysz committed rC344786: [Hexagon] Remove support for V4.
[Hexagon] Remove support for V4
Oct 19 2018, 8:38 AM

Oct 16 2018

kparzysz accepted D53326: [python] [tests] Disable on known-broken arches.
Oct 16 2018, 2:02 PM
kparzysz added a comment to D52840: Include Python binding tests in CMake rules.

Hexagon clang builder has been failing since around the time of this commit as well:
http://lab.llvm.org:8011/builders/clang-hexagon-elf/builds/20617/steps/ninja%20check%201/logs/stdio

Oct 16 2018, 7:09 AM

Oct 12 2018

kparzysz added a comment to D53184: [LangRef] Clarify semantics of volatile operations..

What thread was that discussion in? Accesses to device-mapped memory can trap, what is the reason for the compiler to assume that they can't?

Oct 12 2018, 10:33 AM

Oct 11 2018

kparzysz accepted D53152: [Hexagon] Restrict compound instructions with constant value..
Oct 11 2018, 12:36 PM
kparzysz added inline comments to D53152: [Hexagon] Restrict compound instructions with constant value..
Oct 11 2018, 11:58 AM
kparzysz committed rL344271: [Hexagon] Eliminate potential sources of non-determinism in HCE.
[Hexagon] Eliminate potential sources of non-determinism in HCE
Oct 11 2018, 11:28 AM

Oct 9 2018

kparzysz accepted D53038: [Hexagon] Use GetLinkerPath method instead of hard-coded linker name..
Oct 9 2018, 1:23 PM

Oct 2 2018

kparzysz committed rL343596: [Hexagon] Fix extracting subvectors of non-HVX vNi1.
[Hexagon] Fix extracting subvectors of non-HVX vNi1
Oct 2 2018, 8:07 AM

Oct 1 2018

kparzysz committed rL343514: [Hexagon] Remove incorrect pattern for swiz.
[Hexagon] Remove incorrect pattern for swiz
Oct 1 2018, 11:26 AM

Sep 26 2018

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

Right at the beginning of CodeGenRegBank::computeComposites, I added

Sep 26 2018, 12:28 PM
kparzysz added a comment to D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.

So it should not be possible to do subreg_h32(V0), right?

Sep 26 2018, 11:59 AM
kparzysz added a comment to D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.

The warning seem to be plain wrong. The warning claims that

warning: SubRegIndex SystemZ::subreg_h64 and SystemZ::subreg_h32 compose ambiguously as SystemZ::subreg_hh32 or SystemZ::subreg_h32

This is based on V0: subreg_h64(V0) = F0D, subreg_h32(F0D) = F0S. So the composition (and subreg_hh32, user-defined as that composition) maps V0 to F0S. Now subreg_h32(V0) = F0S, so for V0 these two indeed agree. This is the cause for the warning.
However, for F0Q, subreg_h32(subreg_h64(F0Q)) = subreg_h32(F0D) = F0S, while subreg_h32(F0Q) = F2S. So, while these compositions agree on at least one register, they are not equal in general.

Sep 26 2018, 10:32 AM

Sep 21 2018

kparzysz committed rL342751: [Hexagon] Avoid functions with exception handling in HexagonConstExtenders.
[Hexagon] Avoid functions with exception handling in HexagonConstExtenders
Sep 21 2018, 10:44 AM

Sep 20 2018

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

I've looked into this and there is no way to distinguish the case of hh (no warning) and ll (emit a warning). They are both equivalent: a user-defined composition vs. pre-existing subreg.

Sep 20 2018, 8:21 AM

Sep 19 2018

kparzysz accepted D52237: [MachineVerifier] Relax checkLivenessAtDef regarding dead subreg defs.
Sep 19 2018, 10:03 AM

Sep 18 2018

kparzysz committed rL342492: [PostRASink] Make sure to remove subregisters from live-ins as well.
[PostRASink] Make sure to remove subregisters from live-ins as well
Sep 18 2018, 9:12 AM
kparzysz added a comment to D52237: [MachineVerifier] Relax checkLivenessAtDef regarding dead subreg defs.

In general, looking at a single instruction is not sufficient to tell whether a given register becomes dead or not, so I wouldn't worry about the limitation you mentioned. Cases that we can reliably handle are (sub)ranges corresponding to the parts of the register that is given in the operand (i.e. the entire register if there is no subregister).

Sep 18 2018, 9:04 AM
kparzysz added a comment to D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.

The conflict between user-defined and inferred compositions causes a warning in the SystemZ build:

warning: SubRegIndex SystemZ::subreg_h64 and SystemZ::subreg_h32 compose ambiguously as SystemZ::subreg_hh32 or SystemZ::subreg_h32
Sep 18 2018, 5:33 AM
kparzysz added a comment to D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.

Ping.

Sep 18 2018, 5:27 AM

Sep 12 2018

kparzysz committed rL342091: [Hexagon] Use shuffles when lowering "gather" shufflevectors.
[Hexagon] Use shuffles when lowering "gather" shufflevectors
Sep 12 2018, 3:16 PM
kparzysz committed rL342090: [Hexagon] Improve the selection algorithm in scalarizeShuffle.
[Hexagon] Improve the selection algorithm in scalarizeShuffle
Sep 12 2018, 3:12 PM
kparzysz committed rL342079: [Hexagon] Use legalized type for extracted elements in scalarizeShuffle.
[Hexagon] Use legalized type for extracted elements in scalarizeShuffle
Sep 12 2018, 2:00 PM

Sep 11 2018

kparzysz added inline comments to D50944: [Hexagon] [Test] Remove undef and infinite loop from test.
Sep 11 2018, 6:25 AM

Sep 10 2018

kparzysz committed rL341851: [Hexagon] Split large offsets into properly aligned addends.
[Hexagon] Split large offsets into properly aligned addends
Sep 10 2018, 11:50 AM

Sep 5 2018

kparzysz committed rL341478: [Hexagon] Ignore unnamed globals in HexagonConstExtenders.
[Hexagon] Ignore unnamed globals in HexagonConstExtenders
Sep 5 2018, 8:56 AM
kparzysz added inline comments to D51474: Consider CSRs in computeRegisterLiveness.
Sep 5 2018, 8:17 AM

Sep 4 2018

kparzysz committed rL341409: [Hexagon] Don't packetize new-value stores with any other stores.
[Hexagon] Don't packetize new-value stores with any other stores
Sep 4 2018, 2:09 PM
kparzysz added a comment to D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.

Ping.

Sep 4 2018, 9:18 AM

Aug 31 2018

kparzysz committed rL341264: [Hexagon] Don't access non-existent instructions.
[Hexagon] Don't access non-existent instructions
Aug 31 2018, 3:11 PM

Aug 30 2018

kparzysz committed rL341137: [Hexagon] Check validity of register class when generating bitsplit.
[Hexagon] Check validity of register class when generating bitsplit
Aug 30 2018, 3:27 PM
kparzysz added a comment to D51058: [zorg] Pass environment to getPollyBuildFactory and getAOSPBuildFactory.

Ping.

Aug 30 2018, 10:48 AM

Aug 28 2018

kparzysz accepted D51035: [TableGen] CodeGenDAGPatterns::GenerateVariants - basic caching of matching predicates.
Aug 28 2018, 6:37 AM

Aug 27 2018

kparzysz added a comment to D51035: [TableGen] CodeGenDAGPatterns::GenerateVariants - basic caching of matching predicates.

It should be possible to move this loop out of the nest and only have it iterate over the preexisting patterns. Could you see if that generates different .inc files (it shouldn't)?

Aug 27 2018, 1:10 PM

Aug 24 2018

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

Ping.

Aug 24 2018, 10:44 AM
kparzysz committed rC340622: [Hexagon] Remove unneeded strings from builtin definitions, NFC.
[Hexagon] Remove unneeded strings from builtin definitions, NFC
Aug 24 2018, 10:15 AM
kparzysz committed rL340622: [Hexagon] Remove unneeded strings from builtin definitions, NFC.
[Hexagon] Remove unneeded strings from builtin definitions, NFC
Aug 24 2018, 10:14 AM

Aug 23 2018

kparzysz abandoned D24631: [RFC] Implement variable-width register classes, step 1: API changes.

Already implemented.

Aug 23 2018, 9:16 AM
kparzysz abandoned D50648: [SystemZ] Enable trackSubRegLiveness.

The fixes have been committed individually.

Aug 23 2018, 9:15 AM
kparzysz accepted D50637: [CodeGen] Set FrameSetup/FrameDestroy on BUNDLE instructions.
Aug 23 2018, 7:13 AM

Aug 22 2018

kparzysz committed rL340447: [Hexagon] Enable interleaving in loop vectorizer.
[Hexagon] Enable interleaving in loop vectorizer
Aug 22 2018, 1:15 PM

Aug 21 2018

kparzysz created D51058: [zorg] Pass environment to getPollyBuildFactory and getAOSPBuildFactory.
Aug 21 2018, 12:44 PM
kparzysz committed rL340318: [RegisterCoalscer] Manually remove leftover segments when commuting def.
[RegisterCoalscer] Manually remove leftover segments when commuting def
Aug 21 2018, 12:02 PM