[PATCH] D40013: [DeclPrinter] Allow printing fully qualified name of function declaration

2017-11-22 Thread Serge Pavlov via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL318896: [DeclPrinter] Allow printing fully qualified name of function declaration (authored by sepavloff). Repository: rL LLVM https://reviews.llvm.org/D40013 Files: cfe/trunk/include/clang/AST/Pret

[PATCH] D40508: Replace long type names in IR with hashes

2017-11-27 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff created this revision. Herald added a subscriber: JDevlieghere. If a source file extensively uses templates, resulting LLVM IR may have types with huge names. It may occur if a record type is defined in a class. In this case its type name contains all declaration contexts and, if a decla

[PATCH] D40508: Replace long type names in IR with hashes

2017-11-28 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 124587. sepavloff added a comment. Updated patch as part of it was committed in https://reviews.llvm.org/rL319178 https://reviews.llvm.org/D40508 Files: include/clang/AST/PrettyPrinter.h lib/AST/TypePrinter.cpp lib/CodeGen/CodeGenTypes.cpp test/Co

[PATCH] D40508: Replace long type names in IR with hashes

2017-11-28 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff marked 3 inline comments as done. sepavloff added a comment. In https://reviews.llvm.org/D40508#936617, @rnk wrote: > It's not clear to me that this abbreviation functionality should live in > Support. Clang probably wants enough control over this (assuming we're doing > it) that the

[PATCH] D40508: Replace long type names in IR with hashes

2017-11-28 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. In https://reviews.llvm.org/D40508#937212, @rjmccall wrote: > In Swift's IRGen, we have an option controlling whether to emit meaningful > value names. That option can be set directly from the command line, but it > defaults to whether we're emitting IR assembly (i.e

[PATCH] D40567: Always show template parameters in IR type names

2017-11-28 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff created this revision. Herald added subscribers: JDevlieghere, eraman. If a module contains opaque type and another one contains definition of equivalent type in sense of C++, `llvm-link` merges these types. In this procedure it can rely only on type name. An issue arises if the type is

[PATCH] D40508: Replace long type names in IR with hashes

2017-11-28 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. https://reviews.llvm.org/D40567 presents a patch that adds template argument names to class template specializations. It also describes the use case in which type names are used to identify type across different TUs. Adding template parameters obviously increase memory

[PATCH] D40508: Replace long type names in IR with hashes

2017-11-28 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. In https://reviews.llvm.org/D40508#938040, @rjmccall wrote: > My skepticism about the raw_ostream is not about the design of having a > custom raw_ostream subclass, it's that that subclass could conceivably be > re-used by some other client. It feels like it belongs

[PATCH] D40508: Replace long type names in IR with hashes

2017-11-29 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. In https://reviews.llvm.org/D40508#938686, @rjmccall wrote: > In https://reviews.llvm.org/D40508#938675, @sepavloff wrote: > > > In https://reviews.llvm.org/D40508#938040, @rjmccall wrote: > > > > > My skepticism about the raw_ostream is not about the design of having a

[PATCH] D40567: Always show template parameters in IR type names

2017-11-29 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. In https://reviews.llvm.org/D40567#940025, @rsmith wrote: > What actual problem is this solving? These IR type names exist only for the > convenience of humans reading the IR, and making them long (potentially > extremely long) by including template arguments seems li

[PATCH] D40508: Replace long type names in IR with hashes

2017-11-29 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. In https://reviews.llvm.org/D40508#939513, @rjmccall wrote: > In https://reviews.llvm.org/D40508#938854, @sepavloff wrote: > > > In https://reviews.llvm.org/D40508#938686, @rjmccall wrote: > > > > > The LLVM linking model does not actually depend on struct type names >

[PATCH] D40567: Always show template parameters in IR type names

2017-12-04 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. Consider a bit more complicated example. File `common.h` #ifndef COMMON_H #define COMMON_H struct Alarm { }; struct Info { }; template struct Handler; #endif File `use-1.cpp` #include "common.h" Handler *info; void set(Handler *e) { info = e; } Fil

[PATCH] D40567: Always show template parameters in IR type names

2017-12-06 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 125761. sepavloff added a comment. Updated patch - old type names are generated always if --ir-type-names is not specified, - added new value of --ir-type-names, none, to suppress type names, - value of --ir-type-names is stored in module properties. Repo

