diff options
Diffstat (limited to 'llvm/tools')
-rw-r--r-- | llvm/tools/llvm-cov/CoverageExporterJson.cpp | 1 | ||||
-rw-r--r-- | llvm/tools/llvm-jitlink/llvm-jitlink.cpp | 8 | ||||
-rw-r--r-- | llvm/tools/llvm-size/Opts.td | 3 | ||||
-rw-r--r-- | llvm/tools/llvm-size/llvm-size.cpp | 6 |
4 files changed, 12 insertions, 6 deletions
diff --git a/llvm/tools/llvm-cov/CoverageExporterJson.cpp b/llvm/tools/llvm-cov/CoverageExporterJson.cpp index ff86c8d..4c07c05 100644 --- a/llvm/tools/llvm-cov/CoverageExporterJson.cpp +++ b/llvm/tools/llvm-cov/CoverageExporterJson.cpp @@ -118,6 +118,7 @@ json::Value renderCondState(const coverage::MCDCRecord::CondState CondState) { case coverage::MCDCRecord::MCDC_False: return json::Value(false); } + llvm_unreachable("Unknown llvm::coverage::MCDCRecord::CondState enum"); } json::Array gatherTestVectors(coverage::MCDCRecord &Record) { diff --git a/llvm/tools/llvm-jitlink/llvm-jitlink.cpp b/llvm/tools/llvm-jitlink/llvm-jitlink.cpp index 31bf6a9..e09ddb4 100644 --- a/llvm/tools/llvm-jitlink/llvm-jitlink.cpp +++ b/llvm/tools/llvm-jitlink/llvm-jitlink.cpp @@ -1519,10 +1519,10 @@ private: static StringRef detectStubKind(const Session::MemoryRegionInfo &Stub) { using namespace support::endian; - auto Armv7MovWTle = byte_swap<uint32_t, endianness::little>(0xe300c000); - auto Armv7BxR12le = byte_swap<uint32_t, endianness::little>(0xe12fff1c); - auto Thumbv7MovWTle = byte_swap<uint32_t, endianness::little>(0x0c00f240); - auto Thumbv7BxR12le = byte_swap<uint16_t, endianness::little>(0x4760); + auto Armv7MovWTle = byte_swap<uint32_t>(0xe300c000, endianness::little); + auto Armv7BxR12le = byte_swap<uint32_t>(0xe12fff1c, endianness::little); + auto Thumbv7MovWTle = byte_swap<uint32_t>(0x0c00f240, endianness::little); + auto Thumbv7BxR12le = byte_swap<uint16_t>(0x4760, endianness::little); MemoryMatcher M(Stub.getContent()); if (M.matchMask(Thumbv7MovWTle)) { diff --git a/llvm/tools/llvm-size/Opts.td b/llvm/tools/llvm-size/Opts.td index edae43f..88e39f2 100644 --- a/llvm/tools/llvm-size/Opts.td +++ b/llvm/tools/llvm-size/Opts.td @@ -21,6 +21,9 @@ def grp_mach_o : OptionGroup<"kind">, HelpText<"OPTIONS (Mach-O specific)">; def arch_EQ : Joined<["--"], "arch=">, HelpText<"architecture(s) from a Mach-O file to dump">, Group<grp_mach_o>; def : Separate<["--", "-"], "arch">, Alias<arch_EQ>; def l : F<"l", "When format is darwin, use long format to include addresses and offsets">, Group<grp_mach_o>; +def exclude_pagezero + : FF<"exclude-pagezero", "Do not include __PAGEZERO segment in totals">, + Group<grp_mach_o>; def : F<"A", "Alias for --format">, Alias<format_EQ>, AliasArgs<["sysv"]>; def : F<"B", "Alias for --format">, Alias<format_EQ>, AliasArgs<["berkeley"]>; diff --git a/llvm/tools/llvm-size/llvm-size.cpp b/llvm/tools/llvm-size/llvm-size.cpp index acc7843..ec94db4 100644 --- a/llvm/tools/llvm-size/llvm-size.cpp +++ b/llvm/tools/llvm-size/llvm-size.cpp @@ -79,6 +79,7 @@ static bool DarwinLongFormat; static RadixTy Radix = RadixTy::decimal; static bool TotalSizes; static bool HasMachOFiles = false; +static bool ExcludePageZero = false; static std::vector<std::string> InputFilenames; @@ -313,7 +314,7 @@ static void printDarwinSegmentSizes(MachOObjectFile *MachO) { total_data += Seg.vmsize; else if (SegmentName == "__OBJC") total_objc += Seg.vmsize; - else + else if (!ExcludePageZero || SegmentName != "__PAGEZERO") total_others += Seg.vmsize; } } else if (Load.C.cmd == MachO::LC_SEGMENT) { @@ -339,7 +340,7 @@ static void printDarwinSegmentSizes(MachOObjectFile *MachO) { total_data += Seg.vmsize; else if (SegmentName == "__OBJC") total_objc += Seg.vmsize; - else + else if (!ExcludePageZero || SegmentName != "__PAGEZERO") total_others += Seg.vmsize; } } @@ -914,6 +915,7 @@ int llvm_size_main(int argc, char **argv, const llvm::ToolContext &) { ELFCommons = Args.hasArg(OPT_common); DarwinLongFormat = Args.hasArg(OPT_l); + ExcludePageZero = Args.hasArg(OPT_exclude_pagezero); TotalSizes = Args.hasArg(OPT_totals); StringRef V = Args.getLastArgValue(OPT_format_EQ, "berkeley"); if (V == "berkeley") |