[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-09-16 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/lib/AST/ExprConstant.cpp:13197-13198 assert(E->isRValue() && E->getType()->isRealFloatingType()); + if (Info.isStrictFP) +return false; return FloatExprEvaluator(Info, Result).Visit(E); rsmith wrote: > I

[PATCH] D87812: [FPEnv] Use typed accessors in FPOptions

2020-09-17 Thread Melanie Blower via Phabricator via cfe-commits
mibintc accepted this revision. mibintc added a comment. This revision is now accepted and ready to land. LGTM - thanks Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D87812/new/ https://reviews.llvm.org/D87812 __

[PATCH] D78305: [NFC] Rename Sema.FPFeatures to CurFPFeatures and accessor to getCurFPFeatures

2020-09-17 Thread Melanie Blower via Phabricator via cfe-commits
mibintc abandoned this revision. mibintc added a comment. not needed Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D78305/new/ https://reviews.llvm.org/D78305 ___ cfe-commits mailing list cfe-commits@list

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-09-24 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 294074. mibintc added a comment. Responded to @rsmith's review CHANGES SINCE LAST ACTION https://reviews.llvm.org/D87528/new/ https://reviews.llvm.org/D87528 Files: clang/include/clang/Basic/DiagnosticASTKinds.td clang/include/clang/Basic/DiagnosticP

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-09-24 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. Note, @sepavloff is working on overlapping concerns here, D87822 : [FPEnv] Evaluate constant expressions under non-default rounding modes CHANGES SINCE LAST ACTION https://reviews.llvm.org/D87528/new/ https://reviews.llvm.org/D87528

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-09-24 Thread Melanie Blower via Phabricator via cfe-commits
mibintc marked 2 inline comments as done. mibintc added inline comments. Comment at: clang/lib/AST/ExprConstant.cpp:2683 } + if (const BinaryOperator *BE = dyn_cast(E)) { +if (BE->getFPFeaturesInEffect(Info.Ctx.getLangOpts()).isFPConstrained()) { rsmith w

[PATCH] D87822: [FPEnv] Evaluate constant expressions under non-default rounding modes

2020-09-24 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/lib/AST/ExprConstant.cpp:2438 +/// Check if the given evaluation result is allowed for constant evaluation. +static bool checkFloatingPointResult(EvalInfo &Info, const Expr *E, + APFloat::opStatu

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-09-25 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. In D87528#2270502 , @sepavloff wrote: >> @sepavloff Is it OK if I continue work on this item? Not sure about the >> protocol when continuing someone else's patch. > > It is OK for me. There is also an action in Phabricator "Comman

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-09-25 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/test/CodeGen/fp-floatcontrol-pragma.cpp:154 + if (i<0) + return 1.0 + 2.0; + // Check that floating point constant folding doesn't occur if sepavloff wrote: > In this particular case we know for sure that the re

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-09-28 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. In D87528#2297647 , @sepavloff wrote: > In D87528#2295015 , @mibintc wrote: > >> I tried using the 0924 version of the patch on an internal workload SPEC >> "cpu2017" and found that a few f

[PATCH] D87049: Exploratory patch - capture DebugInfo for constexpr variables used within lambda

2020-09-02 Thread Melanie Blower via Phabricator via cfe-commits
mibintc created this revision. mibintc added a reviewer: debug-info. Herald added a project: clang. mibintc requested review of this revision. This is an exploratory patch, an attempt to solve bugs.llvm.org/show_bug.cgi?id=47400 That bug report shows a simple test case where the constexpr variab

[PATCH] D87049: Exploratory patch - capture DebugInfo for constexpr variables used within lambda

2020-09-02 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. In D87049#2253150 , @dblaikie wrote: > I think it'd be helpful to discuss what the DWARF does and should look like > in this case (I wonder if, maybe, the better solution is in the DWARF > consumer - to do name lookup out through

[PATCH] D92721: [PATCH] [clang] Create SPIRABIInfo to enable SPIR_FUNC calling convention

2020-12-08 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 310338. mibintc added a comment. Thanks @Anastasia ; I modified CGBuiltin.cpp to use EmitRuntimeCall when creating calls to runtime functions instead of Builder.CreateCall so this is setting the CallingConvention on the Call node using the ABIInfo. I change

[PATCH] D92721: [PATCH] [clang] Create SPIRABIInfo to enable SPIR_FUNC calling convention

2020-12-09 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 310655. mibintc added a comment. I rebased and applied clang-format patch Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92721/new/ https://reviews.llvm.org/D92721 Files: clang/lib/CodeGen/CGBuiltin.cpp cla

[PATCH] D92721: [PATCH] [clang] Create SPIRABIInfo to enable SPIR_FUNC calling convention

2020-12-10 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 311005. mibintc added a comment. Fixed a couple CallInst, setting the CallingConvention from information in the Function node. Updated LIT tests. I'd like to push the patch this weekend, looking for review thanks! Repository: rG LLVM Github Monorepo CHA

[PATCH] D92721: [PATCH] [clang] Create SPIRABIInfo to enable SPIR_FUNC calling convention

2020-12-10 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. Answering my own questions In D92721#2441068 , @mibintc wrote: > Thanks @Anastasia ; I modified CGBuiltin.cpp to use EmitRuntimeCall when > creating calls to runtime functions instead of Builder.CreateCall so this is > setting t

[PATCH] D92721: [PATCH] [clang] Create SPIRABIInfo to enable SPIR_FUNC calling convention

2020-12-12 Thread Melanie Blower via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG320af6b13839: Create SPIRABIInfo to enable SPIR_FUNC calling convention. (authored by mibintc). Changed prior to commit: https://reviews.llvm.org/

[PATCH] D92721: [PATCH] [clang] Create SPIRABIInfo to enable SPIR_FUNC calling convention

2020-12-12 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. Thanks for the review! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92721/new/ https://reviews.llvm.org/D92721 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://li

[PATCH] D92024: [clang] Implement P0692R1 from C++20 (access checking on specializations and instantiations)

2020-12-14 Thread Melanie Blower via Phabricator via cfe-commits
mibintc resigned from this revision. mibintc added a comment. I don't have expertise in this area. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92024/new/ https://reviews.llvm.org/D92024 ___ cfe-commits

[PATCH] D93769: RFC [clang] Add support for option -ffp-eval-method and extend #pragma float_control similarly

2020-12-23 Thread Melanie Blower via Phabricator via cfe-commits
mibintc created this revision. mibintc added reviewers: kpn, sepavloff, andrew.w.kaylor, rjmccall. Herald added subscribers: dexonsmith, dang. mibintc requested review of this revision. Herald added a project: clang. The Intel compiler supports the option -fp-model={source|double|extended} which

[PATCH] D93769: RFC [clang] Add support for option -ffp-eval-method and extend #pragma float_control similarly

2020-12-23 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/lib/Sema/SemaAttr.cpp:429 + case PFC_Source: +//Builder.defineMacro("__FLT_EVAL_METHOD__", Twine("0")); +NewFPFeatures.setFPEvalMethodOverride(LangOptions::FEM_Source); @rjmccall I would like to push a new

[PATCH] D90714: [clang]Fix length threshold for MicrosoftMangle md5 hash

2020-11-03 Thread Melanie Blower via Phabricator via cfe-commits
mibintc created this revision. mibintc added a reviewer: majnemer. Herald added a project: clang. mibintc requested review of this revision. Fix off-by-one bug in determining the threshold for when want to shorten very large external names, Microsoft compatibility. This fixes the bug reported her

[PATCH] D90714: [clang]Fix length threshold for MicrosoftMangle md5 hash

2020-11-04 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 302902. mibintc added a comment. Add lit test case, based on test case in bug report Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90714/new/ https://reviews.llvm.org/D90714 Files: clang/lib/AST/MicrosoftMan

[PATCH] D90714: [clang]Fix length threshold for MicrosoftMangle md5 hash

2020-11-04 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. In D90714#2372458 , @dblaikie wrote: > Test case? Thanks, done Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90714/new/ https://reviews.llvm.org/D90714 ___

[PATCH] D90714: [clang]Fix length threshold for MicrosoftMangle md5 hash

2020-11-05 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. In D90714#2374913 , @dblaikie wrote: > Since the same code is used to mangle all these things, probably just test > one of them? > > Could use macros to stamp out longer names without having to write them out > manually? Not sur

[PATCH] D90714: [clang]Fix length threshold for MicrosoftMangle md5 hash

2020-11-05 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. I'm sorry, I don't see how to build up an identifier with an arbitrary number of characters using the token pasting, for example an ident with 4095 characters is not a power of 2. I tried pasting together X2048 X1024 X512 etc but that doesn't work fu.cpp:12:18: error: p

[PATCH] D90714: [clang]Fix length threshold for MicrosoftMangle md5 hash

2020-11-06 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 303477. mibintc added a comment. Fixed test case according to @dblaikie 's suggestion and input, thanks a lot David, the test case is certainly a lot easier to read and understand now. Anything else? Repository: rG LLVM Github Monorepo CHANGES SINCE LA

[PATCH] D90714: [clang]Fix length threshold for MicrosoftMangle md5 hash

2020-11-06 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. you're right about the regex syntax. i think the 4088 is over the max repetition count and there's also a problem with balanced. not sure what i did wrong here. if you have a chance to look at this otherwise i'll toil over the weekend, i'm off for the day--cheers. here

[PATCH] D90714: [clang]Fix length threshold for MicrosoftMangle md5 hash

2020-11-07 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 303640. mibintc added a comment. I submitted the test improvements separately, i'm going to push this version, thanks all Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90714/new/ https://reviews.llvm.org/D9071

[PATCH] D90714: [clang]Fix length threshold for MicrosoftMangle md5 hash

2020-11-07 Thread Melanie Blower via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGc511963d5adb: [clang] Fix length threshold for MicrosoftMangle md5 hash (authored by mibintc). Repository: rG LLVM Github Monorepo CHANGES SINCE

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-09-28 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. In D87528#2297647 , @sepavloff wrote: > In D87528#2295015 , @mibintc wrote: > >> I tried using the 0924 version of the patch on an internal workload SPEC >> "cpu2017" and found that a few f

[PATCH] D88462: FP math settings for static duration initialization - work in progress

2020-09-28 Thread Melanie Blower via Phabricator via cfe-commits
mibintc created this revision. mibintc added a reviewer: sepavloff. mibintc added a project: clang. mibintc requested review of this revision. When compiling this C test case with -frounding-math there is an error diagnostic due to the rounding float F3d = 0x1.01p0; This patch resets the

[PATCH] D88498: [FPEnv] Evaluate initializers in constant rounding mode

2020-09-29 Thread Melanie Blower via Phabricator via cfe-commits
mibintc accepted this revision. mibintc added a comment. This revision is now accepted and ready to land. thanks for this! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D88498/new/ https://reviews.llvm.org/D88498 ___

[PATCH] D88462: FP math settings for static duration initialization - work in progress

2020-09-29 Thread Melanie Blower via Phabricator via cfe-commits
mibintc abandoned this revision. mibintc added a comment. refer to https://reviews.llvm.org/D88498 Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D88462/new/ https://reviews.llvm.org/D88462 ___ cfe-commits

[PATCH] D88498: [FPEnv] Evaluate initializers in constant rounding mode

2020-09-29 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/test/AST/const-fpfeatures-strict.c:39 + +// CHECK: @var_04 = {{.*}} %struct.S { float 0x3FF02000 } +// CHECK: @var_05 = {{.*}} %struct.S { float 0x3FF02000 } I think the initializer for var_04 is ev

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-10-02 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 295880. mibintc added a comment. I patched my workspace with D88498 from Sept 29. I fixed some nits and also enabled FENV_ACCESS when the command line option specifies frounding-math. This corresponds to Microsoft's document

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-10-05 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. I neglected to hit the "submit" button last week, these are the inline questions I have. Also in addition to the comments above, check-clang is showing 1 LIT test failing AST/const-fpfeatures.cpp I believe the clang constant folder is returning False for the expression,

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-10-05 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/include/clang/Basic/LangOptions.h:410-411 setRoundingMode(LO.getFPRoundingMode()); +// FENV access is true if rounding math is enabled. +setAllowFEnvAccess((getRoundingMode() == llvm::RoundingMode::Dynamic)); setF

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-10-05 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 296221. mibintc added a comment. In the previous version of this patch, I enabled FENV_ACCESS if frounding-math, but @sepavloff commented that this deduction is not correct. I changed the logic to check for the "ffp-model=strict" settings, and if those sett

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-10-05 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. For the LIT test clang/test/AST/const-fpfeatures.cpp, currently failing in this patch, the variables V1 and others are initialized via call to "global var init" which performs the rounding at execution time, I think that's correct not certain. Repository: rG LLVM Gi

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-10-06 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 296520. mibintc added a comment. I added a sentence in the clang UserManual pointing out that ffp-model=strict automatically enables FENV_ACCESS. I changed checkFloatingPointResult the way @sepavloff suggested to solve the LIT failure in clang/test/AST/cons

[PATCH] D88498: [FPEnv] Evaluate initializers in constant rounding mode

2020-10-07 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. ping! Comment at: clang/lib/Parse/ParseDecl.cpp:2290 + // rounding mode. + if (VD->isFileVarDecl() || VD->isConstexpr() || + (!getLangOpts().CPlusPlus && VD->isStaticLocal())) { sepavloff wrote: > sepavlof

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-10-09 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 297260. mibintc added a comment. I rebased the patch I added documentation to UserManual showing that -ffp-model=strict enables FENV_ACCESS I removed ActOnAfterCompoundStatementLeadingPragmas since it was redundant with work being done in ActOnCompoundStmt

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-10-09 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. In D88498 @rsmith wrote, s far from clear to me that this is correct in C++. In principle, for a dynamic initializer, the rounding mode could have been set by an earlier initializer. Perhaps we can make an argument that, due to the permi

[PATCH] D92721: [PATCH] [clang] Create SPIRABIInfo to enable SPIR_FUNC calling convention

2020-12-05 Thread Melanie Blower via Phabricator via cfe-commits
mibintc created this revision. mibintc added reviewers: v_klochkov, Anastasia, yaxunl. mibintc requested review of this revision. Herald added a project: clang. Background: Call to library arithmetic functions for div is emitted by the compiler and it set wrong “C” calling convention for calls to

[PATCH] D92596: [FPEnv] Correct constrained metadata in fp16-ops-strict.c

2020-12-06 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/lib/CodeGen/CGExprScalar.cpp:2992 // floating point environment in the loop. +//XXX true? llvm::BasicBlock *startBB = Builder.GetInsertBlock(); did you mean to leave this here? (blame shows the fixme comm

[PATCH] D92721: [PATCH] [clang] Create SPIRABIInfo to enable SPIR_FUNC calling convention

2020-12-07 Thread Melanie Blower via Phabricator via cfe-commits
mibintc planned changes to this revision. mibintc added a comment. I'm going to make further changes to this patch, it's not working as desired. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92721/new/ https://reviews.llvm.org/D92721 _

[PATCH] D92596: [FPEnv] Correct constrained metadata in fp16-ops-strict.c

2020-12-07 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/lib/CodeGen/CGExprScalar.cpp:3006 + CodeGenFunction::CGFPOptionsRAII FPOptsRAII(CGF, OpInfo.FPFeatures); SourceLocation Loc = E->getExprLoc(); kpn wrote: > mibintc wrote: > > What's the rule to follow about w

[PATCH] D92596: [FPEnv] Correct constrained metadata in fp16-ops-strict.c

2020-12-07 Thread Melanie Blower via Phabricator via cfe-commits
mibintc accepted this revision. mibintc added a comment. This revision is now accepted and ready to land. Thanks for the additional info @kpn Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92596/new/ https://reviews.llvm.org/D92596

[PATCH] D92721: [PATCH] [clang] Create SPIRABIInfo to enable SPIR_FUNC calling convention

2020-12-07 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 309932. mibintc added a comment. ready for review, thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92721/new/ https://reviews.llvm.org/D92721 Files: clang/lib/CodeGen/TargetInfo.cpp clang/test/CodeGe

[PATCH] D92721: [PATCH] [clang] Create SPIRABIInfo to enable SPIR_FUNC calling convention

2020-12-07 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. In D92721#2436917 , @mibintc wrote: > I'm going to make further changes to this patch, it's not working as desired. that was a false alarm. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.

[PATCH] D92721: [PATCH] [clang] Create SPIRABIInfo to enable SPIR_FUNC calling convention

2020-12-07 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. There are many RuntimeCalls that are created in Clang, including _read_pipe, all the OpenMP runtime calls, etc. Shall they all have their calling conventions set from the ABIInfo? Currently those calls are being set to 0. Repository: rG LLVM Github Monorepo CHANGE

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-10-20 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 299395. mibintc added a comment. Herald added a reviewer: aaron.ballman. Herald added a subscriber: dexonsmith. I added StrictFPAttr clang function attribute accroding to @rjmccall 's suggestion instead of using a boolean on the function decl, rebased, and r

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-10-20 Thread Melanie Blower via Phabricator via cfe-commits
mibintc marked 2 inline comments as done. mibintc added a comment. In D87528#2270541 , @rsmith wrote: >> @rsmith asked "I don't see changes to the constant evaluator". The semantic >> rules for enabling this pragma require that strict or precise semantics

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-10-20 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 299426. mibintc added a comment. I made the change requested by @rsmith to HandleIntToFloatCast, avoiding the check if Info.InConstantContext, then I corrected 2 tests so that -verify matches. clang/test/CXX/expr/expr.const/p2-0x.cpp clang/test/Parser/p

[PATCH] D89849: Add option 'exceptions' to pragma clang fp

2020-10-21 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/docs/LanguageExtensions.rst:3223 +// Preserve floating point exceptions +#pragma fp exceptions(strict) +z = x + y; do you mean pragma clang fp ... Comment at: clang/lib/Parse/ParsePr

[PATCH] D89849: Add option 'exceptions' to pragma clang fp

2020-10-21 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/lib/Parse/ParsePragma.cpp:3041 + if (AnnotValue->ExceptionsValue) +Actions.setExceptionMode(Tok.getLocation(), *AnnotValue->ExceptionsValue); ConsumeAnnotationToken(); sepavloff wrote: > mibintc wrote: > >

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-10-22 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/lib/Sema/SemaAttr.cpp:1020-1023 +// Resume the default rounding and exception modes. +NewFPFeatures.setRoundingModeOverride( +llvm::RoundingMode::NearestTiesToEven); +NewFPFeatures.setFPExceptionModeOverride(Lan

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress

2020-10-22 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/test/Parser/pragma-fenv_access.c:28 +#if defined(CPP) & defined(STRICT) +//not-expected-error@+3 {{constexpr variable 'frac' must be initialized by a constant expression}} +//not-expected-note@+2 {{compile time floating point arit

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend

2020-10-24 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 300494. mibintc retitled this revision from "Enable '#pragma STDC FENV_ACCESS' in frontend cf. D69272 - Work in Progress" to "Enable '#pragma STDC FENV_ACCESS' in frontend". mibintc added a comment. I updated the test cases, added documentation about constan

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend

2020-10-25 Thread Melanie Blower via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG2e204e23911b: [clang] Enable support for #pragma STDC FENV_ACCESS (authored by mibintc). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST A

[PATCH] D90316: [FPEnv] Diagnose pragmas FENV_ROUND,_ACCESS and float_control if target does not support StrictFP

2020-10-28 Thread Melanie Blower via Phabricator via cfe-commits
mibintc created this revision. mibintc added reviewers: kpn, sepavloff, aaron.ballman, pengfei. Herald added a project: clang. mibintc requested review of this revision. Herald added a subscriber: aheejin. If the target doesn't support setting StrictFP, then ignore pragmas that modify the setting

[PATCH] D90316: [FPEnv] Diagnose pragmas FENV_ROUND,_ACCESS and float_control if target does not support StrictFP

2020-10-28 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 301322. mibintc added a comment. Modified according to @kpn suggestion: if the command line has option fexperimental-strict-floating-point, the float pragmas will not be ignored. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://rev

[PATCH] D90316: [FPEnv] Diagnose pragmas FENV_ROUND,_ACCESS and float_control if target does not support StrictFP

2020-10-28 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. In D90316#2359366 , @kpn wrote: > I also added "-fexperimental-strict-floating-point" which makes it possible > to write tests for a target when bringing up the support on that target. I > think it would be confusing for that fla

[PATCH] D87528: Enable '#pragma STDC FENV_ACCESS' in frontend

2020-10-28 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. In D87528#2357970 , @pengfei wrote: > I agreed with Craig. Emitting constrained intrinsics on an unsupported target > may result in problems. It's better to check if it is supported and prevent > from the front end. Here's a pat

[PATCH] D90026: [FPEnv] Tests for rounding properties of constant evalution

2020-10-28 Thread Melanie Blower via Phabricator via cfe-commits
mibintc accepted this revision. mibintc added a comment. This revision is now accepted and ready to land. The failing unit test reported above, sizes.cpp, looks like it should be an Expected Fail Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90026/

[PATCH] D90316: [FPEnv] Diagnose pragmas FENV_ROUND,_ACCESS and float_control if target does not support StrictFP

2020-10-29 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 301708. mibintc added a comment. respond to @aaron.ballman 's review Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90316/new/ https://reviews.llvm.org/D90316 Files: clang/include/clang/Basic/DiagnosticParseK

[PATCH] D90316: [FPEnv] Diagnose pragmas FENV_ROUND,_ACCESS and float_control if target does not support StrictFP

2020-10-29 Thread Melanie Blower via Phabricator via cfe-commits
mibintc marked 2 inline comments as done. mibintc added inline comments. Comment at: clang/lib/Parse/ParsePragma.cpp:2967 +PP.Diag(Tok.getLocation(), diag::warn_pragma_fp_ignored) +<< PragmaName.getIdentifierInfo()->getName(); +return; aaron.ballm

[PATCH] D90316: [FPEnv] Diagnose pragmas FENV_ROUND,_ACCESS and float_control if target does not support StrictFP

2020-10-30 Thread Melanie Blower via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. mibintc marked an inline comment as done. Closed by commit rG13bfd89c4962: [clang][FPEnv] Diagnose Strict FP pragmas if target does not support StrictFP (authored by mi

[PATCH] D102343: [clang][patch][FPEnv} Initialization of C++ globals not strictfp aware

2021-05-12 Thread Melanie Blower via Phabricator via cfe-commits
mibintc created this revision. mibintc added reviewers: kpn, rjmccall, aaron.ballman, pcc. Herald added a subscriber: martong. Herald added a reviewer: shafik. mibintc requested review of this revision. Herald added a project: clang. In the proposed patch https://reviews.llvm.org/D81178 @kpn point

[PATCH] D102343: [clang][patch][FPEnv} Initialization of C++ globals not strictfp aware

2021-05-12 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/lib/CodeGen/CodeGenFunction.cpp:700 CurCodeDecl = D; - if (const auto *FD = dyn_cast_or_null(D)) -if (FD->usesSEHTry()) - CurSEHParent = FD; + const FunctionDecl *FD = dyn_cast_or_null(D); + if (FD && FD->usesSEHTry(

[PATCH] D101640: [clang][patch] Add support for option -fextend-arguments={32,64}: widen integer arguments to int64 in unprototyped function calls

2021-05-12 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/test/CodeGen/extend-arg-64.c:19 + +int vararg(int, ...); + aaron.ballman wrote: > Can you also add a test for K&R C functions? e.g., `int knr();` `sum = > knr(sum, u32, s32, u16, s16, u8, s8);` > > Also, can you

[PATCH] D101640: [clang][patch] Add support for option -fextend-arguments={32,64}: widen integer arguments to int64 in unprototyped function calls

2021-05-13 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 345154. mibintc added a comment. I responded to most all @aaron.ballman 's review comments, may need a little more wordsmithing Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D101640/new/ https://reviews.llvm.or

[PATCH] D101640: [clang][patch] Add support for option -fextend-arguments={32,64}: widen integer arguments to int64 in unprototyped function calls

2021-05-13 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. In D101640#2757039 , @aaron.ballman wrote: > Thanks! The last remaining question to me is whether this should be a > target-specific option or whether it makes sense to allow it as an option for > any target. I thought the pat

[PATCH] D101640: [clang][patch] Add support for option -fextend-arguments={32,64}: widen integer arguments to int64 in unprototyped function calls

2021-05-13 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. In D101640#2757316 , @aaron.ballman wrote: > In D101640#2757178 , @mibintc wrote: > >> In D101640#2757039 , >> @aaron.ballman wrote: >> >>> Than

[PATCH] D101640: [clang][patch] Add support for option -fextend-arguments={32,64}: widen integer arguments to int64 in unprototyped function calls

2021-05-13 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 345273. mibintc added a comment. Corrected the failing lit test and applied the clang-format patch Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D101640/new/ https://reviews.llvm.org/D101640 Files: clang/incl

[PATCH] D94376: [MemCpyOpt] Enable MemorySSA by default

2021-05-14 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. In my premerge testing, I see this fail which looks like the check string is incorrect: command stderr: C:\ws\w16e2-2\llvm-project\premerge-checks\llvm\test\Other\new-pm-lto-defaults.ll:84:21: error: CHECK-O23SZ-NEXT: expected string not found in input ; CHECK

[PATCH] D74436: Change clang option -ffp-model=precise to select ffp-contract=on

2021-05-14 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 345526. mibintc added a comment. I rebased and enhanced the test case clang/test/CodeGen/ffp-contract-option.c to show the effect of various ffp-contract={on,fast,off} * ffast-math=on,off in response to the request from @lebedev.ri ; sorry for leaving this

[PATCH] D74436: Change clang option -ffp-model=precise to select ffp-contract=on

2021-05-14 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. There are 3 clang settings for ffp-contract (on, off, fast) but the FMF bits have only "allow contract". Clang sets the "allow contract" bit in the IRBuilder only when ffp-contract=fast Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews

[PATCH] D101192: Add support for #elifdef and #elifndef

2021-05-17 Thread Melanie Blower via Phabricator via cfe-commits
mibintc accepted this revision. mibintc added a comment. This revision is now accepted and ready to land. let 'er rip CHANGES SINCE LAST ACTION https://reviews.llvm.org/D101192/new/ https://reviews.llvm.org/D101192 ___ cfe-commits mailing list cfe-

[PATCH] D101640: [clang][patch] Add support for option -fextend-arguments={32,64}: widen integer arguments to int64 in unprototyped function calls

2021-05-19 Thread Melanie Blower via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGd30dfa86760c: [clang][patch] Add support for option -fextend-arguments={32,64}: widen integer… (authored by mibintc). Repository: rG LLVM Github M

[PATCH] D74436: Change clang option -ffp-model=precise to select ffp-contract=on

2021-05-20 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. In D74436#2190566 , @lebedev.ri wrote: > In D74436#2190492 , @lebedev.ri > wrote: > >> <...> > > And by codegen changes i mostly mean newly-set/now-unset fp fast-math > instruction flags.

[PATCH] D74436: Change clang option -ffp-model=precise to select ffp-contract=on

2021-05-20 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. I created https://reviews.llvm.org/D102861 to make changes to the failing LNT tests. Hoping to push this commit after the test changes in D102862 are approved. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https:/

[PATCH] D99675: [llvm][clang] Create new intrinsic llvm.arith.fence to control FP optimization at expression level

2021-05-26 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 348046. mibintc retitled this revision from "RFC [llvm][clang] Create new intrinsic llvm.arith.fence to control FP optimization at expression level" to "[llvm][clang] Create new intrinsic llvm.arith.fence to control FP optimization at expression level". mibi

[PATCH] D100118: [clang] Add support for new builtin __arithmetic_fence to control floating point optimization, and new clang option fprotect-parens

2021-05-26 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 348052. mibintc retitled this revision from "[clang] RFC Support new builtin __arithmetic_fence to control floating point optimization, and new clang option fprotect-parens" to "[clang] Add support for new builtin __arithmetic_fence to control floating point

[PATCH] D74436: Change clang option -ffp-model=precise to select ffp-contract=on

2021-05-27 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. Hoping @lebedev.ri will take a look since he requested changes, thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D74436/new/ https://reviews.llvm.org/D74436 ___ cfe-commits m

[PATCH] D74436: Change clang option -ffp-model=precise to select ffp-contract=on

2021-05-27 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a subscriber: lebedev.ri. mibintc added a comment. In D74436#2785730 , @lebedev.ri wrote: > No real comments from me. > I assume, the errors are because `-ffp-contract=on` actually results in > *less* error? Yes, FMA improves accuracy, than

[PATCH] D95482: [PATCH] [clang] Fix bug 48848 by removing assertion related to recoverFromMSUnqualifiedLookup

2021-01-26 Thread Melanie Blower via Phabricator via cfe-commits
mibintc created this revision. mibintc added reviewers: erichkeane, rnk. mibintc requested review of this revision. Herald added a project: clang. Fix https://bugs.llvm.org/show_bug.cgi?id=48848 by removing assertion Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D95482 Files:

[PATCH] D95482: [PATCH] [clang] Fix bug 48848 by removing assertion related to recoverFromMSUnqualifiedLookup

2021-02-01 Thread Melanie Blower via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG08d46d50599a: [clang][PATCH] Fix bug 48848 assertion related to recoverFromMSUnqualifiedLookup (authored by mibintc). Repository: rG LLVM Github M

[PATCH] D95948: Stop traping on sNaN in __builtin_isnan

2021-02-03 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/lib/CodeGen/CGBuiltin.cpp:2988 CodeGenFunction::CGFPOptionsRAII FPOptsRAII(*this, E); -// FIXME: for strictfp/IEEE-754 we need to not trap on SNaN here. Value *V = EmitScalarExpr(E->getArg(0)); What a

[PATCH] D95948: Stop traping on sNaN in __builtin_isnan

2021-02-03 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/lib/CodeGen/CGBuiltin.cpp:3011 +Builder.CreateSub(llvm::ConstantInt::get(IntTy, ExpMask), AbsV); +V = Builder.CreateLShr(Sub, llvm::ConstantInt::get(IntTy, bitsize - 1)); +if (bitsize > 32) thopre w

[PATCH] D95948: Stop traping on sNaN in __builtin_isnan

2021-02-04 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. Should we add tests for mlong-double-64, -80, -128? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D95948/new/ https://reviews.llvm.org/D95948 ___ cfe-commits mailing list cfe-comm

[PATCH] D93769: [clang] Add support for option -ffp-eval-method and extend #pragma float_control similarly

2021-02-05 Thread Melanie Blower via Phabricator via cfe-commits
mibintc updated this revision to Diff 321756. mibintc retitled this revision from "RFC [clang] Add support for option -ffp-eval-method and extend #pragma float_control similarly" to "[clang] Add support for option -ffp-eval-method and extend #pragma float_control similarly". mibintc edited the su

[PATCH] D96203: [clang][patch] Modify sanitizer options names: renaming blacklist to blocklist

2021-02-06 Thread Melanie Blower via Phabricator via cfe-commits
mibintc created this revision. mibintc added reviewers: Sanitizers, aaron.ballman, echristo, MaskRay. Herald added subscribers: dexonsmith, dang. Herald added a reviewer: jansvoboda11. mibintc requested review of this revision. Herald added a project: clang. This changes the option names that incl

[PATCH] D96203: [clang][patch] Modify sanitizer options names: renaming blacklist to blocklist

2021-02-08 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. In D96203#2546856 , @aaron.ballman wrote: > Thank you for working on this! > >> This changes the option names that include substring blacklist to blocklist. > > I think this change works in some places, but in other places we say

[PATCH] D93769: [clang] Add support for option -ffp-eval-method and extend #pragma float_control similarly

2021-02-08 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/include/clang/Basic/LangOptions.h:234 +FEM_Extended, +/// Use the default float eval method specified by Target +FEM_TargetDefault aaron.ballman wrote: > FYI: it may be somewhat confusing that we have a

[PATCH] D93769: [clang] Add support for option -ffp-eval-method and extend #pragma float_control similarly

2021-02-08 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/docs/LanguageExtensions.rst:3363 + +When ``pragma float_control(source, off)`` or +``pragma float_control(double, off)`` or I'd like to add Intel ICL compatible syntax, but 'off' doesn't make too much sense to me.

[PATCH] D96203: [clang][patch] Modify sanitizer options names: renaming blacklist to blocklist

2021-02-12 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added a comment. In D96203#2559426 , @vitalybuka wrote: >>> FWIW I would prefer denylist as well. (Also uses of whitelist should be >>> allowlist, but also incremental :) > > I feel like existing and proposed value do match the meaning of this lis

[PATCH] D96974: [clang][patch] Inclusive language, modify filename SanitizerBlacklist.h to NoSanitizeList.h

2021-02-18 Thread Melanie Blower via Phabricator via cfe-commits
mibintc created this revision. mibintc added reviewers: vitalybuka, echristo, MaskRay, jansvoboda11, aaron.ballman. Herald added a subscriber: dexonsmith. mibintc requested review of this revision. Herald added a project: clang. This patch responds to a comment from @vitalybuka in D96203

[PATCH] D96203: [clang][patch] Modify sanitizer options names: renaming blacklist to blocklist

2021-02-18 Thread Melanie Blower via Phabricator via cfe-commits
mibintc added inline comments. Comment at: clang/include/clang/Basic/SanitizerBlacklist.h:20 #include #include vitalybuka wrote: > This file should go into a separate patch. It touches multiple files with > simple changes but unlikely will case rollback. >

<    1   2   3   4   5   >