https://github.com/chenzheng1030 edited
https://github.com/llvm/llvm-project/pull/96109
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -0,0 +1,8 @@
+// RUN: %clang_cc1 -emit-llvm -triple powerpc64le-unknown-unknown -verify %s
chenzheng1030 wrote:
nit: can you also add run lines for AIX 32 and 64 bit?
https://github.com/llvm/llvm-project/pull/96109
https://github.com/chenzheng1030 approved this pull request.
LGTM except a nit.
https://github.com/llvm/llvm-project/pull/96109
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/chenzheng1030 updated
https://github.com/llvm/llvm-project/pull/93267
>From 17505893b2b48969512e3c2e8433a6446429f65e Mon Sep 17 00:00:00 2001
From: Chen Zheng
Date: Thu, 23 May 2024 22:59:48 -0400
Subject: [PATCH 1/2] [PowerPC] Diagnose musttail instead of crash inside
backe
https://github.com/chenzheng1030 updated
https://github.com/llvm/llvm-project/pull/93267
>From 17505893b2b48969512e3c2e8433a6446429f65e Mon Sep 17 00:00:00 2001
From: Chen Zheng
Date: Thu, 23 May 2024 22:59:48 -0400
Subject: [PATCH 1/2] [PowerPC] Diagnose musttail instead of crash inside
backe
chenzheng1030 wrote:
Patch updated...
https://github.com/llvm/llvm-project/pull/93267
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: Chen Zheng
Date: 2024-05-29T21:52:55-04:00
New Revision: 2b1d1c51f6e321267cc86e9db7808298c59caf0e
URL:
https://github.com/llvm/llvm-project/commit/2b1d1c51f6e321267cc86e9db7808298c59caf0e
DIFF:
https://github.com/llvm/llvm-project/commit/2b1d1c51f6e321267cc86e9db7808298c59caf0e.diff
LO
chenzheng1030 wrote:
PPC buildbot fails at another place with above fix:
https://lab.llvm.org/buildbot/#/builders/230/builds/29066
Commit 2b1d1c51f6e321267cc86e9db7808298c59caf0e to fix the failure.
https://github.com/llvm/llvm-project/pull/81545
___
@@ -743,6 +743,20 @@ bool Sema::checkMustTailAttr(const Stmt *St, const Attr
&MTA) {
CallerType.Func = CallerDecl->getType()->getAs();
}
+ if (Context.getTargetInfo().getTriple().isPPC()) {
+if (Context.getTargetInfo().getTriple().isOSAIX())
+ return Diag(St->
https://github.com/chenzheng1030 deleted
https://github.com/llvm/llvm-project/pull/93267
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -743,6 +743,20 @@ bool Sema::checkMustTailAttr(const Stmt *St, const Attr
&MTA) {
CallerType.Func = CallerDecl->getType()->getAs();
}
+ if (Context.getTargetInfo().getTriple().isPPC()) {
+if (Context.getTargetInfo().getTriple().isOSAIX())
+ return Diag(St->
@@ -743,6 +743,20 @@ bool Sema::checkMustTailAttr(const Stmt *St, const Attr
&MTA) {
CallerType.Func = CallerDecl->getType()->getAs();
}
+ if (Context.getTargetInfo().getTriple().isPPC()) {
+if (Context.getTargetInfo().getTriple().isOSAIX())
+ return Diag(St->
Author: Chen Zheng
Date: 2024-04-19T03:39:17-04:00
New Revision: b2323f43e3cdb52b4e15a7d4f434cd5c64740dd4
URL:
https://github.com/llvm/llvm-project/commit/b2323f43e3cdb52b4e15a7d4f434cd5c64740dd4
DIFF:
https://github.com/llvm/llvm-project/commit/b2323f43e3cdb52b4e15a7d4f434cd5c64740dd4.diff
LO
Author: Chen Zheng
Date: 2024-04-19T08:52:28-04:00
New Revision: aa39b0b13e3b56ac072acff2660dbef9db45bca0
URL:
https://github.com/llvm/llvm-project/commit/aa39b0b13e3b56ac072acff2660dbef9db45bca0
DIFF:
https://github.com/llvm/llvm-project/commit/aa39b0b13e3b56ac072acff2660dbef9db45bca0.diff
LO
@@ -6,6 +6,9 @@
// RUN: %clang -target powerpc64-unknown-aix -maix-small-local-exec-tls -S
-emit-llvm \
// RUN:%s -o - | FileCheck %s --check-prefix=CHECK-AIX_SMALL_LOCALEXEC_TLS
+// RUN: %clang -target powerpc64-unknown-aix -maix-small-local-dynamic-tls -S
-emit-llvm \
https://github.com/chenzheng1030 edited
https://github.com/llvm/llvm-project/pull/88829
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/chenzheng1030 approved this pull request.
LGTM with one nit. Thanks for adding this support.
https://github.com/llvm/llvm-project/pull/88829
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailm
https://github.com/chenzheng1030 edited
https://github.com/llvm/llvm-project/pull/99511
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/chenzheng1030 approved this pull request.
LGTM except one nit. Thanks very much for adding this support.
https://github.com/llvm/llvm-project/pull/99511
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/c
@@ -3485,9 +3485,11 @@ unsigned PPCInstrInfo::getSpillTarget() const {
// With P10, we may need to spill paired vector registers or accumulator
// registers. MMA implies paired vectors, so we can just check that.
bool IsP10Variant = Subtarget.isISA3_1() || Subtarget.paire
Author: Chen Zheng
Date: 2024-07-23T01:53:21-04:00
New Revision: ee07547487a3502f7436968bbfc243b054c14071
URL:
https://github.com/llvm/llvm-project/commit/ee07547487a3502f7436968bbfc243b054c14071
DIFF:
https://github.com/llvm/llvm-project/commit/ee07547487a3502f7436968bbfc243b054c14071.diff
LO
chenzheng1030 wrote:
ee07547487a3502f7436968bbfc243b054c14071 should be able to fix the `No
available targets are compatible with triple "powerpc64-ibm-aix"` error.
https://github.com/llvm/llvm-project/pull/99888
___
cfe-commits mailing list
cfe-commi
Author: Chen Zheng
Date: 2024-07-23T02:00:28-04:00
New Revision: b830790547c304aa2a771ce0706b337ea5ec7a02
URL:
https://github.com/llvm/llvm-project/commit/b830790547c304aa2a771ce0706b337ea5ec7a02
DIFF:
https://github.com/llvm/llvm-project/commit/b830790547c304aa2a771ce0706b337ea5ec7a02.diff
LO
https://github.com/chenzheng1030 updated
https://github.com/llvm/llvm-project/pull/97541
>From abe45fe2c6540534bfbd2f452240cc73b273e905 Mon Sep 17 00:00:00 2001
From: Chen Zheng
Date: Wed, 3 Jul 2024 04:42:25 -0400
Subject: [PATCH] [PowerPC] add TargetParser for PPC target For now only focus
o
https://github.com/chenzheng1030 updated
https://github.com/llvm/llvm-project/pull/97541
>From 3b7cd8f6fc046ed28f9e329ba0f26156477c0a17 Mon Sep 17 00:00:00 2001
From: Chen Zheng
Date: Wed, 3 Jul 2024 04:42:25 -0400
Subject: [PATCH] [PowerPC] add TargetParser for PPC target For now only focus
o
https://github.com/chenzheng1030 commented:
```
def FeatureFPU : SubtargetFeature<"fpu","HasFPU","true",
"Enable classic FPU instructions",
[FeatureHardFloat]>;
def FeatureAltivec : SubtargetFeature<"altivec",
https://github.com/chenzheng1030 updated
https://github.com/llvm/llvm-project/pull/97541
>From 95b653b6a8f65c04eda610761e52772cb4f8ba35 Mon Sep 17 00:00:00 2001
From: Chen Zheng
Date: Wed, 3 Jul 2024 04:42:25 -0400
Subject: [PATCH] [PowerPC] add TargetParser for PPC target For now only focus
o
https://github.com/chenzheng1030 closed
https://github.com/llvm/llvm-project/pull/97541
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: Chen Zheng
Date: 2024-07-25T10:13:45-04:00
New Revision: daf9d7f3881e4ffd1fd5988dc1b6223c733b6bef
URL:
https://github.com/llvm/llvm-project/commit/daf9d7f3881e4ffd1fd5988dc1b6223c733b6bef
DIFF:
https://github.com/llvm/llvm-project/commit/daf9d7f3881e4ffd1fd5988dc1b6223c733b6bef.diff
LO
https://github.com/chenzheng1030 edited
https://github.com/llvm/llvm-project/pull/100450
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -0,0 +1,26 @@
+// RUN: %clang -target powerpc64-unknown-unknown -mcpu=pwr10 -msoft-float -S
-emit-llvm %s -o - | FileCheck %s -check-prefix=CHECKSOFT
+// RUN: %clang -target powerpc64-unknown-unknown -mcpu=pwr10 -S -emit-llvm %s
-o - | FileCheck %s -check-prefix=CHECKNOSOFT
+
https://github.com/chenzheng1030 commented:
Compared with `llvm/lib/Target/PowerPC/PPC.td`, seems still miss below implicit
flag:
`crypto`
```
def FeatureP8Crypto : SubtargetFeature<"crypto", "HasP8Crypto", "true",
"Enable POWER8 Crypto instructions",
@@ -0,0 +1,26 @@
+// RUN: %clang -target powerpc64-unknown-unknown -mcpu=pwr10 -msoft-float -S
-emit-llvm %s -o - | FileCheck %s -check-prefix=CHECKSOFT
+// RUN: %clang -target powerpc64-unknown-unknown -mcpu=pwr10 -S -emit-llvm %s
-o - | FileCheck %s -check-prefix=CHECKNOSOFT
+
@@ -562,7 +562,7 @@ void AIX::addClangTargetOptions(
CC1Args.push_back("-fno-sized-deallocation");
if (Args.hasFlag(options::OPT_ferr_pragma_mc_func_aix,
- options::OPT_fno_err_pragma_mc_func_aix, false))
+ options::OPT_fno_err_pragma_
@@ -562,7 +562,7 @@ void AIX::addClangTargetOptions(
CC1Args.push_back("-fno-sized-deallocation");
if (Args.hasFlag(options::OPT_ferr_pragma_mc_func_aix,
- options::OPT_fno_err_pragma_mc_func_aix, false))
+ options::OPT_fno_err_pragma_
https://github.com/chenzheng1030 commented:
LGTM. Please wait for @AaronBallman 's approval. Thanks
https://github.com/llvm/llvm-project/pull/101336
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo
https://github.com/chenzheng1030 approved this pull request.
LGTM. Thanks for adding this support.
https://github.com/llvm/llvm-project/pull/97524
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/c
https://github.com/chenzheng1030 edited
https://github.com/llvm/llvm-project/pull/99511
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -672,6 +685,8 @@ def : ProcessorModel<"pwr7", P7Model,
ProcessorFeatures.P7Features>;
def : ProcessorModel<"pwr8", P8Model, ProcessorFeatures.P8Features>;
def : ProcessorModel<"pwr9", P9Model, ProcessorFeatures.P9Features>;
def : ProcessorModel<"pwr10", P10Model, ProcessorF
https://github.com/chenzheng1030 commented:
Basically you need to handle P11 for all the places where P10 is handled, seems
you are missing below places:
1: we need handling in `LoadOpcodesForSpill` and `StoreOpcodesForSpill` for
P11. Even for now P11 may already use the model of P10, we need a
https://github.com/chenzheng1030 commented:
We also need more tests like:
1: `llvm/test/CodeGen/PowerPC/check-cpu.ll`
2: at least one test in the backend like
`llvm/test/CodeGen/PowerPC/p10-constants.ll`?
https://github.com/llvm/llvm-project/pull/99511
__
@@ -84,6 +85,7 @@
#define AIX_PPC8_VALUE 0x0001
#define AIX_PPC9_VALUE 0x0002
#define AIX_PPC10_VALUE 0x0004
+#define AIX_PPC11_VALUE 0x0008
chenzheng1030 wrote:
Where did you get this value? Is it documented somewhere? From the latest AIX
7.3
@@ -103,6 +105,7 @@ PPC_CPU("ppc476",SYS_CALL,44,BUILTIN_PPC_FALSE,0)
PPC_CPU("power8",SYS_CALL,45,USE_SYS_CONF,AIX_PPC8_VALUE)
PPC_CPU("power9",SYS_CALL,46,USE_SYS_CONF,AIX_PPC9_VALUE)
PPC_CPU("power10",SYS_CALL,47,USE_SYS_CONF,AIX_PPC10_VALUE)
+PPC_CPU("power11",SYS_CALL,48,U
chenzheng1030 wrote:
ping : )
Sorry, I may commit this directly if I don't get any further comments. I have
follow up patches based on this one. Thanks.
https://github.com/llvm/llvm-project/pull/97541
___
cfe-commits mailing list
cfe-commits@lists.ll
https://github.com/chenzheng1030 closed
https://github.com/llvm/llvm-project/pull/92997
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/chenzheng1030 edited
https://github.com/llvm/llvm-project/pull/90467
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/chenzheng1030 commented:
Thanks very much for taking care of PPC.
https://github.com/llvm/llvm-project/pull/90467
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1191,6 +1191,10 @@ void DeclSpec::Finish(Sema &S, const PrintingPolicy
&Policy) {
// Validate and finalize AltiVec vector declspec.
if (TypeAltiVecVector) {
+// Complex vector types are not supported.
+if (TypeSpecComplex != TSC_unspecified)
+ S.Diag(TSCL
@@ -111,6 +111,20 @@ vector __bool long long v_bll4; // expected-error
{{use of 'long long' with
#endif
__vector long double vv_ld3;// expected-error {{cannot use 'long
double' with '__vector'}}
vector long double v_ld4; // expected-error {{cannot use
https://github.com/chenzheng1030 approved this pull request.
LGTM. Thanks!
https://github.com/llvm/llvm-project/pull/90467
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -439,14 +443,12 @@ void PPCTargetInfo::getTargetDefines(const LangOptions
&Opts,
// FIXME: The following are not yet generated here by Clang, but are
//generated by GCC:
//
- // _SOFT_FLOAT_
// __RECIP_PRECISION__
// __APPLE_ALTIVEC__
// __RE
@@ -402,9 +402,16 @@ void PPCTargetInfo::getTargetDefines(const LangOptions
&Opts,
Builder.defineMacro("__VEC__", "10206");
Builder.defineMacro("__ALTIVEC__");
}
- if (HasSPE) {
+ if (HasSPE)
Builder.defineMacro("__SPE__");
+ if (HasSPE || FloatABI == SoftFlo
https://github.com/chenzheng1030 approved this pull request.
LGTM now. Thanks very much for the fix.
https://github.com/llvm/llvm-project/pull/106012
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinf
chenzheng1030 wrote:
gentle ping : )
https://github.com/llvm/llvm-project/pull/97541
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1,16 +1,13 @@
// RUN: %clang -### --target=powerpc-ibm-aix-xcoff -mcmodel=medium -mtocdata
%s 2>&1 \
-// RUN: | FileCheck -check-prefix=CHECK-NOTOC %s
+// RUN: | FileCheck -check-prefix=CHECK-TOC %s
chenzheng1030 wrote:
nit: since all the check prefix a
https://github.com/chenzheng1030 edited
https://github.com/llvm/llvm-project/pull/90619
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1292,8 +1291,9 @@ void PPCAsmPrinter::emitInstruction(const MachineInstr
*MI) {
unsigned Op = MI->getOpcode();
-// Change the opcode to load address for tocdata
-TmpInst.setOpcode(Op == PPC::ADDItocL8 ? PPC::ADDI8 : PPC::LA);
+// Change the opcode to load
https://github.com/chenzheng1030 approved this pull request.
LGTM just some nits. I don't think it needs another review for them from my
side.
Please commit when @diggerlin is also happy.
Thanks very much for adding this support.
https://github.com/llvm/llvm-project/pull/90619
___
@@ -6167,16 +6166,12 @@ void PPCDAGToDAGISel::Select(SDNode *N) {
SDNode *Tmp = CurDAG->getMachineNode(
isPPC64 ? PPC::ADDIStocHA8 : PPC::ADDIStocHA, dl, VT, TOCbase, GA);
-// On AIX if the symbol has the toc-data attribute it will be defined
-// in the TOC
@@ -479,14 +479,6 @@ static void addTocDataOptions(const llvm::opt::ArgList
&Args,
return false;
}();
- // Currently only supported for small code model.
- if (TOCDataGloballyinEffect &&
- (Args.getLastArgValue(options::OPT_mcmodel_EQ).equals("large") ||
-
https://github.com/chenzheng1030 edited
https://github.com/llvm/llvm-project/pull/90619
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/chenzheng1030 edited
https://github.com/llvm/llvm-project/pull/90619
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/chenzheng1030 created
https://github.com/llvm/llvm-project/pull/92997
For now only PPC big endian Linux 32 and 64 bit are supported.
PPC little endian Linux has XRAY support for 64-bit.
PPC AIX has different patchable function entry implementations.
Fixes #63220
Fixes #57031
@@ -0,0 +1,4 @@
+// RUN: %clang_cc1 -triple powerpc64-ibm-aix-xcoff -fsyntax-only -verify %s
+
+// expected-error@+1 {{'patchable_function_entry' attribute is not yet
supported on AIX}}
+__attribute__((patchable_function_entry(0))) void f();
chenzheng1030 wrote:
https://github.com/chenzheng1030 updated
https://github.com/llvm/llvm-project/pull/92997
>From 751d80c61f0e42daa3796a8270e186153dd9413f Mon Sep 17 00:00:00 2001
From: Chen Zheng
Date: Wed, 22 May 2024 02:37:04 -0400
Subject: [PATCH 1/2] [PowerPC] Support -fpatchable-function-entry
For now only
https://github.com/chenzheng1030 created
https://github.com/llvm/llvm-project/pull/93267
musttail does not often possible to be generated on PPC targets as when calling
to a function defined in another module, PPC needs to restore the TOC pointer.
To restore the TOC pointer, compiler needs to
@@ -3833,6 +3833,11 @@ def note_cannot_use_trivial_abi_reason : Note<
"it is polymorphic|"
"it has a base of a non-trivial class type|it has a virtual base|"
"it has a __weak field|it has a field of a non-trivial class type}1">;
+def warn_ppc_musttail_maybe_ignored: Warni
https://github.com/chenzheng1030 edited
https://github.com/llvm/llvm-project/pull/93267
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/chenzheng1030 updated
https://github.com/llvm/llvm-project/pull/92997
>From 751d80c61f0e42daa3796a8270e186153dd9413f Mon Sep 17 00:00:00 2001
From: Chen Zheng
Date: Wed, 22 May 2024 02:37:04 -0400
Subject: [PATCH 1/3] [PowerPC] Support -fpatchable-function-entry
For now only
https://github.com/chenzheng1030 commented:
> So PPC64 can use ELFv2 for Triple::OpenBSD. We probably want to diagnose this
> OS for PPC64, since with ELFv2 we might emit separate local and global entry
> points which means only certain values can be passed to
> -fpatchable-function-entry opti
@@ -0,0 +1,49 @@
+; RUN: llc -mtriple=powerpc-unknown-linux-gnu %s -o - | FileCheck %s
--check-prefixes=CHECK,PPC32
chenzheng1030 wrote:
Thank you, changed the triple. Little endian is not going to be supported in
this patch.
https://github.com/llvm/llvm-proje
@@ -6681,7 +6681,9 @@ void Clang::ConstructJob(Compilation &C, const JobAction
&JA,
StringRef S0 = A->getValue(), S = S0;
unsigned Size, Offset = 0;
if (!Triple.isAArch64() && !Triple.isLoongArch() && !Triple.isRISCV() &&
-!Triple.isX86())
+!Triple.
https://github.com/chenzheng1030 edited
https://github.com/llvm/llvm-project/pull/92997
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -0,0 +1,4 @@
+// RUN: %clang_cc1 -triple powerpc64-ibm-aix-xcoff -fsyntax-only -verify %s
+
+// expected-error@+1 {{'patchable_function_entry' attribute is not yet
supported on AIX}}
+__attribute__((patchable_function_entry(0))) void f();
chenzheng1030 wrote:
@@ -6,15 +6,20 @@
// RUN: %clang -target loongarch64 %s -fpatchable-function-entry=1,0 -c -###
2>&1 | FileCheck %s
// RUN: %clang -target riscv32 %s -fpatchable-function-entry=1,0 -c -### 2>&1
| FileCheck %s
// RUN: %clang -target riscv64 %s -fpatchable-function-entry=1,0 -c
@@ -0,0 +1,49 @@
+; RUN: llc -mtriple=powerpc-unknown-linux-gnu %s -o - | FileCheck %s
--check-prefixes=CHECK,PPC32
+; RUN: llc -mtriple=powerpc64-unknown-linux-gnu %s -o - | FileCheck %s
--check-prefixes=CHECK,PPC64
+
+define void @f0() {
+; CHECK-LABEL: f0:
+; CHECK-NOT: nop
https://github.com/chenzheng1030 updated
https://github.com/llvm/llvm-project/pull/92997
>From 7c1e44455a343cef3c5ab0da22c9971888cf Mon Sep 17 00:00:00 2001
From: Chen Zheng
Date: Wed, 22 May 2024 02:37:04 -0400
Subject: [PATCH 1/3] [PowerPC] Support -fpatchable-function-entry
For now only
https://github.com/chenzheng1030 edited
https://github.com/llvm/llvm-project/pull/100450
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/chenzheng1030 commented:
We still miss many implications in `PPCTargetInfo::setFeatureEnabled()`. This
patch fixes the implications for `-msoft-float`. But implications like
`-mno-power8-altivec` for `-crypto` is still not handled.
Let's leave them for now and make this patc
@@ -690,6 +698,19 @@ bool PPCTargetInfo::initFeatureMap(
return false;
}
+ if (llvm::is_contained(FeaturesVec, "-hard-float")) {
chenzheng1030 wrote:
After another look, I still think this should be done in
https://github.com/llvm/llvm-project/blob/ma
@@ -0,0 +1,58 @@
+// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
UTC_ARGS: --version 5
+// REQUIRES: powerpc-registered-target
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux -O2 -target-cpu pwr7 \
+// RUN: -emit-llvm %s -o - | FileCheck %s
@@ -0,0 +1,58 @@
+// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
UTC_ARGS: --version 5
+// REQUIRES: powerpc-registered-target
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux -O2 -target-cpu pwr7 \
+// RUN: -emit-llvm %s -o - | FileCheck %s
https://github.com/chenzheng1030 edited
https://github.com/llvm/llvm-project/pull/101390
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -0,0 +1,75 @@
+// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
UTC_ARGS: --version 5
+// REQUIRES: powerpc-registered-target
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux -O2 -target-cpu pwr7 \
+// RUN: -emit-llvm %s -o - | FileCheck %s
@@ -0,0 +1,58 @@
+// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
UTC_ARGS: --version 5
+// REQUIRES: powerpc-registered-target
+// RUN: %clang_cc1 -triple powerpc64le-unknown-linux -O2 -target-cpu pwr7 \
+// RUN: -emit-llvm %s -o - | FileCheck %s
https://github.com/chenzheng1030 approved this pull request.
LGTM. Thanks for the offline discussion @lei137
https://github.com/llvm/llvm-project/pull/101390
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailma
https://github.com/chenzheng1030 approved this pull request.
LGTM. Thanks for making the fix.
https://github.com/llvm/llvm-project/pull/100450
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-c
Author: Chen Zheng
Date: 2021-04-01T00:11:30-04:00
New Revision: bfcd21876adc3498065e4da92799f613e730d475
URL:
https://github.com/llvm/llvm-project/commit/bfcd21876adc3498065e4da92799f613e730d475
DIFF:
https://github.com/llvm/llvm-project/commit/bfcd21876adc3498065e4da92799f613e730d475.diff
LO
Author: Chen Zheng
Date: 2021-04-01T21:29:11-04:00
New Revision: f026e1f5205562aad32e3d78b75140798b0dd60a
URL:
https://github.com/llvm/llvm-project/commit/f026e1f5205562aad32e3d78b75140798b0dd60a
DIFF:
https://github.com/llvm/llvm-project/commit/f026e1f5205562aad32e3d78b75140798b0dd60a.diff
LO
Author: Chen Zheng
Date: 2021-04-22T00:41:25-04:00
New Revision: 26f138eed4af8ac7f12d2f11af1ba0f8aac68d4b
URL:
https://github.com/llvm/llvm-project/commit/26f138eed4af8ac7f12d2f11af1ba0f8aac68d4b
DIFF:
https://github.com/llvm/llvm-project/commit/26f138eed4af8ac7f12d2f11af1ba0f8aac68d4b.diff
LO
https://github.com/chenzheng1030 updated
https://github.com/llvm/llvm-project/pull/93267
>From 6047403b41bdeef8cd16294f0538150b8c58f6ea Mon Sep 17 00:00:00 2001
From: Chen Zheng
Date: Thu, 23 May 2024 22:59:48 -0400
Subject: [PATCH 1/3] [PowerPC] Diagnose musttail instead of crash inside
backe
https://github.com/chenzheng1030 updated
https://github.com/llvm/llvm-project/pull/93267
>From 6047403b41bdeef8cd16294f0538150b8c58f6ea Mon Sep 17 00:00:00 2001
From: Chen Zheng
Date: Thu, 23 May 2024 22:59:48 -0400
Subject: [PATCH 1/3] [PowerPC] Diagnose musttail instead of crash inside
backe
@@ -743,6 +743,20 @@ bool Sema::checkMustTailAttr(const Stmt *St, const Attr
&MTA) {
CallerType.Func = CallerDecl->getType()->getAs();
}
+ if (Context.getTargetInfo().getTriple().isPPC()) {
+if (Context.getTargetInfo().getTriple().isOSAIX())
+ return Diag(St->
https://github.com/chenzheng1030 updated
https://github.com/llvm/llvm-project/pull/93267
>From dc1902589e601bd5673aecf58eb11b85543f0ad5 Mon Sep 17 00:00:00 2001
From: Chen Zheng
Date: Thu, 23 May 2024 22:59:48 -0400
Subject: [PATCH 1/4] [PowerPC] Diagnose musttail instead of crash inside
backe
@@ -5751,8 +5751,29 @@ RValue CodeGenFunction::EmitCall(const CGFunctionInfo
&CallInfo,
if (llvm::CallInst *Call = dyn_cast(CI)) {
if (TargetDecl && TargetDecl->hasAttr())
Call->setTailCallKind(llvm::CallInst::TCK_NoTail);
-else if (IsMustTail)
+else if (Is
chenzheng1030 wrote:
> @nemanjai Are you OK with the PPC changes?
on behalf of @nemanjai : ): the change LG to PPC.
FYI @lei137 @stefanp-ibm if we doc these builtins for PPC users, we may need to
change the the docs.
https://github.com/llvm/llvm-project/pull/109160
___
chenzheng1030 wrote:
> Officially we don't guarantee target intrinsics at all - but I can add a
> release note if it will help?
hmm, I meant IBM OpenXLC compiler product doc, many builtins are listed there,
not the community clang/llvm docs.
https://github.com/llvm/llvm-project/pull/109160
__
101 - 197 of 197 matches
Mail list logo