Page MenuHomePhabricator
Feed Advanced Search

Sat, Apr 20

aemerson committed rG428665255686: Revert r358800. Breaks Obsequi from the test suite. (authored by aemerson).
Revert r358800. Breaks Obsequi from the test suite.
Sat, Apr 20, 2:23 PM
aemerson committed rL358829: Revert r358800. Breaks Obsequi from the test suite..
Revert r358800. Breaks Obsequi from the test suite.
Sat, Apr 20, 2:23 PM

Fri, Apr 19

aemerson committed rGeac69e93779e: Revert "Revert "[GlobalISel] Add legalization support for non-power-2 loads and… (authored by aemerson).
Revert "Revert "[GlobalISel] Add legalization support for non-power-2 loads and…
Fri, Apr 19, 4:53 PM
aemerson committed rL358800: Revert "Revert "[GlobalISel] Add legalization support for non-power-2 loads and….
Revert "Revert "[GlobalISel] Add legalization support for non-power-2 loads and…
Fri, Apr 19, 4:53 PM
aemerson accepted D60895: [GlobalISel][AArch64] Legalize + select G_FRINT.
Fri, Apr 19, 4:35 PM · Restricted Project
aemerson accepted D60893: [GlobalISel] Add IRTranslator support for G_FRINT.
Fri, Apr 19, 2:40 PM · Restricted Project
aemerson accepted D60891: [GlobalISel] Add a G_FRINT opcode.

LGTM.

Fri, Apr 19, 2:40 PM · Restricted Project
aemerson committed rG36c5baef49b6: Revert "[GlobalISel] Add legalization support for non-power-2 loads and stores" (authored by aemerson).
Revert "[GlobalISel] Add legalization support for non-power-2 loads and stores"
Fri, Apr 19, 10:41 AM
aemerson committed rL358771: Revert "[GlobalISel] Add legalization support for non-power-2 loads and stores".
Revert "[GlobalISel] Add legalization support for non-power-2 loads and stores"
Fri, Apr 19, 10:41 AM

Thu, Apr 18

aemerson accepted D60877: [GlobalISel][AArch64] Legalize v8s8 loads.
Thu, Apr 18, 11:25 AM · Restricted Project
aemerson accepted D60881: [GlobalISel][AArch64] Legalize/select G_(S/Z/ANY)_EXT for v8s8s.
Thu, Apr 18, 11:20 AM · Restricted Project

Wed, Apr 17

aemerson committed rGd51adf056863: Add a getSizeInBits() accessor to MachineMemOperand. NFC. (authored by aemerson).
Add a getSizeInBits() accessor to MachineMemOperand. NFC.
Wed, Apr 17, 3:22 PM
aemerson committed rL358617: Add a getSizeInBits() accessor to MachineMemOperand. NFC..
Add a getSizeInBits() accessor to MachineMemOperand. NFC.
Wed, Apr 17, 3:21 PM
aemerson closed D60799: Add a getSizeInBits() accessor to MachineMemOperand. NFC..
Wed, Apr 17, 3:21 PM · Restricted Project
aemerson added inline comments to D60799: Add a getSizeInBits() accessor to MachineMemOperand. NFC..
Wed, Apr 17, 2:46 PM · Restricted Project
aemerson committed rGdaf6e66ac5d2: [GlobalISel] Add legalization support for non-power-2 loads and stores (authored by aemerson).
[GlobalISel] Add legalization support for non-power-2 loads and stores
Wed, Apr 17, 2:29 PM
aemerson committed rL358613: [GlobalISel] Add legalization support for non-power-2 loads and stores.
[GlobalISel] Add legalization support for non-power-2 loads and stores
Wed, Apr 17, 2:28 PM
aemerson closed D59971: [GlobalISel] Add legalization support for non-power-2 loads and stores.
Wed, Apr 17, 2:28 PM · Restricted Project
aemerson updated the diff for D59971: [GlobalISel] Add legalization support for non-power-2 loads and stores.

