[PATCH] D30971: [MIR] Support Customed Register Mask and CSRs
Oren Ben Simhon via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Mar 15 02:15:08 PDT 2017
oren_ben_simhon created this revision.
The MIR printer dumps a string that describe the register mask of a function.
A static predefined list of register masks matches a static list of strings.
However when the register mask is not from the static predefined list, there is no descriptor string and the printer fails.
This patch adds support to custom register mask printing and dumping.
Also the list of callee saved registers (describing the registers that must be preserved for the caller) might be dynamic.
As such this data needs to be dumped and parsed back to the Machine Register Info.
Repository:
rL LLVM
https://reviews.llvm.org/D30971
Files:
include/llvm/CodeGen/MIRYamlMapping.h
include/llvm/CodeGen/MachineRegisterInfo.h
lib/CodeGen/MIRParser/MIParser.cpp
lib/CodeGen/MIRParser/MIRParser.cpp
lib/CodeGen/MIRPrinter.cpp
lib/CodeGen/MachineRegisterInfo.cpp
test/CodeGen/MIR/Generic/dynamic-regmask.ll
test/CodeGen/MIR/X86/used-physical-register-info.mir
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D30971.91837.patch
Type: text/x-patch
Size: 16354 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170315/cb2cd647/attachment-0001.bin>
More information about the llvm-commits
mailing list