llvm / llvm/llvm-project

[RISC-V] Zilsd Improvements

Open
#169,392 4 comments 0 reactions 0 assignees View on GitHub
backend:RISC-V enhancement
Dominant language
LLVM
Stars
40.5k
Forks
18.7k
PR merge metrics
PR metrics pending

Description

I thought it might be good to centralise the TODO list for Zilsd support, so we can collaborate across orgs a little better.

Here are some possible improvements relating to Zilsd:
- [ ] Spills/Reloads (https://github.com/llvm/llvm-project/pull/153595)
- [ ] Callee-Saves?
- [ ] Allocation Priority of GPRPairs?

Craig remarked there's an interaction of Zilsd with Zfinx/Zdinx which we may need to resolve/improve. I don't have the details fully in my head.

NXP's tree with Zilsd support is here: https://github.com/nxp-auto-tools/llvm-project/tree/Zilsd/release/18.1.6 - but much of these changes have been reimplemented from scratch upstream already.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the listed Zilsd work, especially PR 153595, and compare it with NXP's Zilsd branch. The issue is complete only when the proposed spill/reload, callee-save, register-pair allocation, and Zfinx/Zdinx interaction improvements have defined resolutions, so further design discussion is needed first.

Written by the indexing model from the issue text.

Assessment

Domain
compilers
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.