Yep, in that case might as well remove the entire helper.

Wed, Apr 17, 10:28 AM · Restricted Project

Tue, Apr 16

aemerson created D60799: Add a getSizeInBits() accessor to MachineMemOperand. NFC..
Tue, Apr 16, 3:17 PM · Restricted Project
aemerson added a comment to D59971: [GlobalISel] Add legalization support for non-power-2 loads and stores.

Reviving this as the overall approach was fine, it seems the alignment of non pow2 types is assumed to be the alignment of the next largest pow-2 type, so we don't need to worry about alignment during the breakdown.

I did however change the legalization method to not use extracts/inserts, but instead use extending loads and truncating stores, so that the artifacts get combined away and it Just Works.

I don't like how we do everything in bits, and then the mem operand forces bytes. Would it cost anything to switch MemOperands to also be in bits?

Tue, Apr 16, 3:03 PM · Restricted Project
aemerson updated the diff for D59971: [GlobalISel] Add legalization support for non-power-2 loads and stores.

Use MF.getMachineMemOperand()

Tue, Apr 16, 10:41 AM · Restricted Project
aemerson added a comment to D59971: [GlobalISel] Add legalization support for non-power-2 loads and stores.

Reviving this as the overall approach was fine, it seems the alignment of non pow2 types is assumed to be the alignment of the next largest pow-2 type, so we don't need to worry about alignment during the breakdown.

I did however change the legalization method to not use extracts/inserts, but instead use extending loads and truncating stores, so that the artifacts get combined away and it Just Works.

I don't like how we do everything in bits, and then the mem operand forces bytes. Would it cost anything to switch MemOperands to also be in bits?

Tue, Apr 16, 10:28 AM · Restricted Project

Mon, Apr 15

aemerson committed rG02a90ea73de5: [AArch64][GlobalISel] Don't do extending loads combine for non-pow-2 types. (authored by aemerson).
[AArch64][GlobalISel] Don't do extending loads combine for non-pow-2 types.
Mon, Apr 15, 3:34 PM
aemerson committed rL358458: [AArch64][GlobalISel] Don't do extending loads combine for non-pow-2 types..
[AArch64][GlobalISel] Don't do extending loads combine for non-pow-2 types.
Mon, Apr 15, 3:34 PM
aemerson updated the diff for D59971: [GlobalISel] Add legalization support for non-power-2 loads and stores.

New and improved patch.

Mon, Apr 15, 3:16 PM · Restricted Project
aemerson reclaimed D59971: [GlobalISel] Add legalization support for non-power-2 loads and stores.

Reviving this as the overall approach was fine, it seems the alignment of non pow2 types is assumed to be the alignment of the next largest pow-2 type, so we don't need to worry about alignment during the breakdown.

Mon, Apr 15, 3:14 PM · Restricted Project

Sun, Apr 14

aemerson committed rG946b1246d6c8: [GlobalISel] Enable CSE in the IRTranslator & legalizer for -O0 with constants… (authored by aemerson).
[GlobalISel] Enable CSE in the IRTranslator & legalizer for -O0 with constants…
Sun, Apr 14, 10:09 PM
aemerson committed rL358369: [GlobalISel] Enable CSE in the IRTranslator & legalizer for -O0 with constants….
[GlobalISel] Enable CSE in the IRTranslator & legalizer for -O0 with constants…
Sun, Apr 14, 10:09 PM
aemerson closed D60580: [GlobalISel] Enable CSE in the IRTranslator & legalizer for -O0 with constants only.
Sun, Apr 14, 10:08 PM · Restricted Project
aemerson committed rGd189680baa07: [GlobalISel] Introduce a CSEConfigBase class to allow targets to define their… (authored by aemerson).
[GlobalISel] Introduce a CSEConfigBase class to allow targets to define their…
Sun, Apr 14, 9:54 PM
aemerson committed rL358368: [GlobalISel] Introduce a CSEConfigBase class to allow targets to define their….
[GlobalISel] Introduce a CSEConfigBase class to allow targets to define their…
Sun, Apr 14, 9:54 PM

