Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(413)

Unified Diff: lib/Bitcode/NaCl/TestUtils/NaClBitcodeMungeWriter.cpp

Issue 1156103003: Initial implementation of a record-level bitcode fuzzer. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-llvm.git@fuzz
Patch Set: Fix nits. Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: lib/Bitcode/NaCl/TestUtils/NaClBitcodeMungeWriter.cpp
diff --git a/lib/Bitcode/NaCl/TestUtils/NaClBitcodeMungeWriter.cpp b/lib/Bitcode/NaCl/TestUtils/NaClBitcodeMungeWriter.cpp
index da2907b1a9ee44af02ac208e9d5321f59451f7af..49f3cc28cef22c64751aa26497a1c86fa8b5b24b 100644
--- a/lib/Bitcode/NaCl/TestUtils/NaClBitcodeMungeWriter.cpp
+++ b/lib/Bitcode/NaCl/TestUtils/NaClBitcodeMungeWriter.cpp
@@ -377,6 +377,12 @@ bool WriteState::emitRecord(NaClBitstreamWriter &Writer,
if (!Flags.getTryToRecover())
return false;
}
+ if (atOutermostScope()) {
+ // Recover by ignoring abbreviation definition.
+ RecoverableError() << "Defining abbreviation outside block: "
+ << Record << "\n";
+ return Flags.getTryToRecover();
+ }
NaClBitCodeAbbrev *Abbrev = buildAbbrev(Record);
if (Abbrev == nullptr) {
markCurrentBlockWithOmittedAbbreviations();

Powered by Google App Engine
This is Rietveld 408576698