[Lldb-commits] [compiler-rt] [libcxx] [llvm] [lldb] [flang] [clang] [clang-tools-extra] [libc] [PowerPC] Support mcmodel=large for AIX (PR #70652)
@@ -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()) { chenzheng1030 wrote: AIX seems good now. However I think we still have one active ppc32 target like SPE working on PPC. So now clang can not accept any code model for target `-target powerpcspe`. >From simple testing, this target supports all these three models. 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
[Lldb-commits] [compiler-rt] [flang] [libcxx] [libc] [lldb] [clang-tools-extra] [clang] [llvm] [PowerPC] Support mcmodel=large for AIX (PR #70652)
@@ -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()) { chenzheng1030 wrote: ``` int b = 20; int foo() { return b; } ``` - Small code model: ``` .foo: # %bb.0:# %entry lwz 3, L..C0(2) # @b ;; Use one instruction to load b's address in the TOC. So only 2^16 bytes TOC range can be accessed because of encoding limitation of `lwz` instruction. lwz 3, 0(3) blr ``` - large code model ``` .foo: # %bb.0:# %entry addis 3, L..C0@u(2) lwz 3, L..C0@l(3) ;; Use two instructions to load b's address. So that bigger TOC range can be accessed. lwz 3, 0(3) blr ``` 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
[Lldb-commits] [compiler-rt] [flang] [libcxx] [libc] [lldb] [clang-tools-extra] [clang] [llvm] [PowerPC] Support mcmodel=large for AIX (PR #70652)
https://github.com/chenzheng1030 approved this pull request. @ecnelises Let's first fix this for AIX. Could you please help to create a github issue for the SPE? Thanks. 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
[Lldb-commits] [lldb] ed88e57 - [LLDB] Fix buildbots breakage due to TestGuessLanguage.py
Author: Chen Zheng Date: 2021-06-16T05:03:06Z New Revision: ed88e57f6587ea51d1c106acbdd82a083f746606 URL: https://github.com/llvm/llvm-project/commit/ed88e57f6587ea51d1c106acbdd82a083f746606 DIFF: https://github.com/llvm/llvm-project/commit/ed88e57f6587ea51d1c106acbdd82a083f746606.diff LOG: [LLDB] Fix buildbots breakage due to TestGuessLanguage.py Fix LLDB buidbot breakage due to D104291 Differential Revision: https://reviews.llvm.org/D104291 Added: Modified: lldb/test/API/commands/frame/language/TestGuessLanguage.py Removed: diff --git a/lldb/test/API/commands/frame/language/TestGuessLanguage.py b/lldb/test/API/commands/frame/language/TestGuessLanguage.py index f20f184e3910b..1adab53a4ebc1 100644 --- a/lldb/test/API/commands/frame/language/TestGuessLanguage.py +++ b/lldb/test/API/commands/frame/language/TestGuessLanguage.py @@ -66,7 +66,7 @@ def do_test(self): thread = threads[0] c_frame_language = lldb.eLanguageTypeC99 -cxx_frame_language = lldb.eLanguageTypeC_plus_plus +cxx_frame_language = lldb.eLanguageTypeC_plus_plus_11 # gcc emits DW_LANG_C89 even if -std=c99 was specified if "gcc" in self.getCompiler(): c_frame_language = lldb.eLanguageTypeC89 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits