[PATCH] D64276: [ItaniumMangle] Replace useFloat128ManglingForLongDouble() with getManglingForLongDouble() and getManglingForFloat128()

2019-07-06 Thread Fangrui Song via Phabricator via cfe-commits
MaskRay updated this revision to Diff 208256. MaskRay added a comment. Simplify x86_64 Android. Since it doesn't use -mlong-double-64 or -mlong-double-128, just use "g" for it. In the next -mlong-double-128 patch, we move its getManglingForLongDouble() overload to X86TargetInfo Repository: r

[PATCH] D64277: [X86][PowerPC] Support -mlong-double-128

2019-07-06 Thread Fangrui Song via Phabricator via cfe-commits
MaskRay created this revision. MaskRay added reviewers: awilfox, echristo, erichkeane, hfinkel, jsji, majnemer, rnk, rsmith. Herald added subscribers: cfe-commits, kbarton, nemanjai. Herald added a project: clang. This patch makes the driver option -mlong-double-128 available for X86 and PowerPC.

[PATCH] D64278: Rename libclang_shared to libclang-cpp

2019-07-06 Thread Sylvestre Ledru via Phabricator via cfe-commits
sylvestre.ledru created this revision. sylvestre.ledru added reviewers: beanz, tstellar. Herald added subscribers: cfe-commits, mgorny. Herald added a project: clang. sylvestre.ledru edited the summary of this revision. Fix bug 42475 Repository: rC Clang https://reviews.llvm.org/D64278 Files

[PATCH] D64277: [X86][PowerPC] Support -mlong-double-128

2019-07-06 Thread Fangrui Song via Phabricator via cfe-commits
MaskRay updated this revision to Diff 208260. MaskRay added a comment. Add a driver test Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D64277/new/ https://reviews.llvm.org/D64277 Files: include/clang/Driver/Options.td lib/Basic/TargetInfo.cpp lib/Basic/Targ

[PATCH] D64270: [analyzer][NFC] Prepare visitors for different tracking kinds

2019-07-06 Thread Csaba Dabis via Phabricator via cfe-commits
Charusso accepted this revision. Charusso added a comment. Document!!4!44! It is great you have started to limit the notes, thanks! Comment at: clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h:110 + ConditionTracking +}; + What about

[PATCH] D64277: [X86][PowerPC] Support -mlong-double-128

2019-07-06 Thread Fangrui Song via Phabricator via cfe-commits
MaskRay updated this revision to Diff 208266. MaskRay added a comment. Herald added a subscriber: jdoerfert. Small adjustment to PPC.cpp to make -mlong-double-128 -mabi=ieeelongdouble simpler Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D64277/new/ https://revie

[PATCH] D64283: [PowerPC] Support -mabi=ieeelongdouble and -mabi=ibmlongdouble

2019-07-06 Thread Fangrui Song via Phabricator via cfe-commits
MaskRay created this revision. MaskRay added reviewers: awilfox, dalias, echristo, hfinkel, nemanjai, jsji, kbarton. Herald added a project: clang. Herald added a subscriber: cfe-commits. MaskRay added parent revisions: D64282: [PowerPC] Support fp128 libcalls, D64277: [X86][PowerPC] Support -mlo

[PATCH] D64277: [X86][PowerPC] Support -mlong-double-128

2019-07-06 Thread Fangrui Song via Phabricator via cfe-commits
MaskRay marked an inline comment as done. MaskRay added a subscriber: ABataev. MaskRay added inline comments. Comment at: test/OpenMP/nvptx_unsupported_type_codegen.cpp:79 } - -// CHECK: define weak void @__omp_offloading_{{.+}}foo{{.+}}_l75([[BIGTYPE:.+]]* @AB

[PATCH] D64277: [X86][PowerPC] Support -mlong-double-128