[PATCH] D132867: [Clang] Use virtual FS in processing config files

2022-08-29 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff created this revision. sepavloff added reviewers: rjmccall, kadircet, sammccall. Herald added a subscriber: hiraditya. Herald added a project: All. sepavloff requested review of this revision. Herald added subscribers: llvm-commits, MaskRay. Herald added projects: clang, LLVM. Clang has

[PATCH] D132379: [Support] Class for response file expansion

2022-08-29 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 456396. sepavloff added a comment. Move change for VFS support into separate patch Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D132379/new/ https://reviews.llvm.org/D132379 Files: clang/lib/Driver/Driver.

[PATCH] D133325: [Driver] Allow search of included response files as configuration files

2022-09-05 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff created this revision. sepavloff added reviewers: rjmccall, aaron.ballman, kadircet, sammccall, jackoalan. Herald added a subscriber: hiraditya. Herald added a project: All. sepavloff requested review of this revision. Herald added subscribers: llvm-commits, MaskRay. Herald added project

[PATCH] D132867: [Clang] Use virtual FS in processing config files

2022-09-05 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 458035. sepavloff added a comment. Fix documentation Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D132867/new/ https://reviews.llvm.org/D132867 Files: clang/lib/Driver/Driver.cpp clang/unittests/Driver/T

[PATCH] D132867: [Clang] Use virtual FS in processing config files

2022-09-05 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. In D132867#3769791 , @sammccall wrote: > This seems like the right thing in principle, but it's still pretty scary: > > - this is going to break anyone who's using VFS != RealFS together with > config files, as we no longer sea

[PATCH] D132867: [Clang] Use virtual FS in processing config files

2022-09-06 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 458205. sepavloff added a comment. Add a release note Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D132867/new/ https://reviews.llvm.org/D132867 Files: clang/docs/ReleaseNotes.rst clang/lib/Driver/Driver

[PATCH] D132867: [Clang] Use virtual FS in processing config files

2022-09-06 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. In D132867#3771004 , @sammccall wrote: >> Strictly speaking this is incorrect behavior because file system object must >> be used for all operations on files, according to documentation. > > I don't think this is a strong argum

[PATCH] D133325: [Driver] Allow search of included response files as configuration files

2022-09-06 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 458216. sepavloff added a comment. Change help message Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D133325/new/ https://reviews.llvm.org/D133325 Files: clang/docs/UsersManual.rst clang/include/clang/Dri

[PATCH] D132867: [Clang] Use virtual FS in processing config files

2022-09-08 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. Thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D132867/new/ https://reviews.llvm.org/D132867 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.or

[PATCH] D132867: [Clang] Use virtual FS in processing config files

2022-09-09 Thread Serge Pavlov 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 rG9424497e43af: [Clang] Use virtual FS in processing config files (authored by sepavloff). Changed prior to commit: https://reviews.llvm.org/D132867

[PATCH] D132379: [Support] Class for response file expansion

2022-09-11 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 459403. sepavloff added a comment. Rebased Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D132379/new/ https://reviews.llvm.org/D132379 Files: clang/lib/Driver/Driver.cpp clang/lib/Tooling/ExpandResponseFi

[PATCH] D133325: [Driver] Allow search of included response files as configuration files

2022-09-12 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 459508. sepavloff added a comment. Rebased, addressed reviewers' notes. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D133325/new/ https://reviews.llvm.org/D133325 Files: clang/docs/UsersManual.rst clang/

[PATCH] D133325: [Driver] Allow search of included response files as configuration files

2022-09-12 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff marked 4 inline comments as done. sepavloff added a comment. In D133325#3771275 , @MaskRay wrote: > For a config file, `--search-config-dirs` is introduced to change how `@cfg` > is resolved > (relative to `--config-system-dir` or `--config-use

[PATCH] D123952: [FPEnv] Allow CompoundStmt to keep FP options

2022-06-27 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 440241. sepavloff added a comment. Rebased, optimized FPOptions::diffWith. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D123952/new/ https://reviews.llvm.org/D123952 Files: clang/include/clang/AST/JSONNode

[PATCH] D123952: [FPEnv] Allow CompoundStmt to keep FP options

