[all-commits] [llvm/llvm-project] 564b81: Add support for x87 registers on GISel register se...
MalaySanghiIntel via All-commits
all-commits at lists.llvm.org
Mon Mar 4 18:00:25 PST 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 564b81db8541468ce296d3bdcacab05b9581297c
https://github.com/llvm/llvm-project/commit/564b81db8541468ce296d3bdcacab05b9581297c
Author: MalaySanghiIntel <148750629+MalaySanghiIntel at users.noreply.github.com>
Date: 2024-03-05 (Tue, 05 Mar 2024)
Changed paths:
M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
M llvm/lib/Target/X86/GISel/X86RegisterBankInfo.cpp
M llvm/lib/Target/X86/GISel/X86RegisterBankInfo.h
M llvm/lib/Target/X86/X86GenRegisterBankInfo.def
M llvm/lib/Target/X86/X86RegisterBanks.td
A llvm/test/CodeGen/X86/GlobalISel/regbankselect-x87.ll
M llvm/test/CodeGen/X86/GlobalISel/x86_64-fallback.ll
Log Message:
-----------
Add support for x87 registers on GISel register selection (#83528)
We handle 3 register classes for x87 - rfp32, rfp64 and rfp80.
1. X87 registers are assigned a pseudo register class. We need a new
register bank for these classes.
2. We add bank information and enums for these.
3. Legalizer is updated to allow 32b and 64b even in absence of SSE.
This is required because with SSE enabled, x86 doesn't use fp stack and
instead uses SSE registers.
4. Functions in X86RegisterBankInfo need to decide whether to use the
pseudo classes or SSE-enabled classes. I add MachineInstr as an argument
to static helper function getPartialMappingIdx to this end.
Add/Update tests.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list