summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support/Path.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2013-06-10 15:27:39 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2013-06-10 15:27:39 +0000
commit1dc43065a7b02c6e52e2df8777bb231292c0ce04 (patch)
treeb8dc1d383aa44438927132b63bfe62871da9caf6 /llvm/lib/Support/Path.cpp
parentaecb66ec331bf1b1fc29dde9ca6ee09560039530 (diff)
downloadbcm5719-llvm-1dc43065a7b02c6e52e2df8777bb231292c0ce04.tar.gz
bcm5719-llvm-1dc43065a7b02c6e52e2df8777bb231292c0ce04.zip
Pass a StringRef to sys::identifyFileType.
llvm-svn: 183669
Diffstat (limited to 'llvm/lib/Support/Path.cpp')
-rw-r--r--llvm/lib/Support/Path.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/llvm/lib/Support/Path.cpp b/llvm/lib/Support/Path.cpp
index b6eeb1484cf..bf1ae44e0d0 100644
--- a/llvm/lib/Support/Path.cpp
+++ b/llvm/lib/Support/Path.cpp
@@ -38,9 +38,9 @@ bool Path::operator<(const Path& that) const {
}
LLVMFileType
-sys::identifyFileType(const char *Magic, unsigned Length) {
- assert(Magic && "Invalid magic number string");
- assert(Length >=4 && "Invalid magic number length");
+sys::identifyFileType(StringRef Magic) {
+ unsigned Length = Magic.size();
+ assert(Length >= 4 && "Invalid magic number length");
switch ((unsigned char)Magic[0]) {
case 0xDE: // 0x0B17C0DE = BC wraper
if (Magic[1] == (char)0xC0 && Magic[2] == (char)0x17 &&
@@ -53,7 +53,7 @@ sys::identifyFileType(const char *Magic, unsigned Length) {
break;
case '!':
if (Length >= 8)
- if (memcmp(Magic,"!<arch>\n",8) == 0)
+ if (memcmp(Magic.data(),"!<arch>\n",8) == 0)
return Archive_FileType;
break;
@@ -136,9 +136,9 @@ sys::identifyFileType(const char *Magic, unsigned Length) {
case 0x4d: // Possible MS-DOS stub on Windows PE file
if (Magic[1] == 0x5a) {
uint32_t off =
- *reinterpret_cast<const ulittle32_t *>(Magic + 0x3c);
+ *reinterpret_cast<const ulittle32_t *>(Magic.data() + 0x3c);
// PE/COFF file, either EXE or DLL.
- if (off < Length && memcmp(Magic + off, "PE\0\0",4) == 0)
+ if (off < Length && memcmp(Magic.data() + off, "PE\0\0",4) == 0)
return COFF_FileType;
}
break;
OpenPOWER on IntegriCloud