2022-06-27 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added inline comments. Comment at: clang/lib/Sema/SemaStmt.cpp:452 + : getCurCompoundScope().FPFeatures; + FPOptionsOverride FPDiff = getCurFPFeatures().diffWith(FPO); + rjmccall wrote: > How cheap is this? Is this something it wo

[PATCH] D123952: [FPEnv] Allow CompoundStmt to keep FP options

2022-06-27 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added inline comments. Comment at: clang/lib/Basic/LangOptions.cpp:214 +OverrideMask |= NAME##Mask; +#include "clang/Basic/FPOptions.def" + return FPOptionsOverride(*this, OverrideMask); rjmccall wrote: > Hmm. If we can assume that all of the opti

[PATCH] D123952: [FPEnv] Allow CompoundStmt to keep FP options

2022-06-28 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 440644. sepavloff added a comment. Updated patch according to reviewers' notes - Rename field of CompoundScopeInfo, - Treat FE_DYNAMIC like other rounding mode arguments in StmtPrinter, - Rename and optimize method for calculation of FP option difference.

[PATCH] D123952: [FPEnv] Allow CompoundStmt to keep FP options

2022-06-28 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added inline comments. Comment at: clang/include/clang/Basic/LangOptions.h:747 + /// Return difference with the given option set. + FPOptionsOverride diffWith(const FPOptions &Base); + rjmccall wrote: > Can you make direction more obvious in the metho

[PATCH] D123952: [FPEnv] Allow CompoundStmt to keep FP options

2022-06-30 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. Herald added a reviewer: NoQ. Thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D123952/new/ https://reviews.llvm.org/D123952 ___ cfe-commits mailing list cfe-commits@lists.

[PATCH] D123952: [FPEnv] Allow CompoundStmt to keep FP options

2022-07-01 Thread Serge Pavlov 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 rGb822efc7404b: [FPEnv] Allow CompoundStmt to keep FP options (authored by sepavloff). Changed prior to commit: https://reviews.llvm.org/D123952?vs=

[PATCH] D130907: [Clang] Use pragma FENV_ROUND to reset rounding mode settings.

2022-08-01 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff created this revision. sepavloff added reviewers: rjmccall, aaron.ballman, kpn. Herald added a project: All. sepavloff requested review of this revision. Herald added a project: clang. Now starting from the first use of `pragma FENV_ROUND` rounding mode becomes user-defined and there is

[PATCH] D131143: [Clang] Interaction of FP pragmas and function template instantiation

2022-08-03 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff created this revision. sepavloff added reviewers: rsmith, rjmccall, aaron.ballman, efriedma. Herald added a subscriber: martong. Herald added a reviewer: shafik. Herald added a project: All. sepavloff requested review of this revision. Herald added a project: clang. C standard defines se

[PATCH] D129464: [Clang][CodeGen] Set FP options of builder at entry to compound statement

2022-08-03 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. Interaction of pragmas and templates is implemented in https://reviews.llvm.org/D131143. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D129464/new/ https://reviews.llvm.org/D129464 ___

[PATCH] D131143: [Clang] Interaction of FP pragmas and function template instantiation

2022-08-05 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. In D131143#3700373 , @efriedma wrote: >> In the case is explicit instantiation there is apparent connection >> between a point in source code and instantiated function. It can >> support interaction of pragmas that act in that p

[PATCH] D130907: [Clang] Use pragma FENV_ROUND to reset rounding mode settings.

2022-08-05 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added inline comments. Comment at: clang/lib/Sema/SemaStmt.cpp:398 +// If dynamic rounding mode is specified in absence of FENV_ACCESS, treat it +// as setting default rounding mode. +FpPragmaStack.CurrentValue.clearConstRoundingModeOverride();

[PATCH] D106804: [test-suite] Add tests for FP classification intrinsics

2021-07-26 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff created this revision. sepavloff added reviewers: efriedma, kpn, thopre, jonpa, cameron.mcinally, RKSimon, craig.topper. Herald added a subscriber: mgorny. sepavloff requested review of this revision. Repository: rT test-suite https://reviews.llvm.org/D106804 Files: SingleSource/U

[PATCH] D104854: Introduce intrinsic llvm.isnan

2021-07-26 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 361707. sepavloff added a comment. Updated patch - Rebased, - Applied small enhancement to integer implementation. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D104854/new/ https://reviews.llvm.org/D104854

