[PATCH] D102894: [SystemZ] Emit .gnu_attribute for an externally visible vector abi.
Jonas Paulsson via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 25 16:48:44 PDT 2021
jonpa updated this revision to Diff 354629.
jonpa added a comment.
Move the handling of GNU attributes into MCELFStreamer. This way the target only has to call emitGNUAttribute(), and the section will later be created at the end of the file by MCELFStreamer.
Since I am not quite sure how a target might handle attributes in multiple sections (like ARM seems to do), I kept the GNU attributes separate from the other ones, so that the target can handle the Contents vector as before, while GNU attributes are collected independently of them and emitted after all else.
Nit: could createAttributesSection() take a reference of a template without the size specification? I don't think there will be 64 gnu attributes...
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D102894/new/
https://reviews.llvm.org/D102894
Files:
llvm/include/llvm/MC/MCELFStreamer.h
llvm/include/llvm/MC/MCParser/MCAsmParser.h
llvm/include/llvm/MC/MCStreamer.h
llvm/lib/MC/MCAsmStreamer.cpp
llvm/lib/MC/MCELFStreamer.cpp
llvm/lib/MC/MCParser/MCAsmParser.cpp
llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
llvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
llvm/lib/Target/SystemZ/SystemZAsmPrinter.h
llvm/test/CodeGen/SystemZ/vec-abi-gnuattr-00.ll
llvm/test/CodeGen/SystemZ/vec-abi-gnuattr-01.ll
llvm/test/CodeGen/SystemZ/vec-abi-gnuattr-02.ll
llvm/test/CodeGen/SystemZ/vec-abi-gnuattr-03.ll
llvm/test/CodeGen/SystemZ/vec-abi-gnuattr-04.ll
llvm/test/CodeGen/SystemZ/vec-abi-gnuattr-05.ll
llvm/test/CodeGen/SystemZ/vec-abi-gnuattr-06.ll
llvm/test/CodeGen/SystemZ/vec-abi-gnuattr-07.ll
llvm/test/CodeGen/SystemZ/vec-abi-gnuattr-08.ll
llvm/test/CodeGen/SystemZ/vec-abi-gnuattr-09.ll
llvm/test/CodeGen/SystemZ/vec-abi-gnuattr-10.ll
llvm/test/MC/SystemZ/gnu-attributes.s
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D102894.354629.patch
Type: text/x-patch
Size: 46211 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210625/96453063/attachment.bin>
More information about the llvm-commits
mailing list