This is an archive of the discontinued LLVM Phabricator instance.

Select `G_SADDE`, `G_UADDE`, `G_SSUBE` and `G_USUBE` for AArch64
Needs RevisionPublic

Authored by niwinanto on Jun 16 2023, 12:56 PM.

Details

Summary

Instruction select G_SADDE, G_UADDE, G_SSUBE and G_USUBE for AArch64.

Fix the issue: https://github.com/llvm/llvm-project/issues/59407

Diff Detail

Event Timeline

niwinanto created this revision.Jun 16 2023, 12:56 PM
niwinanto requested review of this revision.Jun 16 2023, 12:56 PM
Herald added a project: Restricted Project. · View Herald TranscriptJun 16 2023, 12:56 PM
tobias-stadler added a comment.EditedJun 16 2023, 1:48 PM

I fixed these same issues here https://reviews.llvm.org/D153164 2 minutes earlier. I do generate better code though, because I generate less instructions for carry-in setting and optimize these instructions away whenever possible. For >O0 I generate identical code to SelectionDag. I also have higher test coverage.

I fixed these same issues here https://reviews.llvm.org/D153164 2 minutes earlier. I do generate better code though, because I generate less instructions for carry-in setting and optimize these instructions away whenever possible. For >O0 I generate identical code to SelectionDag. I also have higher test coverage.

Ohh cool. Insane coincidence. My plan was to support missing instructions, other wise it can cause internal compiler crashes. I did not touch the optimization, hence less optimized code is expected.

I fixed these same issues here https://reviews.llvm.org/D153164 2 minutes earlier. I do generate better code though, because I generate less instructions for carry-in setting and optimize these instructions away whenever possible. For >O0 I generate identical code to SelectionDag. I also have higher test coverage.

Ohh cool. Insane coincidence. My plan was to support missing instructions, other wise it can cause internal compiler crashes. I did not touch the optimization, hence less optimized code is expected.

Insane indeed! By internal compiler crashes do you mean fallbacks? If so I generally don't class them as crashes (although certainly it's great to fix them).

Thanks for this work anyway, I'll review the other patch from @tobias-stadler

arsenm requested changes to this revision.Aug 23 2023, 6:50 PM

Can this be abandoned?

This revision now requires changes to proceed.Aug 23 2023, 6:50 PM

Can this be abandoned?

Yes, Its done https://reviews.llvm.org/D153164 here.