[PATCH] D104854: Introduce intrinsic llvm.isnan

2021-07-26 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. In D104854#2886328 , @efriedma wrote: >> The options '-ffast-math' and '-fno-honor-nans' imply that FP operation >> operands are never NaNs. This assumption however should not be applied >> to the functions that check FP number

[PATCH] D104854: Introduce intrinsic llvm.isnan

2021-07-26 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 361718. sepavloff added a comment. Fixed documentation Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D104854/new/ https://reviews.llvm.org/D104854 Files: clang/lib/CodeGen/CGBuiltin.cpp clang/test/CodeGen

[PATCH] D104854: Introduce intrinsic llvm.isnan

2021-07-26 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added inline comments. Comment at: llvm/docs/LangRef.rst:20983 + +These functions get properties of floating point values. + tschuett wrote: > Fixed, thank you. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.o

[PATCH] D104854: Introduce intrinsic llvm.isnan

2021-07-28 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. In D104854#2905430 , @efriedma wrote: > In D104854#2904826 , @sepavloff > wrote: > >> In D104854#2886328 , @efriedma >> wrote: >> The opt

[PATCH] D104854: Introduce intrinsic llvm.isnan

2021-07-29 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added inline comments. Comment at: llvm/test/CodeGen/X86/x86-fpclass.ll:173 + +define <1 x i1> @isnan_double_vec1(<1 x double> %x) { +; CHECK-32-LABEL: isnan_double_vec1: RKSimon wrote: > add nounwind to reduce cfi noise (other tests would benefit as we

[PATCH] D123952: [FPEnv] Allow CompoundStmt to keep FP options

2022-04-18 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff created this revision. sepavloff added reviewers: rsmith, rjmccall, aaron.ballman, kpn. Herald added subscribers: dexonsmith, martong. Herald added a reviewer: shafik. Herald added a project: All. sepavloff requested review of this revision. Herald added a project: clang. AST does not ha

[PATCH] D103395: PR45879: Keep evaluated expression in LValue object

2022-02-03 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff abandoned this revision. sepavloff added a comment. @rsmith, thank you! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D103395/new/ https://reviews.llvm.org/D103395 ___ cfe-commits mailing list c

[PATCH] D129464: [Clang][CodeGen] Set FP options of builder at entry to compound statement

2022-07-10 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff created this revision. sepavloff added reviewers: kpn, rjmccall, aaron.ballman. Herald added subscribers: jsji, pengfei. Herald added a project: All. sepavloff requested review of this revision. Herald added a project: clang. Previously compilation of a few tests produced incorrect code.

[PATCH] D125625: Implementation of '#pragma STDC FENV_ROUND'

2022-07-11 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 443606. sepavloff added a comment. Rebased and addressed reviever's comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D125625/new/ https://reviews.llvm.org/D125625 Files: clang/include/clang/Basic/Diag

[PATCH] D125625: Implementation of '#pragma STDC FENV_ROUND'

2022-07-11 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added inline comments. Comment at: clang/lib/CodeGen/CGStmt.cpp:488 + } + if (NewRM != llvm::RoundingMode::Dynamic) +Builder.CreateIntrinsic( aaron.ballman wrote: > I was imagining that if the new rounding mode is dynamic, we still need to > rese

[PATCH] D129464: [Clang][CodeGen] Set FP options of builder at entry to compound statement

2022-07-15 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added inline comments. Comment at: clang/test/CodeGen/pragma-fenv_access.cpp:35 +} + + aaron.ballman wrote: > There are some extra test cases I'd like to see coverage for because there > are some interesting edge cases to consider. > ``` > template >

[PATCH] D125625: Implementation of '#pragma STDC FENV_ROUND'

2022-05-15 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff created this revision. sepavloff added reviewers: rsmith, rjmccall, aaron.ballman, kpn, andrew.w.kaylor. Herald added a project: All. sepavloff requested review of this revision. Herald added a project: clang. This pragma is introduced by forthcoming C2x standard and can be used to set

[PATCH] D123952: [FPEnv] Allow CompoundStmt to keep FP options

2022-05-15 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 429525. sepavloff added a comment. Addressed review notes - Added support in JSON node dumper, - Added support in ast-print Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D123952/new/ https://reviews.llvm.org/

[PATCH] D125635: Move NumStmts from CompoundStmtBitfields to fields of CompoundStmt

2022-05-15 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff created this revision. sepavloff added reviewers: aaron.ballman, rsmith, rjmccall. Herald added a project: All. sepavloff requested review of this revision. Herald added a project: clang. Number of statements in CompoundStmt is kept in a bit-field of Stmt common part. The field has 24 bi

[PATCH] D123952: [FPEnv] Allow CompoundStmt to keep FP options

2022-05-15 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. In D123952#3488638 , @aaron.ballman wrote: > Thanks for working on this! One thing that's not clear to me is what bugs > this is solving -- the test coverage only shows a change to textual AST > dumping behavior. Is this othe

[PATCH] D125635: Move NumStmts from CompoundStmtBitfields to fields of CompoundStmt

2022-05-19 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 430613. sepavloff added a comment. Move NumStmts back to CompoundStmtBitfields Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D125635/new/ https://reviews.llvm.org/D125635 Files: clang/include/clang/AST/Stmt

[PATCH] D125635: Move NumStmts from CompoundStmtBitfields to fields of CompoundStmt

2022-05-19 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. In D125635#3514607 , @rjmccall wrote: > On the one hand, I'm not sure 8M statements in a block — or 1M, for that > matter — is an unreasonable implementation limit. On the other hand, this > patch looks like it only changes o

[PATCH] D125635: Make CompoundStmtBitfields::NumStmts not a bit-field

2022-05-20 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. Thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D125635/new/ https://reviews.llvm.org/D125635 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.or

[PATCH] D125635: Make CompoundStmtBitfields::NumStmts not a bit-field

2022-05-20 Thread Serge Pavlov via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG5537b22ccbdc: Make CompoundStmtBitfields::NumStmts not a bit-field (authored by sepavloff). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D125635/new/ https:

[PATCH] D123952: [FPEnv] Allow CompoundStmt to keep FP options

2022-05-23 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 431294. sepavloff added a comment. Update after D125635 and rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D123952/new/ https://reviews.llvm.org/D123952 Files: clang

[PATCH] D36057: Use class to pass information about executable name

2017-07-30 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff created this revision. Herald added subscribers: srhines, klimek. Information about clang executable name component, such as target and driver mode, was passes in std::pair. With this change it is passed in special structure. It improves readability and makes access to this information m

[PATCH] D36353: Instantiate constexpr function when it is used

2017-08-05 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff created this revision. Previous behavior was to instantiate constexpr function always, even if it is used in the body of a template. For instance, in the following code: template constexpr T foo(T x) { return x; } template T bar(T x) { return foo(0); } the function template special

[PATCH] D36353: Instantiate constexpr function when it is used

2017-08-06 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 109928. sepavloff added a comment. Updated patch I missed CWG issue 1581. It make patch description invalid, but the patch itself can be repaired with small modification. This fix originated from the attempt to solve the problem described in http://lists.l

[PATCH] D36057: Use class to pass information about executable name

2017-08-13 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 110906. sepavloff added a comment. Herald added a subscriber: mgorny. Updated patch - The class representing info about clang executable name now keeps driver mode component as well, - Added unit tests. https://reviews.llvm.org/D36057 Files: include/c

[PATCH] D24933: Enable configuration files in clang

2017-08-13 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 110909. sepavloff edited the summary of this revision. sepavloff added a comment. Updated patch - Some functionality, not related to config files directly, is move to separate changes - Cleanup of tests. This change does not implement using construct @fil

[PATCH] D85960: [AST][FPEnv] Keep FP options in trailing storage of CastExpr

2020-09-12 Thread Serge Pavlov via Phabricator via cfe-commits
This revision was not accepted when it landed; it landed in state "Needs Review". This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG6c8041aa0ffe: [AST][FPEnv] Keep FP options in trailing storage of

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

2020-09-13 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. > @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 "Commandeer Revision" to transfer ownership on a revision item. I don't think however th

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

2020-09-14 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. In D69272#2268337 , @mibintc wrote: > I am working on a task to ensure that clang is doing floating point constant > folding correctly. Could you please share your plans on it? I recently also started implementing constant fol

[PATCH] D78902: [Driver] Add output file to properties of Command

2020-09-15 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 291899. sepavloff added a comment. Rebase and ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D78902/new/ https://reviews.llvm.org/D78902 Files: clang/include/clang/Driver/Job.h clang/lib/Driver/Job.cp

[PATCH] D76599: Represent FP options in AST by special Statement node

2020-09-15 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff abandoned this revision. sepavloff added a comment. FPOptions is now stored in AST objects. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76599/new/ https://reviews.llvm.org/D76599 ___ cfe-comm

[PATCH] D77545: Represent FP options in AST by special Expression node

2020-09-15 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff abandoned this revision. sepavloff added a comment. FPOptions is now stored in AST objects. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D77545/new/ https://reviews.llvm.org/D77545 ___ cfe-comm

[PATCH] D78899: [Driver] Add callback to Command execution

2020-09-15 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 292113. sepavloff added a comment. Rebased patch Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D78899/new/ https://reviews.llvm.org/D78899 Files: clang/include/clang/Driver/Compilation.h clang/lib/Driver/

[PATCH] D78902: [Driver] Add output file to properties of Command

2020-09-15 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a reviewer: jyknight. sepavloff added a comment. This change is similar to D82782 . Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D78902/new/ https://reviews.llvm.org/D78902 _

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

2020-09-16 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff created this revision. sepavloff added reviewers: rjmccall, kpn, mibintc. Herald added subscribers: llvm-commits, dexonsmith. Herald added projects: clang, LLVM. sepavloff requested review of this revision. Previously methods `FPOptions::get*` returned unsigned value even if the correspo

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

2020-09-17 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff created this revision. sepavloff added reviewers: rsmith, rjmccall, mibintc, kpn. Herald added a project: clang. sepavloff requested review of this revision. The change implements evaluation of constant floating point expressions under non-default rounding modes. The main objective was t

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

2020-09-18 Thread Serge Pavlov 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 rG8a86261c511e: [FPEnv] Use typed accessors in FPOptions (authored by sepavloff). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION h

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

2020-09-18 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 292841. sepavloff added a comment. Updated patch Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D87822/new/ https://reviews.llvm.org/D87822 Files: clang/include/clang/AST/Expr.h clang/lib/AST/Expr.cpp cl

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

2020-09-18 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff marked an inline comment as done. sepavloff added inline comments. Comment at: clang/lib/AST/ExprConstant.cpp:2427 +FPOptions FPFeatures = Cast->getFPFeaturesInEffect(Info.Ctx.getLangOpts()); +RM = FPFeatures.getRoundingMode(); + } rjmccall wro

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