Fri, Apr 12

aemerson committed rG93e58d239667: [AArch64][GlobalISel] Enable copy elision in the pre-legalizer combine and fix… (authored by aemerson).
[AArch64][GlobalISel] Enable copy elision in the pre-legalizer combine and fix…
Fri, Apr 12, 5:32 PM
aemerson committed rL358318: [AArch64][GlobalISel] Enable copy elision in the pre-legalizer combine and fix….
[AArch64][GlobalISel] Enable copy elision in the pre-legalizer combine and fix…
Fri, Apr 12, 5:32 PM
aemerson closed D60579: [AArch64][GlobalISel] Enable copy elision in the pre-legalizer combine and fix a crash.
Fri, Apr 12, 5:31 PM · Restricted Project
aemerson updated the diff for D60580: [GlobalISel] Enable CSE in the IRTranslator & legalizer for -O0 with constants only.

Yep, forgot to git add it. It's in this new diff, but I'll add it as a separate commit. Ok to proceed?

Fri, Apr 12, 4:45 PM · Restricted Project
aemerson updated the diff for D60580: [GlobalISel] Enable CSE in the IRTranslator & legalizer for -O0 with constants only.

New patch uses a new CSEConfigBase class as the interface between TargetPassConfig and GlobalISel targets, since CodeGen can't depend on the GlobalISel lib.

Fri, Apr 12, 4:26 PM · Restricted Project
aemerson committed rGbdb5e4e4ca5f: [GlobalISel] Fix a crash when handling an invalid MVT during call lowering. (authored by aemerson).
[GlobalISel] Fix a crash when handling an invalid MVT during call lowering.
Fri, Apr 12, 3:07 PM
aemerson committed rL358314: [GlobalISel] Fix a crash when handling an invalid MVT during call lowering..
[GlobalISel] Fix a crash when handling an invalid MVT during call lowering.
Fri, Apr 12, 3:07 PM
aemerson committed rG2806fd01a126: [AArch64][GlobalISel] Fix a crash when selecting shufflevectors with an undef… (authored by aemerson).
[AArch64][GlobalISel] Fix a crash when selecting shufflevectors with an undef…
Fri, Apr 12, 2:31 PM
aemerson committed rL358312: [AArch64][GlobalISel] Fix a crash when selecting shufflevectors with an undef….
[AArch64][GlobalISel] Fix a crash when selecting shufflevectors with an undef…
Fri, Apr 12, 2:31 PM

Thu, Apr 11

aemerson added inline comments to D60580: [GlobalISel] Enable CSE in the IRTranslator & legalizer for -O0 with constants only.
Thu, Apr 11, 3:16 PM · Restricted Project
aemerson updated the diff for D60580: [GlobalISel] Enable CSE in the IRTranslator & legalizer for -O0 with constants only.

Fixed the places where custom legalization was not using full CSE.