2019-07-06 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: test/OpenMP/nvptx_unsupported_type_codegen.cpp:79 } - -// CHECK: define weak void @__omp_offloading_{{.+}}foo{{.+}}_l75([[BIGTYPE:.+]]* MaskRay wrote: > @ABataev The mangling scheme of __float128 is broken on x86 befor

[PATCH] D64284: (WIP) share template instantiations from PCH in one .o if -building-pch-with-obj

2019-07-06 Thread Luboš Luňák via Phabricator via cfe-commits
llunak created this revision. llunak added reviewers: rsmith, dblaikie, hans. Herald added a project: clang. Herald added a subscriber: cfe-commits. This is a WIP patch that can significantly reduce build time by avoiding needlessly repeatedly instantiating templates when using PCH. As described

[PATCH] D64277: [X86][PowerPC] Support -mlong-double-128

2019-07-06 Thread Fangrui Song via Phabricator via cfe-commits
MaskRay marked an inline comment as done. MaskRay added inline comments. Comment at: test/OpenMP/nvptx_unsupported_type_codegen.cpp:79 } - -// CHECK: define weak void @__omp_offloading_{{.+}}foo{{.+}}_l75([[BIGTYPE:.+]]* ABataev wrote: > MaskRay wrote: > > @ABa

[PATCH] D64277: [X86][PowerPC] Support -mlong-double-128

2019-07-06 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: test/OpenMP/nvptx_unsupported_type_codegen.cpp:79 } - -// CHECK: define weak void @__omp_offloading_{{.+}}foo{{.+}}_l75([[BIGTYPE:.+]]* MaskRay wrote: > ABataev wrote: > > MaskRay wrote: > > > @ABataev The mangling sch

[PATCH] D64277: [X86][PowerPC] Support -mlong-double-128

2019-07-06 Thread Fangrui Song via Phabricator via cfe-commits
MaskRay marked an inline comment as done. MaskRay added inline comments. Comment at: test/OpenMP/nvptx_unsupported_type_codegen.cpp:79 } - -// CHECK: define weak void @__omp_offloading_{{.+}}foo{{.+}}_l75([[BIGTYPE:.+]]* ABataev wrote: > MaskRay wrote: > > ABat

[PATCH] D64062: Remove both -dumpversion and __VERSION__

2019-07-06 Thread Sylvestre Ledru via Phabricator via cfe-commits
sylvestre.ledru added a comment. @rnk is it good for you ? Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D64062/new/ https://reviews.llvm.org/D64062 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://list

r365263 - [Rewrite] Try to fix buildbot link fail caused by r365258

2019-07-06 Thread Joel E. Denny via cfe-commits
Author: jdenny Date: Sat Jul 6 06:44:57 2019 New Revision: 365263 URL: http://llvm.org/viewvc/llvm-project?rev=365263&view=rev Log: [Rewrite] Try to fix buildbot link fail caused by r365258 http://lab.llvm.org:8011/builders/clang-ppc64le-linux-multistage/builds/10270 Modified: cfe/trunk/uni

[PATCH] D63845: [WIP] Create a clang attribute that lets users specify LLVM attributes

2019-07-06 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman added a comment. In D63845#1571855 , @jdoerfert wrote: > I think we should postpone a detailed discussion until we are ready to send > an RFC on this. Nevertheless, I inlined some responses below. > > In D63845#1570639

[PATCH] D60335: Use -fomit-frame-pointer when optimizing PowerPC code

2019-07-06 Thread Fangrui Song via Phabricator via cfe-commits
MaskRay added a comment. Herald added a subscriber: wuzish. I would write the following test (I can commit that for you) diff --git c/test/Driver/frame-pointer-elim.c w/test/Driver/frame-pointer-elim.c index 6fcd3eb75a..c2e9ccb225 100644 --- c/test/Driver/frame-pointer-elim.c +++ w/test/

r365264 - [Rewrite] Try to fix buildbot link fail left by r365263

