================ @@ -5723,16 +5723,14 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA, if (Arg *A = Args.getLastArg(options::OPT_mcmodel_EQ)) { StringRef CM = A->getValue(); bool Ok = false; - if (Triple.isOSAIX() && CM == "medium") { + if (Triple.isOSAIX() && CM == "medium") CM = "large"; - Ok = true; - } if (Triple.isAArch64(64)) { Ok = CM == "tiny" || CM == "small" || CM == "large"; if (CM == "large" && RelocationModel != llvm::Reloc::Static) D.Diag(diag::err_drv_argument_only_allowed_with) << A->getAsString(Args) << "-fno-pic"; - } else if (Triple.isPPC64()) { + } else if (Triple.isPPC64() || Triple.isOSAIX()) { ---------------- MaskRay wrote:
Hi, may I ask what `-mcmodel=large` does on a 32-bit AIX? `-mcmodel=large` is generally not supported for 32-bit systems and it seems that AIX does something special here. GCC's rs6000 doc says: > Generate PowerPC64 code for the large model: The TOC may be up to 4G in size. > Other data and code is only limited by the 64-bit address space. https://github.com/llvm/llvm-project/pull/70652 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits