aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/BinaryFormat/Magic.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/BinaryFormat/Magic.cpp')
-rw-r--r--llvm/lib/BinaryFormat/Magic.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/llvm/lib/BinaryFormat/Magic.cpp b/llvm/lib/BinaryFormat/Magic.cpp
index 0e5a5ea279b5..025334f9f3f4 100644
--- a/llvm/lib/BinaryFormat/Magic.cpp
+++ b/llvm/lib/BinaryFormat/Magic.cpp
@@ -228,11 +228,14 @@ file_magic llvm::identify_magic(StringRef Magic) {
return file_magic::coff_object;
break;
- case 0x2d: // YAML '-'
+ case 0x2d: // YAML '-' MachO TBD.
if (startswith(Magic, "--- !tapi") || startswith(Magic, "---\narchs:"))
return file_magic::tapi_file;
break;
-
+ case 0x7b: // JSON '{' MachO TBD.
+ return file_magic::tapi_file;
+ break;
+
case 'D': // DirectX container file - DXBC
if (startswith(Magic, "DXBC"))
return file_magic::dxcontainer_object;
@@ -243,6 +246,11 @@ file_magic llvm::identify_magic(StringRef Magic) {
return file_magic::coff_object;
break;
+ case 0x4e: // ARM64X windows
+ if (Magic[1] == char(0xA6))
+ return file_magic::coff_object;
+ break;
+
default:
break;
}