Thu, Apr 11, 3:12 PM · Restricted Project
aemerson added inline comments to D60580: [GlobalISel] Enable CSE in the IRTranslator & legalizer for -O0 with constants only.
Thu, Apr 11, 3:05 PM · Restricted Project
aemerson created D60580: [GlobalISel] Enable CSE in the IRTranslator & legalizer for -O0 with constants only.
Thu, Apr 11, 1:55 PM · Restricted Project
aemerson created D60579: [AArch64][GlobalISel] Enable copy elision in the pre-legalizer combine and fix a crash.
Thu, Apr 11, 1:51 PM · Restricted Project
aemerson committed rG7e9355f870ae: [AArch64][GlobalISel] Flesh out vector load/store support for more types. (authored by aemerson).
[AArch64][GlobalISel] Flesh out vector load/store support for more types.
Thu, Apr 11, 1:41 PM
aemerson committed rL358223: [AArch64][GlobalISel] Flesh out vector load/store support for more types..
[AArch64][GlobalISel] Flesh out vector load/store support for more types.
Thu, Apr 11, 1:40 PM
aemerson committed rGb956051415a6: [AArch64][GlobalISel] Legalization and ISel support for load/stores of vectors… (authored by aemerson).
[AArch64][GlobalISel] Legalization and ISel support for load/stores of vectors…
Thu, Apr 11, 1:32 PM
aemerson committed rL358221: [AArch64][GlobalISel] Legalization and ISel support for load/stores of vectors….
[AArch64][GlobalISel] Legalization and ISel support for load/stores of vectors…
Thu, Apr 11, 1:32 PM
aemerson closed D60534: [AArch64][GlobalISel] Legalization and ISel support for load/stores of vectors of pointers.
Thu, Apr 11, 1:31 PM · Restricted Project
aemerson committed rT358206: Document how to use the 'vs' mode in compare.py.
Document how to use the 'vs' mode in compare.py
Thu, Apr 11, 11:24 AM
aemerson committed rL358206: Document how to use the 'vs' mode in compare.py.
Document how to use the 'vs' mode in compare.py
Thu, Apr 11, 11:15 AM
aemerson added inline comments to D60534: [AArch64][GlobalISel] Legalization and ISel support for load/stores of vectors of pointers.
Thu, Apr 11, 11:07 AM · Restricted Project

Wed, Apr 10

aemerson updated the diff for D60534: [AArch64][GlobalISel] Legalization and ISel support for load/stores of vectors of pointers.

Updated patch to not use the custom legalization for non-p0 vectors.

Wed, Apr 10, 4:47 PM · Restricted Project
aemerson added inline comments to D60534: [AArch64][GlobalISel] Legalization and ISel support for load/stores of vectors of pointers.
Wed, Apr 10, 4:28 PM · Restricted Project
aemerson committed rG213e0bde0481: [AArch64][GlobalISel] Make <2 x p0> = G_BUILD_VECTOR legal. (authored by aemerson).
[AArch64][GlobalISel] Make <2 x p0> = G_BUILD_VECTOR legal.
Wed, Apr 10, 4:05 PM
aemerson committed rGa7ff111b04ab: [AArch64][GlobalISel] Add legalizer support for <8 x s16> and <16 x s8> G_ADD. (authored by aemerson).
[AArch64][GlobalISel] Add legalizer support for <8 x s16> and <16 x s8> G_ADD.
Wed, Apr 10, 4:05 PM
aemerson committed rGae878dab0351: [AArch64][GlobalISel] Scalarize vector SDIV. (authored by aemerson).
[AArch64][GlobalISel] Scalarize vector SDIV.
Wed, Apr 10, 4:05 PM
aemerson committed rL358144: [AArch64][GlobalISel] Make <2 x p0> = G_BUILD_VECTOR legal..
[AArch64][GlobalISel] Make <2 x p0> = G_BUILD_VECTOR legal.
Wed, Apr 10, 4:04 PM
aemerson committed rL358143: [AArch64][GlobalISel] Add legalizer support for <8 x s16> and <16 x s8> G_ADD..
[AArch64][GlobalISel] Add legalizer support for <8 x s16> and <16 x s8> G_ADD.
Wed, Apr 10, 4:04 PM
aemerson committed rL358142: [AArch64][GlobalISel] Scalarize vector SDIV..
[AArch64][GlobalISel] Scalarize vector SDIV.
Wed, Apr 10, 4:04 PM
aemerson added inline comments to D60534: [AArch64][GlobalISel] Legalization and ISel support for load/stores of vectors of pointers.
Wed, Apr 10, 3:29 PM · Restricted Project
aemerson created D60534: [AArch64][GlobalISel] Legalization and ISel support for load/stores of vectors of pointers.
Wed, Apr 10, 12:37 PM · Restricted Project