2020-09-24 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 293974. sepavloff marked an inline comment as done. sepavloff added a comment. Updated patch - improved Expr::getFPFeaturesInEffect, - added tests for _Complex, - added tests for constexpr, - added chech in HandleFloatToFloatCast, - implemented printing FPO

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

2020-09-24 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added inline comments. Comment at: clang/lib/AST/ExprConstant.cpp:2427 +FPOptions FPFeatures = Cast->getFPFeaturesInEffect(Info.Ctx.getLangOpts()); +RM = FPFeatures.getRoundingMode(); + } rjmccall wrote: > sepavloff wrote: > > rjmccall wrote: >

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

2020-09-24 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 294230. sepavloff added a comment. Added diagnostic message Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D87822/new/ https://reviews.llvm.org/D87822 Files: clang/include/clang/AST/Expr.h clang/include/cl

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

2020-09-24 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff 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::opSta

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

2020-09-25 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff 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 In this particular case we know for sure that the result does not dep

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

2020-09-26 Thread Serge Pavlov 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 rG6314f412a83d: [FPEnv] Evaluate constant expressions under non-default rounding modes (authored by sepavloff). Repository: rG LLVM Github Monorepo

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

2020-09-28 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. 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 files failed to compile because of an error > message on static initializer, like t

[PATCH] D84932: [builtins] Add more test cases for __div[sdt]f3 LibCalls

