[PATCH] D92715: [Clang][RISCV] Define RISC-V V builtin types
Hsiangkai Wang via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Sat Dec 5 18:39:27 PST 2020
HsiangKai added inline comments.
================
Comment at: clang/include/clang/Basic/RISCVVTypes.def:32
+// - ElBits is the size of one element in bits (SEW).
+//
+// - IsSigned is true for vectors of signed integer elements and
----------------
craig.topper wrote:
> NF argument isn't documented. And is always 1.
> NF argument isn't documented. And is always 1.
We could remove it in this patch. The field will be needed when we are going to upstream Zvlsseg implementation.
================
Comment at: clang/lib/AST/ASTContext.cpp:2178
+ Width = 0; \
+ Align = 128; \
+ break;
----------------
craig.topper wrote:
> Does this alignment need to be this high? The VMV0 register class in the backend has an alignment of 64 for spills. Just wondering why they aren't consistent.
> Does this alignment need to be this high? The VMV0 register class in the backend has an alignment of 64 for spills. Just wondering why they aren't consistent.
Indeed, it should be 64.
================
Comment at: clang/lib/CodeGen/CGDebugInfo.cpp:779
+
+ uint64_t Size = 0; // This is a scalable vector. See DwarfUnit.cpp:1414.
+ auto Align = getTypeAlignIfRequired(BT, CGM.getContext());
----------------
craig.topper wrote:
> Is there a function name in DwarfUnt.cpp that would be a better reference here? Line numbers aren't stable.
> Is there a function name in DwarfUnt.cpp that would be a better reference here? Line numbers aren't stable.
It should be `hasVectorBeenPadded()`. I have a downstream modification not upstreamed. We could remove the debug info for RVV types from this patch. I think it could be another patch for debug info for scalable vector types.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D92715/new/
https://reviews.llvm.org/D92715
More information about the cfe-commits
mailing list