[llvm] r231685 - InstrProf: Allow hexadecimal function hashes in proftext format

Justin Bogner mail at justinbogner.com
Mon Mar 9 11:54:50 PDT 2015


Author: bogner
Date: Mon Mar  9 13:54:49 2015
New Revision: 231685

URL: http://llvm.org/viewvc/llvm-project?rev=231685&view=rev
Log:
InstrProf: Allow hexadecimal function hashes in proftext format

Modified:
    llvm/trunk/lib/ProfileData/InstrProfReader.cpp
    llvm/trunk/test/tools/llvm-profdata/general.proftext

Modified: llvm/trunk/lib/ProfileData/InstrProfReader.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/ProfileData/InstrProfReader.cpp?rev=231685&r1=231684&r2=231685&view=diff
==============================================================================
--- llvm/trunk/lib/ProfileData/InstrProfReader.cpp (original)
+++ llvm/trunk/lib/ProfileData/InstrProfReader.cpp Mon Mar  9 13:54:49 2015
@@ -113,7 +113,7 @@ std::error_code TextInstrProfReader::rea
   // Read the function hash.
   if (Line.is_at_end())
     return error(instrprof_error::truncated);
-  if ((Line++)->getAsInteger(10, Record.Hash))
+  if ((Line++)->getAsInteger(0, Record.Hash))
     return error(instrprof_error::malformed);
 
   // Read the number of counters.

Modified: llvm/trunk/test/tools/llvm-profdata/general.proftext
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-profdata/general.proftext?rev=231685&r1=231684&r2=231685&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-profdata/general.proftext (original)
+++ llvm/trunk/test/tools/llvm-profdata/general.proftext Mon Mar  9 13:54:49 2015
@@ -38,6 +38,14 @@ large_numbers
 # LARGENUM-NEXT: Function count: 2305843009213693952
 # LARGENUM-NEXT: Block counts: [1152921504606846976, 576460752303423488, 288230376151711744, 144115188075855872, 72057594037927936]
 
+# RUN: llvm-profdata show %t.profdata --function hex_hash | FileCheck %s -check-prefix=HEX-HASH
+hex_hash
+0x1234
+1
+0
+# HEX-HASH: Hash: 0x0000000000001234
+# HEX-HASH-NEXT: Counters: 1
+
 # RUN: llvm-profdata show %t.profdata --function NOSUCHFUNC | FileCheck %s -check-prefix=NOSUCHFUNC
 # NOSUCHFUNC-NOT: Counters:
 # NOSUCHFUNC: Functions shown: 0
@@ -46,11 +54,11 @@ large_numbers
 # SOMEFUNCS: Counters:
 # SOMEFUNCS: function_count_only:
 # SOMEFUNCS: large_numbers:
-# SOMEFUNCS: Functions shown: 2
+# SOMEFUNCS: Functions shown: 3
 
 # RUN: llvm-profdata show %t.profdata | FileCheck %s -check-prefix=SUMMARY
 # SUMMARY-NOT: Counters:
 # SUMMARY-NOT: Functions shown:
-# SUMMARY: Total functions: 3
+# SUMMARY: Total functions: 4
 # SUMMARY: Maximum function count: 2305843009213693952
 # SUMMARY: Maximum internal block count: 1152921504606846976





More information about the llvm-commits mailing list