From ae9f7fcc65aed800db82aaa55e5e72322f20af02 Mon Sep 17 00:00:00 2001 From: Mark Seaborn Date: Sun, 23 Jun 2013 18:48:56 -0700 Subject: PNaCl wire format: Remove the top-level TRIPLE record Currently, the triple that gets put into pexes is "armv7-none-linux-gnueabi". This is a wart that we don't want to keep. We can remove the triple entirely; PNaCl doesn't need it. We don't need to add a triple back at read time: (pnacl-)llc tells the backend explicitly what target to use. I'm leaving MODULE_CODE_TRIPLE defined in the enum for now because pnacl-bcanalyzer still refers to it. BUG=https://code.google.com/p/nativeclient/issues/detail?id=3505 TEST=PNaCl toolchain trybots + GCC torture tests + Spec2k Review URL: https://codereview.chromium.org/17321009 --- lib/Bitcode/NaCl/Reader/NaClBitcodeReader.cpp | 53 --------------------------- 1 file changed, 53 deletions(-) (limited to 'lib/Bitcode/NaCl/Reader/NaClBitcodeReader.cpp') diff --git a/lib/Bitcode/NaCl/Reader/NaClBitcodeReader.cpp b/lib/Bitcode/NaCl/Reader/NaClBitcodeReader.cpp index f829642f20..c38df6c9ad 100644 --- a/lib/Bitcode/NaCl/Reader/NaClBitcodeReader.cpp +++ b/lib/Bitcode/NaCl/Reader/NaClBitcodeReader.cpp @@ -1466,21 +1466,6 @@ bool NaClBitcodeReader::ParseModule(bool Resume) { } break; } - case naclbitc::MODULE_CODE_TRIPLE: { // TRIPLE: [strchr x N] - std::string S; - if (ConvertToString(Record, 0, S)) - return Error("Invalid MODULE_CODE_TRIPLE record"); - - // @LOCALMOD-BEGIN - // This hack is needed in order to get Clang compiled binaries - // working with the Gold plugin, until PNaCl backend is introduced - // in lib/Target/PNaCl. - if (S == "le32-unknown-nacl") - S = "armv7-none-linux-gnueabi"; - // @LOCALMOD-END - TheModule->setTargetTriple(S); - break; - } case naclbitc::MODULE_CODE_DATALAYOUT: { // DATALAYOUT: [strchr x N] std::string S; if (ConvertToString(Record, 0, S)) @@ -1689,44 +1674,6 @@ bool NaClBitcodeReader::ParseBitcodeInto(Module *M) { } } -bool NaClBitcodeReader::ParseModuleTriple(std::string &Triple) { - DEBUG(dbgs() << "-> ParseModuleTriple\n"); - if (Stream.EnterSubBlock(naclbitc::MODULE_BLOCK_ID)) - return Error("Malformed block record"); - - SmallVector Record; - - // Read all the records for this module. - while (1) { - NaClBitstreamEntry Entry = Stream.advanceSkippingSubblocks(); - - switch (Entry.Kind) { - case NaClBitstreamEntry::SubBlock: // Handled for us already. - case NaClBitstreamEntry::Error: - return Error("malformed module block"); - case NaClBitstreamEntry::EndBlock: - DEBUG(dbgs() << "<- ParseModuleTriple\n"); - return false; - case NaClBitstreamEntry::Record: - // The interesting case. - break; - } - - // Read a record. - switch (Stream.readRecord(Entry.ID, Record)) { - default: break; // Default behavior, ignore unknown content. - case naclbitc::MODULE_CODE_TRIPLE: { // TRIPLE: [strchr x N] - std::string S; - if (ConvertToString(Record, 0, S)) - return Error("Invalid MODULE_CODE_TRIPLE record"); - Triple = S; - break; - } - } - Record.clear(); - } -} - /// ParseMetadataAttachment - Parse metadata attachments. bool NaClBitcodeReader::ParseMetadataAttachment() { DEBUG(dbgs() << "-> ParseMetadataAttachment\n"); -- cgit v1.2.3-18-g5258