2020-08-18 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. In D84932#2223559 , @atrosinenko wrote: > @sepavloff > > Thank you for the test cases. Looks like it is worth completely rewriting the > three tests as table-driven tests Tests are not required to be compact. It is more importa

[PATCH] D85031: [builtins] Unify the softfloat division implementation

2020-08-20 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added inline comments. Comment at: compiler-rt/lib/builtins/fp_div_impl.inc:99 + // 0 < x0(b) < 1 + // abs(x0(b) - 1/b) <= 3/4 - 1/sqrt(2) + This estimation is absent from the original comment. Do you have reference where it came from? Also the o

[PATCH] D78902: [Driver] Add output file to properties of Command

2020-08-20 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. Ping. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D78902/new/ https://reviews.llvm.org/D78902 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cg

[PATCH] D78899: [Driver] Add callback to Command execution

2020-08-20 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. Ping. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D78899/new/ https://reviews.llvm.org/D78899 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cg

[PATCH] D85031: [builtins] Unify the softfloat division implementation

2020-08-20 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added inline comments. Comment at: compiler-rt/lib/builtins/fp_div_impl.inc:99 + // 0 < x0(b) < 1 + // abs(x0(b) - 1/b) <= 3/4 - 1/sqrt(2) + atrosinenko wrote: > sepavloff wrote: > > This estimation is absent from the original comment. Do you have