2019-07-06 Thread Joel E. Denny via cfe-commits
Author: jdenny Date: Sat Jul 6 09:28:32 2019 New Revision: 365264 URL: http://llvm.org/viewvc/llvm-project?rev=365264&view=rev Log: [Rewrite] Try to fix buildbot link fail left by r365263 http://lab.llvm.org:8011/builders/clang-ppc64le-linux-multistage/builds/10272 Modified: cfe/trunk/unitt

[PATCH] D64287: [analyzer] Track the right hand side of the last store unconditionally

2019-07-06 Thread Kristóf Umann via Phabricator via cfe-commits
Szelethus created this revision. Szelethus added reviewers: NoQ, xazax.hun, rnkovacs, baloghadamsoftware, Charusso. Szelethus added a project: clang. Herald added subscribers: cfe-commits, gamesh411, dkrupp, donat.nagy, mikhail.ramalho, a.sidorin, szepet, whisperity. The following code snippet t

[PATCH] D64271: [analyzer] Don't track the right hand side of the last store for conditions

2019-07-06 Thread Kristóf Umann via Phabricator via cfe-commits
Szelethus abandoned this revision. Szelethus added a comment. You're right. If condition tracking only adds necessary information anyways, this shouldn't hurt that much anyways. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D64271/new/ https://revi

[PATCH] D64272: [analyzer] Note last writes to a condition only in a nested stackframe

2019-07-06 Thread Kristóf Umann via Phabricator via cfe-commits
Szelethus updated this revision to Diff 208275. Szelethus added a comment. Rebase after D64271 being abandoned. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D64272/new/ https://reviews.llvm.org/D64272 Files: clang/include/clang/StaticAnalyzer/Core/Bu

[PATCH] D64232: [analyzer] Prune calls to functions with linear CFGs that return a non-zero constrained value

2019-07-06 Thread Kristóf Umann via Phabricator via cfe-commits
Szelethus updated this revision to Diff 208276. Szelethus added a comment. Rebase. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D64232/new/ https://reviews.llvm.org/D64232 Files: clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp clang/test/Analysis/diagnostics/find_last_store.c

[PATCH] D64274: [analyzer] VirtualCallChecker overhaul.

2019-07-06 Thread Kristóf Umann via Phabricator via cfe-commits
Szelethus requested changes to this revision. Szelethus added a comment. This revision now requires changes to proceed. I happen to have very recent analyses on a couple projects, I'll throw this in: LLVM+Clang+Clang-tools-extra

[PATCH] D63279: [Analyzer] Unroll for-loops where the upper boundary is a variable with know value

2019-07-06 Thread Kristóf Umann via Phabricator via cfe-commits
Szelethus added inline comments. Comment at: lib/StaticAnalyzer/Core/LoopUnrolling.cpp:214-216 + const Expr *BoundExpr = CondOp->getLHS()->IgnoreParenImpCasts(); + if (BoundExpr == Matches[0].getNodeAs("boundVarOperand")) +BoundExpr = CondOp->getRHS()->IgnoreParenImpCasts()

[PATCH] D62619: [analyzer][IDF] Add a control dependency calculator + a new debug checker

