[all-commits] [llvm/llvm-project] 065e03: [CSKY] Add CSKYConstantIslands Pass to lift or dup...
Zi Xuan Wu (Zeson) via All-commits
all-commits at lists.llvm.org
Tue Jan 11 00:18:55 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 065e0324e5e4a281abc199d6e4e45d7bc852a486
https://github.com/llvm/llvm-project/commit/065e0324e5e4a281abc199d6e4e45d7bc852a486
Author: Zi Xuan Wu <zixuan.wu at linux.alibaba.com>
Date: 2022-01-11 (Tue, 11 Jan 2022)
Changed paths:
M llvm/lib/Target/CSKY/CMakeLists.txt
M llvm/lib/Target/CSKY/CSKY.h
M llvm/lib/Target/CSKY/CSKYAsmPrinter.cpp
M llvm/lib/Target/CSKY/CSKYAsmPrinter.h
A llvm/lib/Target/CSKY/CSKYConstantIslandPass.cpp
M llvm/lib/Target/CSKY/CSKYInstrInfo.cpp
M llvm/lib/Target/CSKY/CSKYInstrInfo.h
M llvm/lib/Target/CSKY/CSKYTargetMachine.cpp
M llvm/test/CodeGen/CSKY/br.ll
M llvm/test/CodeGen/CSKY/indirectbr.ll
M llvm/test/CodeGen/CSKY/switch.ll
Log Message:
-----------
[CSKY] Add CSKYConstantIslands Pass to lift or duplicate constant pool entry
Loading constants inline is expensive on CSKY and it's in general better
to place the constant nearby in code space and then it can be loaded with a
simple 16/32 bit load instruction like lrw.
It needs lift or duplicates constant pool entry to make constant nearby so that lrw instruction can reach.
More information about the All-commits
mailing list