nickdesaulniers added inline comments.
================
Comment at: lib/Driver/ToolChains/Gnu.cpp:357-364
+ const char* EndianFlag = "-EL";
+ if (isArmBigEndian(Triple, Args)) {
+ EndianFlag = "-EB";
+ arm::appendBE8LinkFlag(Args, CmdArgs, Triple);
+ }
+ else if (Arch == llvm::Triple::aarch64_be)
+ EndianFlag = "-EB";
----------------
nickdesaulniers wrote:
> ```
> bool IsBigEndian = isArmBigEndian(Triple, Args);
> if (IsBigEndian)
> arm::appendBE8LinkFlag(Args, CmdArgs, Triple);
> IsBigEndian |= Arch == llvm::Triple::aarch64_be;
> CmdArgs.push_back(IsBigEndian ? "-EB" : "-EL");
> ```
`IsBigEndian |= Arch == llvm::Triple::aarch64_be;`
should be:
`IsBigEndian = IsBigEndian || Arch == llvm::Triple::aarch64_be;`
in order to not evaluate `Arch == llvm::Triple::aarch64_b` if `IsBigEndian` is
already true.
https://reviews.llvm.org/D52784
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits