summaryrefslogtreecommitdiffstats
path: root/lld/COFF/Chunks.h
diff options
context:
space:
mode:
Diffstat (limited to 'lld/COFF/Chunks.h')
-rw-r--r--lld/COFF/Chunks.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/lld/COFF/Chunks.h b/lld/COFF/Chunks.h
index 7b6bdeae4234..bb919037ecc2 100644
--- a/lld/COFF/Chunks.h
+++ b/lld/COFF/Chunks.h
@@ -18,6 +18,7 @@
#include "llvm/ADT/iterator_range.h"
#include "llvm/MC/StringTableBuilder.h"
#include "llvm/Object/COFF.h"
+#include "llvm/Object/WindowsMachineFlag.h"
#include <utility>
#include <vector>
@@ -116,6 +117,7 @@ public:
bool isHotPatchable() const;
MachineTypes getMachine() const;
+ llvm::Triple::ArchType getArch() const;
std::optional<chpe_range_type> getArm64ECRangeType() const;
protected:
@@ -437,6 +439,10 @@ inline MachineTypes Chunk::getMachine() const {
return static_cast<const NonSectionChunk *>(this)->getMachine();
}
+inline llvm::Triple::ArchType Chunk::getArch() const {
+ return llvm::getMachineArchType(getMachine());
+}
+
inline std::optional<chpe_range_type> Chunk::getArm64ECRangeType() const {
// Data sections don't need codemap entries.
if (!(getOutputCharacteristics() & llvm::COFF::IMAGE_SCN_MEM_EXECUTE))