[PATCH] D26253: [CodeView] Hook CodeViewRecordIO up to the type serialization path.
Bob Haarman via llvm-commits
llvm-commits at lists.llvm.org
Wed Nov 2 14:16:43 PDT 2016
inglorion added a comment.
Overall looks good. I have a couple of questions I have posted inline. Once those are resolved, I'll accept.
================
Comment at: include/llvm/DebugInfo/CodeView/CodeViewRecordIO.h:26
+#include <stdint.h>
+
----------------
Out of curiosity, why move this include? And, while no the subject, why not use cstdint?
================
Comment at: lib/DebugInfo/CodeView/CodeViewRecordIO.cpp:148
Error CodeViewRecordIO::mapGuid(StringRef &Guid) {
+ if (16 > maxFieldLength())
+ return make_error<CodeViewError>(cv_error_code::insufficient_buffer);
----------------
Do we need to perform this check when reading, too? If not, could you move it after the assert(Guid.size() ...)?
Also, I would make a symbolic constant, particularly since it's repeated a number of times. Believe it or not, it wasn't immediately clear to me where the 16 came from (yes, I'm having my caffeine now).
================
Comment at: lib/DebugInfo/CodeView/TypeRecordMapping.cpp:119
+ // followed by the subrecord, followed by a continuation, and that entire
+ // sequence spawns `MaxRecordLength` bytes. So the record's length is
+ // calculated as follows.
----------------
s/spawns/spans/ ?
https://reviews.llvm.org/D26253
More information about the llvm-commits
mailing list