2019-07-06 Thread Kristóf Umann via Phabricator via cfe-commits
Szelethus added inline comments. Comment at: clang/include/clang/Analysis/Analyses/Dominators.h:230 + + virtual void releaseMemory() { +PostDomTree.releaseMemory(); kuhar wrote: > If the virtual function is introduced by ManagesAnalysis, isn't it better to

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Joel E. Denny via Phabricator via cfe-commits
jdenny created this revision. jdenny added a reviewer: ABataev. Herald added subscribers: jdoerfert, guansong. Herald added a project: clang. For example, without this fix, when the host is x86_64, long double is sometimes rejected when offloading to x86_64: $ cat test.c int main() { long

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1594 + !Context.getTargetInfo().hasFloat128Type() && + Context.getTargetInfo().getLongDoubleWidth() != 128) || (Ty->isIntegerType() && Context.getTypeSize(Ty) == 128 && Hm

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Joel E. Denny via Phabricator via cfe-commits
jdenny added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1594 + !Context.getTargetInfo().hasFloat128Type() && + Context.getTargetInfo().getLongDoubleWidth() != 128) || (Ty->isIntegerType() && Context.getTypeSize(Ty) == 128 && ABa

r365272 - Treat the range of representable values of floating-point types as [-inf, +inf] not as [-max, +max].

2019-07-06 Thread Richard Smith via cfe-commits
Author: rsmith Date: Sat Jul 6 14:05:52 2019 New Revision: 365272 URL: http://llvm.org/viewvc/llvm-project?rev=365272&view=rev Log: Treat the range of representable values of floating-point types as [-inf, +inf] not as [-max, +max]. Summary: Prior to r329065, we used [-max, max] as the range of

[PATCH] D63793: Treat the range of representable values of floating-point types as [-inf, +inf] not as [-max, +max].

2019-07-06 Thread Richard Smith - zygoloid via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL365272: Treat the range of representable values of floating-point types as [-inf, +inf]… (authored by rsmith, committed by ). Herald added a project: LLVM. Herald added a subscriber: llvm-commits. Changed

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1594 + !Context.getTargetInfo().hasFloat128Type() && + Context.getTargetInfo().getLongDoubleWidth() != 128) || (Ty->isIntegerType() && Context.getTypeSize(Ty) == 128 && jd

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Joel E. Denny via Phabricator via cfe-commits
jdenny added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1594 + !Context.getTargetInfo().hasFloat128Type() && + Context.getTargetInfo().getLongDoubleWidth() != 128) || (Ty->isIntegerType() && Context.getTypeSize(Ty) == 128 && ABa

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1594 + !Context.getTargetInfo().hasFloat128Type() && + Context.getTargetInfo().getLongDoubleWidth() != 128) || (Ty->isIntegerType() && Context.getTypeSize(Ty) == 128 && jd

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Joel E. Denny via Phabricator via cfe-commits
jdenny added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1594 + !Context.getTargetInfo().hasFloat128Type() && + Context.getTargetInfo().getLongDoubleWidth() != 128) || (Ty->isIntegerType() && Context.getTypeSize(Ty) == 128 && ABa

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1594 + !Context.getTargetInfo().hasFloat128Type() && + Context.getTargetInfo().getLongDoubleWidth() != 128) || (Ty->isIntegerType() && Context.getTypeSize(Ty) == 128 && jd

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Joel E. Denny via Phabricator via cfe-commits
jdenny added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1594 + !Context.getTargetInfo().hasFloat128Type() && + Context.getTargetInfo().getLongDoubleWidth() != 128) || (Ty->isIntegerType() && Context.getTypeSize(Ty) == 128 && ABa

[PATCH] D64128: [CodeGen] Generate llvm.ptrmask instead of inttoptr(and(ptrtoint, C)) if possible.

2019-07-06 Thread John McCall via Phabricator via cfe-commits
rjmccall added a comment. I would be opposed to any addition of a `-f` flag for this absent any evidence that it's valuable for some actual C code; this patch appears to be purely speculative. I certainly don't think we should be adding it default-on. Your argument about alignment is what I w

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1594 + !Context.getTargetInfo().hasFloat128Type() && + Context.getTargetInfo().getLongDoubleWidth() != 128) || (Ty->isIntegerType() && Context.getTypeSize(Ty) == 128 && jd

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Joel E. Denny via Phabricator via cfe-commits
jdenny added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1594 + !Context.getTargetInfo().hasFloat128Type() && + Context.getTargetInfo().getLongDoubleWidth() != 128) || (Ty->isIntegerType() && Context.getTypeSize(Ty) == 128 && ABa

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1594 + !Context.getTargetInfo().hasFloat128Type() && + Context.getTargetInfo().getLongDoubleWidth() != 128) || (Ty->isIntegerType() && Context.getTypeSize(Ty) == 128 && jd

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Fangrui Song via Phabricator via cfe-commits
MaskRay added a comment. Drive-by comment :) In gcc, (1) -mlong-double-128 uses IEEE 754 quad as the representation of long double on x86_64 (2) -mlong-double-128 -mabi=ieeelongdouble uses IEEE 754 quad as the representation of long double on powerpc{32,64}. (On Linux powerpc{32,64}, `-mlong

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Fangrui Song via Phabricator via cfe-commits
MaskRay added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1594 + !Context.getTargetInfo().hasFloat128Type() && + Context.getTargetInfo().getLongDoubleWidth() != 128) || (Ty->isIntegerType() && Context.getTypeSize(Ty) == 128 && AB

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1594 + !Context.getTargetInfo().hasFloat128Type() && + Context.getTargetInfo().getLongDoubleWidth() != 128) || (Ty->isIntegerType() && Context.getTypeSize(Ty) == 128 && Ma

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Joel E. Denny via Phabricator via cfe-commits
jdenny added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1594 + !Context.getTargetInfo().hasFloat128Type() && + Context.getTargetInfo().getLongDoubleWidth() != 128) || (Ty->isIntegerType() && Context.getTypeSize(Ty) == 128 && ABa

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Alexey Bataev via Phabricator via cfe-commits
ABataev added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1594 + !Context.getTargetInfo().hasFloat128Type() && + Context.getTargetInfo().getLongDoubleWidth() != 128) || (Ty->isIntegerType() && Context.getTypeSize(Ty) == 128 && jd

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Joel E. Denny via Phabricator via cfe-commits
jdenny added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:1594 + !Context.getTargetInfo().hasFloat128Type() && + Context.getTargetInfo().getLongDoubleWidth() != 128) || (Ty->isIntegerType() && Context.getTypeSize(Ty) == 128 && ABa

[PATCH] D10051: Driver: Modify the -print-libgcc-file-name code to use ToolChain::GetRuntimeLibPath().

2019-07-06 Thread Fangrui Song via Phabricator via cfe-commits
MaskRay added a comment. D25338 fixed the issue.. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D10051/new/ https://reviews.llvm.org/D10051 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lis

[PATCH] D10049: Driver: Add OS-specific resource directory to file search paths.

2019-07-06 Thread Fangrui Song via Phabricator via cfe-commits
MaskRay added a comment. Implemented by D31447 CHANGES SINCE LAST ACTION https://reviews.llvm.org/D10049/new/ https://reviews.llvm.org/D10049 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.

[PATCH] D64289: [OpenMP] Fix 128-bit long double support on target

2019-07-06 Thread Joel E. Denny via Phabricator via cfe-commits
jdenny updated this revision to Diff 208286. jdenny added a comment. This incorporates all the improvements I think we've discussed so far: - In diagnostics, distinguish between unsupported types and non-equivalent types. - Don't treat `__float128` and `long double` as equivalent. - Compare exac

[PATCH] D64294: [Driver] Consolidate shouldUseFramePointer() and shouldUseLeafFramePointer()

2019-07-06 Thread Fangrui Song via Phabricator via cfe-commits
MaskRay created this revision. MaskRay added reviewers: chandlerc, dim, echristo, rnk, rsmith, void, ychen. Herald added a project: clang. Herald added a subscriber: cfe-commits. Use a tri-state enum to represent shouldUseFramePointer() and shouldUseLeafFramePointer(). This simplifies the logic a

[PATCH] D64294: [Driver] Consolidate shouldUseFramePointer() and shouldUseLeafFramePointer()

2019-07-06 Thread Fangrui Song via Phabricator via cfe-commits
MaskRay updated this revision to Diff 208289. MaskRay added a comment. Simplify Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D64294/new/ https://reviews.llvm.org/D64294 Files: lib/Driver/ToolChains/Clang.cpp test/Driver/cl-options.c test/Driver/frame-point