Tue, Apr 9

aemerson committed rG9bf092d71989: [AArch64][GlobalISel] Add isel support for vector G_ICMP and G_ASHR & G_SHL (authored by aemerson).
[AArch64][GlobalISel] Add isel support for vector G_ICMP and G_ASHR & G_SHL
Tue, Apr 9, 2:25 PM
aemerson committed rG888dd5d198c9: [AArch64][GlobalISel] Legalize vector G_ICMP. (authored by aemerson).
[AArch64][GlobalISel] Legalize vector G_ICMP.
Tue, Apr 9, 2:25 PM
aemerson committed rG92d74f19cf47: [AArch64][GlobalISel] Add legalization for some vector G_SHL and G_ASHR. (authored by aemerson).
[AArch64][GlobalISel] Add legalization for some vector G_SHL and G_ASHR.
Tue, Apr 9, 2:25 PM
aemerson committed rG2b523f81625b: [GlobalISel][AArch64] Allow CallLowering to handle types which are normally… (authored by aemerson).
[GlobalISel][AArch64] Allow CallLowering to handle types which are normally…
Tue, Apr 9, 2:25 PM
aemerson committed rL358035: [AArch64][GlobalISel] Add isel support for vector G_ICMP and G_ASHR & G_SHL.
[AArch64][GlobalISel] Add isel support for vector G_ICMP and G_ASHR & G_SHL
Tue, Apr 9, 2:25 PM
aemerson closed D60436: [AArch64][GlobalISel] Add isel support for vector G_ICMP and G_ASHR & G_LSR.
Tue, Apr 9, 2:25 PM · Restricted Project
aemerson committed rL358034: [AArch64][GlobalISel] Legalize vector G_ICMP..
[AArch64][GlobalISel] Legalize vector G_ICMP.
Tue, Apr 9, 2:24 PM
aemerson closed D60435: [AArch64][GlobalISel] Legalize vector G_ICMP.
Tue, Apr 9, 2:24 PM · Restricted Project
aemerson committed rL358033: [AArch64][GlobalISel] Add legalization for some vector G_SHL and G_ASHR..
[AArch64][GlobalISel] Add legalization for some vector G_SHL and G_ASHR.
Tue, Apr 9, 2:24 PM
aemerson closed D60433: [AArch64][GlobalISel] Add legalization for some vector G_LSR and G_ASHR.
Tue, Apr 9, 2:24 PM · Restricted Project
aemerson committed rL358032: [GlobalISel][AArch64] Allow CallLowering to handle types which are normally.
[GlobalISel][AArch64] Allow CallLowering to handle types which are normally
Tue, Apr 9, 2:24 PM
aemerson closed D60425: [GlobalISel][AArch64] Allow CallLowering to handle types.
Tue, Apr 9, 2:24 PM · Restricted Project
aemerson accepted D60338: GlobalISel: Move computeValueLLTs.

LGTM.

Tue, Apr 9, 10:04 AM
aemerson added inline comments to D60425: [GlobalISel][AArch64] Allow CallLowering to handle types.
Tue, Apr 9, 10:03 AM · Restricted Project
aemerson added inline comments to D60435: [AArch64][GlobalISel] Legalize vector G_ICMP.
Tue, Apr 9, 9:52 AM · Restricted Project
aemerson added inline comments to D60433: [AArch64][GlobalISel] Add legalization for some vector G_LSR and G_ASHR.
Tue, Apr 9, 9:51 AM · Restricted Project

Mon, Apr 8

