InstrProf: Check pointer size in raw profile
authorDuncan P. N. Exon Smith <dexonsmith@apple.com>
Sun, 23 Mar 2014 03:38:12 +0000 (03:38 +0000)
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>
Sun, 23 Mar 2014 03:38:12 +0000 (03:38 +0000)
commit0695b20d9adb555b89eb4e095ce377ff8ae04eee
tree7d7f2039958ff9ee9c384d932354d5c03908e041
parent4ff2dadebed5b428689bb6651b8f83688ce2d934
InstrProf: Check pointer size in raw profile

Since the profile can come from 32-bit machines, we need to check the
pointer size.  Change the magic number to facilitate this.

Adds tests for reading 32-bit and 64-bit binaries (both big- and
little-endian).  The tests write a binary using printf in RUN lines
(like raw-magic-but-no-header.test).  Assuming the bots don't complain,
this seems like a better way forward for testing RawInstrProfReader than
committing binary files.

<rdar://problem/16400648>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@204557 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/ProfileData/InstrProfReader.h
lib/ProfileData/InstrProfReader.cpp
test/tools/llvm-profdata/raw-32-bits-be.test [new file with mode: 0644]
test/tools/llvm-profdata/raw-32-bits-le.test [new file with mode: 0644]
test/tools/llvm-profdata/raw-64-bits-be.test [new file with mode: 0644]
test/tools/llvm-profdata/raw-64-bits-le.test [new file with mode: 0644]