[PATCH] D85960: [AST][FPEnv] Keep FP options in trailing storage of CastExpr

2020-08-24 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. In D85960#2218798 , @kpn wrote: > You mentioned in D85920 a need to merge > this review with that review. I don't think that's needed. This code here is > farther along. It does everything that

[PATCH] D84932: [builtins] Add more test cases for __div[sdt]f3 LibCalls

2020-08-25 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff accepted this revision. sepavloff added a comment. This revision is now accepted and ready to land. LGTM. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D84932/new/ https://reviews.llvm.org/D84932 __

[PATCH] D85031: [builtins] Unify the softfloat division implementation

2020-08-26 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff accepted this revision. sepavloff added a comment. This revision is now accepted and ready to land. LGTM. I don't fully understand the magic of fixing possible overflow, I hope you made enough investigation and testing to be sure it works as expected. Please wait a couple of days befor

[PATCH] D85031: [builtins] Unify the softfloat division implementation

2020-08-31 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. The new comments are much better, thank you! I think this version may be committed. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85031/new/ https://reviews.llvm.org/D85031 ___

[PATCH] D85032: [builtins] Make divXf3 handle denormal results

2020-08-31 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff accepted this revision. sepavloff added a comment. This revision is now accepted and ready to land. LGTM. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85032/new/ https://reviews.llvm.org/D85032 __

[PATCH] D85031: [builtins] Unify the softfloat division implementation

2020-08-31 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added inline comments. Comment at: compiler-rt/lib/builtins/fp_div_impl.inc:109 + +#if NUMBER_OF_HALF_ITERATIONS > 0 + // Starting with (n-1) half-width iterations scanon wrote: > sepavloff wrote: > > atrosinenko wrote: > > > sepavloff wrote: > > > > I

[PATCH] D86921: [FPEnv] Partially implement #pragma STDC FENV_ROUND

2020-09-01 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff created this revision. sepavloff added reviewers: rsmith, rjmccall, kpn, andrew.w.kaylor, steven_wu, mibintc, shafik. Herald added a subscriber: dexonsmith. Herald added a project: clang. sepavloff requested review of this revision. This change implements pragma STDC FENV_ROUND, which i

[PATCH] D78902: [Driver] Add output file to properties of Command

2020-09-03 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff updated this revision to Diff 289693. sepavloff added a comment. Rebased patch Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D78902/new/ https://reviews.llvm.org/D78902 Files: clang/include/clang/Driver/Job.h clang/lib/Driver/Job.cpp

[PATCH] D86921: [FPEnv] Partially implement #pragma STDC FENV_ROUND

2020-09-04 Thread Serge Pavlov via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGa633da5391b0: [FPEnv] Partially implement #pragma STDC FENV_ROUND (authored by sepavloff). Changed prior to commit: https://reviews.llvm.org/D86921?vs=289110&id=289901#toc Repository: rG LLVM Github

[PATCH] D85960: [AST][FPEnv] Keep FP options in trailing storage of CastExpr

2020-09-07 Thread Serge Pavlov via Phabricator via cfe-commits
sepavloff added a comment. Any feedback? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85960/new/ https://reviews.llvm.org/D85960 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llv

<    1   2   3   4   5   6   7   >