aemerson added a parent revision for D60436: [AArch64][GlobalISel] Add isel support for vector G_ICMP and G_ASHR & G_LSR: D60435: [AArch64][GlobalISel] Legalize vector G_ICMP.
Mon, Apr 8, 6:41 PM · Restricted Project
aemerson created D60436: [AArch64][GlobalISel] Add isel support for vector G_ICMP and G_ASHR & G_LSR.
Mon, Apr 8, 6:41 PM · Restricted Project
aemerson added a child revision for D60435: [AArch64][GlobalISel] Legalize vector G_ICMP: D60436: [AArch64][GlobalISel] Add isel support for vector G_ICMP and G_ASHR & G_LSR.
Mon, Apr 8, 6:41 PM · Restricted Project
aemerson added a parent revision for D60435: [AArch64][GlobalISel] Legalize vector G_ICMP: D60433: [AArch64][GlobalISel] Add legalization for some vector G_LSR and G_ASHR.
Mon, Apr 8, 6:32 PM · Restricted Project
aemerson added a child revision for D60433: [AArch64][GlobalISel] Add legalization for some vector G_LSR and G_ASHR: D60435: [AArch64][GlobalISel] Legalize vector G_ICMP.
Mon, Apr 8, 6:32 PM · Restricted Project
aemerson created D60435: [AArch64][GlobalISel] Legalize vector G_ICMP.
Mon, Apr 8, 6:32 PM · Restricted Project
aemerson added a parent revision for D60433: [AArch64][GlobalISel] Add legalization for some vector G_LSR and G_ASHR: D60425: [GlobalISel][AArch64] Allow CallLowering to handle types.
Mon, Apr 8, 6:22 PM · Restricted Project
aemerson added a child revision for D60425: [GlobalISel][AArch64] Allow CallLowering to handle types: D60433: [AArch64][GlobalISel] Add legalization for some vector G_LSR and G_ASHR.
Mon, Apr 8, 6:22 PM · Restricted Project
aemerson created D60433: [AArch64][GlobalISel] Add legalization for some vector G_LSR and G_ASHR.
Mon, Apr 8, 6:20 PM · Restricted Project
aemerson updated the diff for D60425: [GlobalISel][AArch64] Allow CallLowering to handle types.

Forgot to stage an additional change.

Mon, Apr 8, 3:54 PM · Restricted Project
aemerson created D60425: [GlobalISel][AArch64] Allow CallLowering to handle types.
Mon, Apr 8, 3:49 PM · Restricted Project

Fri, Apr 5

aemerson accepted D60339: GlobalISel: Fix invoke lowering creating invalid type registers.
Fri, Apr 5, 3:15 PM
aemerson added a comment to D60339: GlobalISel: Fix invoke lowering creating invalid type registers.

Is there a reasonably sized test?

Fri, Apr 5, 2:13 PM

Wed, Apr 3

aemerson accepted D60221: [GlobalISel] Add a G_FPOWI instruction for @llvm.powi.
Wed, Apr 3, 11:32 AM · Restricted Project
aemerson accepted D60218: [GlobalISel][AArch64] Legalize vector G_FPOW.
Wed, Apr 3, 11:32 AM · Restricted Project
aemerson accepted D60165: [AArch64][GlobalISel] Legalize G_FEXP2.

LGTM.

Wed, Apr 3, 9:17 AM · Restricted Project

Tue, Apr 2

aemerson closed D42512: [X86] When using Win64 ABI, exit with error if SSE is disabled for varargs.
Tue, Apr 2, 3:45 PM · Restricted Project
aemerson accepted D42512: [X86] When using Win64 ABI, exit with error if SSE is disabled for varargs.

Improved the error message with r357317

Tue, Apr 2, 3:45 PM · Restricted Project
aemerson accepted D60140: [GlobalISel] Add IRTranslator support for llvm.stacksave and llvm.stackrestore.

LGTM.

Tue, Apr 2, 3:40 PM · Restricted Project
aemerson accepted D60100: [AArch64][GlobalISel] Select llvm.aarch64.stlxr(i64, i64*).

LGTM.

Tue, Apr 2, 11:07 AM · Restricted Project