Skip to content

Commit bf8c754

Browse files
committed
[Clang][OHOS] Keep ARM ABI selection logic in sync between Clang and LLVM
1 parent 557299c commit bf8c754

File tree

2 files changed

+3
-1
lines changed

2 files changed

+3
-1
lines changed

clang/lib/Basic/Targets/ARM.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -258,6 +258,7 @@ ARMTargetInfo::ARMTargetInfo(const llvm::Triple &Triple,
258258
bool IsOpenBSD = Triple.isOSOpenBSD();
259259
bool IsNetBSD = Triple.isOSNetBSD();
260260
bool IsHaiku = Triple.isOSHaiku();
261+
bool IsOHOS = Triple.isOHOSFamily();
261262

262263
// FIXME: the isOSBinFormatMachO is a workaround for identifying a Darwin-like
263264
// environment where size_t is `unsigned long` rather than `unsigned int`
@@ -324,7 +325,7 @@ ARMTargetInfo::ARMTargetInfo(const llvm::Triple &Triple,
324325
default:
325326
if (IsNetBSD)
326327
setABI("apcs-gnu");
327-
else if (IsFreeBSD || IsOpenBSD || IsHaiku)
328+
else if (IsFreeBSD || IsOpenBSD || IsHaiku || IsOHOS)
328329
setABI("aapcs-linux");
329330
else
330331
setABI("aapcs");

llvm/lib/TargetParser/ARMTargetParser.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -519,6 +519,7 @@ StringRef ARM::computeDefaultTargetABI(const Triple &TT, StringRef CPU) {
519519
case Triple::GNUEABIHF:
520520
case Triple::MuslEABI:
521521
case Triple::MuslEABIHF:
522+
case Triple::OpenHOS:
522523
return "aapcs-linux";
523524
case Triple::EABIHF:
524525
case Triple::EABI:

0 commit comments

Comments
 (0)