r340021 - [ThinLTO] Correct documentation on default number of threads

2018-08-17 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Fri Aug 17 06:19:36 2018 New Revision: 340021 URL: http://llvm.org/viewvc/llvm-project?rev=340021&view=rev Log: [ThinLTO] Correct documentation on default number of threads Summary: The number of threads used for ThinLTO backend parallelism was dropped to the number of cor

Re: [PATCH] D47597: IRGen: Write .dwo files when -split-dwarf-file is used together with -fthinlto-index.

2018-05-31 Thread Teresa Johnson via cfe-commits
On Thu, May 31, 2018 at 12:00 PM Peter Collingbourne wrote: > > > On Thu, May 31, 2018 at 11:54 AM, David Blaikie > wrote: > >> >> >> On Thu, May 31, 2018 at 11:20 AM Peter Collingbourne via Phabricator < >> revi...@reviews.llvm.org> wrote: >> >>> pcc created this revision. >>> pcc added reviewe

r333966 - [ThinLTO] Add testing of new summary index format to a couple CFI tests

2018-06-04 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Mon Jun 4 16:05:24 2018 New Revision: 333966 URL: http://llvm.org/viewvc/llvm-project?rev=333966&view=rev Log: [ThinLTO] Add testing of new summary index format to a couple CFI tests Summary: Adds testing of combined index summary entries in disassembly format to CFI test

r350949 - [LTO] Add option to enable LTOUnit splitting, and disable unless needed

2019-01-11 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Fri Jan 11 10:32:07 2019 New Revision: 350949 URL: http://llvm.org/viewvc/llvm-project?rev=350949&view=rev Log: [LTO] Add option to enable LTOUnit splitting, and disable unless needed Summary: Adds a new -f[no]split-lto-unit flag that is disabled by default to control modu

r347887 - [ThinLTO] Allow importing of multiple symbols with same GUID

2018-11-29 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Thu Nov 29 09:02:59 2018 New Revision: 347887 URL: http://llvm.org/viewvc/llvm-project?rev=347887&view=rev Log: [ThinLTO] Allow importing of multiple symbols with same GUID Summary: The is the clang side of the fix in D55047, to handle the case where two different modules

r347892 - Add missing REQUIRES to new test

2018-11-29 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Thu Nov 29 10:02:31 2018 New Revision: 347892 URL: http://llvm.org/viewvc/llvm-project?rev=347892&view=rev Log: Add missing REQUIRES to new test Test added in r347887 requires an x86 target. Modified: cfe/trunk/test/CodeGen/thinlto_backend_local_name_conflict.ll Modi

r359025 - [ThinLTO] Pass down opt level to LTO backend and handle -O0 LTO in new PM

2019-04-23 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Tue Apr 23 11:56:19 2019 New Revision: 359025 URL: http://llvm.org/viewvc/llvm-project?rev=359025&view=rev Log: [ThinLTO] Pass down opt level to LTO backend and handle -O0 LTO in new PM Summary: The opt level was not being passed down to the ThinLTO backend when invoked vi

r366623 - [LTO] Always mark regular LTO units with EnableSplitLTOUnit=1

2019-07-19 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Fri Jul 19 16:02:58 2019 New Revision: 366623 URL: http://llvm.org/viewvc/llvm-project?rev=366623&view=rev Log: [LTO] Always mark regular LTO units with EnableSplitLTOUnit=1 Summary: Regular LTO modules do not need LTO Unit splitting, only ThinLTO does (they must be consis

r360468 - [ThinLTO] Clang test changes for new CanAutoHide flag

2019-05-10 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Fri May 10 13:38:31 2019 New Revision: 360468 URL: http://llvm.org/viewvc/llvm-project?rev=360468&view=rev Log: [ThinLTO] Clang test changes for new CanAutoHide flag Modified: cfe/trunk/test/CodeGen/thinlto-distributed-cfi-devirt.ll cfe/trunk/test/CodeGen/thinlto-d

r350424 - [ThinLTO] Clang changes to utilize new pass to handle chains of aliases

2019-01-04 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Fri Jan 4 11:05:01 2019 New Revision: 350424 URL: http://llvm.org/viewvc/llvm-project?rev=350424&view=rev Log: [ThinLTO] Clang changes to utilize new pass to handle chains of aliases Summary: As with NameAnonGlobals, invoke the new CanonicalizeAliases via clang when using

r373217 - [Clang] Use -main-file-name for source filename if not set

2019-09-30 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Mon Sep 30 08:05:35 2019 New Revision: 373217 URL: http://llvm.org/viewvc/llvm-project?rev=373217&view=rev Log: [Clang] Use -main-file-name for source filename if not set -main-file-name is currently used to set the source name used in debug information. If the source fil

r373237 - Fix buildbot failure from r373217 (don't match metadata id exactly)

2019-09-30 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Mon Sep 30 10:26:48 2019 New Revision: 373237 URL: http://llvm.org/viewvc/llvm-project?rev=373237&view=rev Log: Fix buildbot failure from r373217 (don't match metadata id exactly) Fix this failure by ignoring the id of the metadata being checked: http://green.lab.llvm

r373370 - [ThinLTO] Enable index-only WPD from clang

2019-10-01 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Tue Oct 1 11:08:29 2019 New Revision: 373370 URL: http://llvm.org/viewvc/llvm-project?rev=373370&view=rev Log: [ThinLTO] Enable index-only WPD from clang Summary: To trigger the index-only Whole Program Devirt support added to LLVM, we need to be able to specify -fno-spli

r330194 - [ThinLTO] Pass -save-temps to LTO backend for distributed ThinLTO builds

2018-04-17 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Tue Apr 17 09:39:25 2018 New Revision: 330194 URL: http://llvm.org/viewvc/llvm-project?rev=330194&view=rev Log: [ThinLTO] Pass -save-temps to LTO backend for distributed ThinLTO builds Summary: The clang driver option -save-temps was not passed to the LTO config, so when i

r330210 - Remove unused variable

2018-04-17 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Tue Apr 17 13:21:53 2018 New Revision: 330210 URL: http://llvm.org/viewvc/llvm-project?rev=330210&view=rev Log: Remove unused variable Fixes unused variable error introduced in r330194. Modified: cfe/trunk/lib/Driver/ToolChains/Clang.cpp Modified: cfe/trunk/lib/Drive

r330212 - Require shell for test

2018-04-17 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Tue Apr 17 13:36:51 2018 New Revision: 330212 URL: http://llvm.org/viewvc/llvm-project?rev=330212&view=rev Log: Require shell for test Attempt to fix windows bot which doesn't like the "(cd .." invocation added in r330194: http://lab.llvm.org:8011/builders/clang-with-thin-

r331592 - [ThinLTO] Support opt remarks options with distributed ThinLTO backends

2018-05-05 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Sat May 5 07:37:29 2018 New Revision: 331592 URL: http://llvm.org/viewvc/llvm-project?rev=331592&view=rev Log: [ThinLTO] Support opt remarks options with distributed ThinLTO backends Summary: Passes down the necessary code ge options to the LTO Config to enable -fdiagnost

r331593 - Add required target to address bot failures from r331592

2018-05-05 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Sat May 5 08:15:04 2018 New Revision: 331593 URL: http://llvm.org/viewvc/llvm-project?rev=331593&view=rev Log: Add required target to address bot failures from r331592 Failing on non-x86 bots, needs x86 target for code gen. Modified: cfe/trunk/test/CodeGen/thinlto-di

r331596 - Skip part of test added in r331592 to help debug bot failures

2018-05-05 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Sat May 5 08:54:57 2018 New Revision: 331596 URL: http://llvm.org/viewvc/llvm-project?rev=331596&view=rev Log: Skip part of test added in r331592 to help debug bot failures Trying to debug why/where a few bots getting exit code 256 e.g. http://green.lab.llvm.org/green/job

r331597 - Add -target to address errors in test from r331592

2018-05-05 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Sat May 5 09:37:31 2018 New Revision: 331597 URL: http://llvm.org/viewvc/llvm-project?rev=331597&view=rev Log: Add -target to address errors in test from r331592 The error turns out to be: Assertion failed: (Target.isCompatibleDataLayout(getDataLayout()) && "Can't create

r335618 - [ThinLTO] Add testing of summary index parsing to a couple CFI tests

2018-06-26 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Tue Jun 26 08:50:34 2018 New Revision: 335618 URL: http://llvm.org/viewvc/llvm-project?rev=335618&view=rev Log: [ThinLTO] Add testing of summary index parsing to a couple CFI tests Summary: Changes to some clang side tests to go with the summary parsing patch. Depends on

Re: r335618 - [ThinLTO] Add testing of summary index parsing to a couple CFI tests

2018-06-26 Thread Teresa Johnson via cfe-commits
g/P8091 has the lit output and the actual output > being produced by one of the added RUN lines. My llvm and clang > repositories are in sync. Any idea what might be going on here? > > > > *From: *cfe-commits on behalf of > Teresa Johnson via cfe-commits > *Reply-To: *Teresa

Re: r335618 - [ThinLTO] Add testing of summary index parsing to a couple CFI tests

2018-06-26 Thread Teresa Johnson via cfe-commits
nd the actual output being produced by one of the added > RUN lines. My llvm and clang repositories are in sync. Any idea what might > be going on here? > > > > *From: *cfe-commits on behalf of > Teresa Johnson via cfe-commits > *Reply-To: *Teresa Johnson > *Date: *Tuesda

r337051 - [ThinLTO] Ensure we always select the same function copy to import

2018-07-13 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Fri Jul 13 14:35:58 2018 New Revision: 337051 URL: http://llvm.org/viewvc/llvm-project?rev=337051&view=rev Log: [ThinLTO] Ensure we always select the same function copy to import Clang change to reflect the FunctionsToImportTy type change in the llvm changes for D48670. M

r337082 - Revert "[ThinLTO] Ensure we always select the same function copy to import"

2018-07-13 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Fri Jul 13 18:50:14 2018 New Revision: 337082 URL: http://llvm.org/viewvc/llvm-project?rev=337082&view=rev Log: Revert "[ThinLTO] Ensure we always select the same function copy to import" This reverts commit r337051. Modified: cfe/trunk/lib/CodeGen/BackendUtil.cpp Mo

r337185 - Restore "[ThinLTO] Ensure we always select the same function copy to import"

2018-07-16 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Mon Jul 16 08:30:36 2018 New Revision: 337185 URL: http://llvm.org/viewvc/llvm-project?rev=337185&view=rev Log: Restore "[ThinLTO] Ensure we always select the same function copy to import" This reverts commit r337082, restoring r337051, since the LLVM side patch has been r

[clang] 33ffb62 - Allow disabling of vectorization using internal options

2020-04-14 Thread Teresa Johnson via cfe-commits
Author: Teresa Johnson Date: 2020-04-14T18:09:10-07:00 New Revision: 33ffb62e23e7a7bece5618d5a7b54bdb401d0bcf URL: https://github.com/llvm/llvm-project/commit/33ffb62e23e7a7bece5618d5a7b54bdb401d0bcf DIFF: https://github.com/llvm/llvm-project/commit/33ffb62e23e7a7bece5618d5a7b54bdb401d0bcf.diff

[PATCH] D24806: [docs] Add ThinLTO user documentation

2016-09-21 Thread Teresa Johnson via cfe-commits
tejohnson created this revision. tejohnson added a reviewer: mehdi_amini. tejohnson added a subscriber: cfe-commits. Herald added a subscriber: mehdi_amini. Add some user facing documentation on ThinLTO and how to use it. https://reviews.llvm.org/D24806 Files: docs/CommandGuide/clang.rst doc

Re: [PATCH] D24806: [docs] Add ThinLTO user documentation

2016-09-21 Thread Teresa Johnson via cfe-commits
tejohnson updated this revision to Diff 72078. tejohnson added a comment. Add some troubleshooting info for gold plugin misconfigurations https://reviews.llvm.org/D24806 Files: docs/CommandGuide/clang.rst docs/ThinLTO.rst docs/index.rst Index: docs/index.rst =

Re: [PATCH] D24806: [docs] Add ThinLTO user documentation

2016-09-21 Thread Teresa Johnson via cfe-commits
tejohnson updated this revision to Diff 72081. tejohnson added a comment. Replace 'regular LTO' with 'monolithic LTO' to be more descriptive. https://reviews.llvm.org/D24806 Files: docs/CommandGuide/clang.rst docs/ThinLTO.rst docs/index.rst Index: docs/index.rst =

r282089 - [docs] Add ThinLTO user documentation

2016-09-21 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Wed Sep 21 11:57:03 2016 New Revision: 282089 URL: http://llvm.org/viewvc/llvm-project?rev=282089&view=rev Log: [docs] Add ThinLTO user documentation Summary: Add some user facing documentation on ThinLTO and how to use it. Reviewers: mehdi_amini Subscribers: mehdi_amini

Re: [PATCH] D24806: [docs] Add ThinLTO user documentation

2016-09-21 Thread Teresa Johnson via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL282089: [docs] Add ThinLTO user documentation (authored by tejohnson). Changed prior to commit: https://reviews.llvm.org/D24806?vs=72081&id=72082#toc Repository: rL LLVM https://reviews.llvm.org/D24

Re: r282089 - [docs] Add ThinLTO user documentation

2016-09-21 Thread Teresa Johnson via cfe-commits
Anyone know how to get these changes on http://clang.llvm.org/docs/? Is that site periodically refreshed or do I need to do something explicit? Thanks, Teresa On Wed, Sep 21, 2016 at 9:57 AM, Teresa Johnson via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: tejohnson > D

Re: r282148 - Fixing sphinx build due to diagnostic:

2016-09-22 Thread Teresa Johnson via cfe-commits
Thank you! Teresa On Thu, Sep 22, 2016 at 5:15 AM, Aaron Ballman via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: aaronballman > Date: Thu Sep 22 07:15:18 2016 > New Revision: 282148 > > URL: http://llvm.org/viewvc/llvm-project?rev=282148&view=rev > Log: > Fixing sphinx build due to

Re: r282148 - Fixing sphinx build due to diagnostic:

2016-09-22 Thread Teresa Johnson via cfe-commits
Hi Aaron, I just went back to the bot, which had first failed with a process error when I made my commit which is why I didn't see this error. It looks like it is still failing with the same error: http://lab.llvm.org:8011/builders/clang-sphinx-docs/builds/16313/steps/docs-clang-html/logs/stdio (

Re: r282148 - Fixing sphinx build due to diagnostic:

2016-09-22 Thread Teresa Johnson via cfe-commits
On Thu, Sep 22, 2016 at 6:38 AM, Aaron Ballman wrote: > On Thu, Sep 22, 2016 at 9:34 AM, Teresa Johnson > wrote: > > Hi Aaron, > > > > I just went back to the bot, which had first failed with a process error > > when I made my commit which is why I didn't see this error. It looks > like it > > i

r282151 - Second attempt to fix Sphinx bot

2016-09-22 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Thu Sep 22 08:41:10 2016 New Revision: 282151 URL: http://llvm.org/viewvc/llvm-project?rev=282151&view=rev Log: Second attempt to fix Sphinx bot The fix in r282148 was not enough to fix the following error: /home/llvmbb/llvm-build-dir/clang-sphinx-docs/llvm/src/tools/clang

Re: r282148 - Fixing sphinx build due to diagnostic:

2016-09-22 Thread Teresa Johnson via cfe-commits
On Thu, Sep 22, 2016 at 6:43 AM, Aaron Ballman wrote: > On Thu, Sep 22, 2016 at 9:41 AM, Teresa Johnson > wrote: > > > > > > > > On Thu, Sep 22, 2016 at 6:38 AM, Aaron Ballman > wrote: > >> > >> On Thu, Sep 22, 2016 at 9:34 AM, Teresa Johnson > wrote: > >> > Hi Aaron, > >> > > >> > I just went

[PATCH] D24826: [LTO] Add -flto-jobs=N to control backend parallelism

2016-09-22 Thread Teresa Johnson via cfe-commits
tejohnson created this revision. tejohnson added a reviewer: mehdi_amini. tejohnson added a subscriber: cfe-commits. Herald added a subscriber: mehdi_amini. Currently, a linker option must be used to control the backend parallelism of ThinLTO or full LTO (where it only applies to parallel code gen

r282154 - Third attempt to fix Sphinx bot

2016-09-22 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Thu Sep 22 08:58:33 2016 New Revision: 282154 URL: http://llvm.org/viewvc/llvm-project?rev=282154&view=rev Log: Third attempt to fix Sphinx bot Bot now complaining about -flto=thin reference, used similar workaround for that failure. Modified: cfe/trunk/docs/CommandGu

Re: [PATCH] D24826: [LTO] Add -flto-jobs=N to control backend parallelism

2016-09-22 Thread Teresa Johnson via cfe-commits
tejohnson added a comment. In https://reviews.llvm.org/D24826#549788, @mehdi_amini wrote: > The Gold path looks fine. > On OSX, we would have the clang driver relying on a LLVM cl::opt, for which > I don't think there is any precedent. CC Duncan for advice. I do see other uses of -mllvm in l

Re: [PATCH] D24826: [LTO] Add -flto-jobs=N to control backend parallelism

2016-09-23 Thread Teresa Johnson via cfe-commits
tejohnson updated this revision to Diff 72301. tejohnson added a comment. Update option description as per decision to split from parallel code gen. https://reviews.llvm.org/D24826 Files: include/clang/Driver/Options.td lib/Driver/Tools.cpp test/Driver/lto-jobs.c Index: test/Driver/lto-j

Re: [PATCH] D24826: [LTO] Add -flto-jobs=N to control backend parallelism

2016-09-23 Thread Teresa Johnson via cfe-commits
tejohnson added a comment. > > I do see other uses of -mllvm in lib/Driver/Tools.cpp, but are you talking > > about something else? > > I think this is okay, since clang is talking to the same version of > libLTO.dylib. I feel like there might be another case where > clang talks to libLTO

Re: [PATCH] D24826: [LTO] Add -flto-jobs=N to control backend parallelism

2016-09-23 Thread Teresa Johnson via cfe-commits
tejohnson updated this revision to Diff 72317. tejohnson added a comment. Update option help message per Mehdi's suggestion https://reviews.llvm.org/D24826 Files: include/clang/Driver/Options.td lib/Driver/Tools.cpp test/Driver/lto-jobs.c Index: test/Driver/lto-jobs.c ===

Re: [PATCH] D24826: [LTO] Add -flto-jobs=N to control backend parallelism

2016-09-23 Thread Teresa Johnson via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL282291: [LTO] Add -flto-jobs=N to control backend parallelism (authored by tejohnson). Changed prior to commit: https://reviews.llvm.org/D24826?vs=72317&id=72349#toc Repository: rL LLVM https://revi

r282291 - [LTO] Add -flto-jobs=N to control backend parallelism

2016-09-23 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Fri Sep 23 15:38:09 2016 New Revision: 282291 URL: http://llvm.org/viewvc/llvm-project?rev=282291&view=rev Log: [LTO] Add -flto-jobs=N to control backend parallelism Summary: Currently, a linker option must be used to control the backend parallelism of ThinLTO. The linker

r282308 - Use llvm::to_string instead of std::to_string to fix bot

2016-09-23 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Fri Sep 23 17:25:03 2016 New Revision: 282308 URL: http://llvm.org/viewvc/llvm-project?rev=282308&view=rev Log: Use llvm::to_string instead of std::to_string to fix bot This should fix the android build in this bot: http://lab.llvm.org:8011/builders/lldb-x86_64-ubuntu-14.0

Re: [PATCH] D24826: [LTO] Add -flto-jobs=N to control backend parallelism

2016-09-23 Thread Teresa Johnson via cfe-commits
On Fri, Sep 23, 2016, 4:38 PM Andrew Ford wrote: > andrewford added a subscriber: andrewford. > andrewford added a comment. > > This is breaking our android lldb build, because it uses std::to_string. > Looks like there is llvm::to_string, which should be preferred. Would > someone mind changing

[PATCH] D24644: Pass -ffunction-sections/-fdata-sections along to gold-plugin

2016-10-01 Thread Teresa Johnson via cfe-commits
tejohnson added a comment. In https://reviews.llvm.org/D24644#557774, @pcc wrote: > Perhaps it would be better to enable -ffunction-sections/-fdata-sections > unconditionally at the linker level if the linker supports it? See also > PR22999. My understanding is that these are not typically th

[PATCH] D24644: Pass -ffunction-sections/-fdata-sections along to gold-plugin

2016-10-12 Thread Teresa Johnson via cfe-commits
tejohnson added a comment. Ping. It seems like using attributes is not feasible at this time due to the lack of data attributes. https://reviews.llvm.org/D24644 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/m

[PATCH] D25537: [ThinLTO] Update doc to include lld

2016-10-12 Thread Teresa Johnson via cfe-commits
tejohnson accepted this revision. tejohnson added a comment. This revision is now accepted and ready to land. LGTM, thanks! https://reviews.llvm.org/D25537 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman

r284140 - Pass -ffunction-sections/-fdata-sections along to gold-plugin

2016-10-13 Thread Teresa Johnson via cfe-commits
Author: tejohnson Date: Thu Oct 13 13:05:53 2016 New Revision: 284140 URL: http://llvm.org/viewvc/llvm-project?rev=284140&view=rev Log: Pass -ffunction-sections/-fdata-sections along to gold-plugin Summary: These options need to be passed to the plugin in order to have an effect on LTO/ThinLTO co

[PATCH] D24644: Pass -ffunction-sections/-fdata-sections along to gold-plugin

2016-10-13 Thread Teresa Johnson via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL284140: Pass -ffunction-sections/-fdata-sections along to gold-plugin (authored by tejohnson). Changed prior to commit: https://reviews.llvm.org/D24644?vs=71591&id=74555#toc Repository: rL LLVM http

Re: r284137 - [ThinLTO] Update doc to include lld (now supported).

2016-10-17 Thread Teresa Johnson via cfe-commits
On Mon, Oct 17, 2016 at 5:13 AM, Rafael EspĂ­ndola < rafael.espind...@gmail.com> wrote: > On 16 October 2016 at 22:13, Davide Italiano wrote: > > On Sun, Oct 16, 2016 at 6:43 PM, Sean Silva > wrote: > >> Nice to see this land! > >> > >> One nit: > >> Currently, doesn't LLD/ELF ignore -plugin-opt?

Re: r284137 - [ThinLTO] Update doc to include lld (now supported).

2016-10-17 Thread Teresa Johnson via cfe-commits
On Mon, Oct 17, 2016 at 6:15 AM, Teresa Johnson wrote: > > > On Mon, Oct 17, 2016 at 5:13 AM, Rafael EspĂ­ndola < > rafael.espind...@gmail.com> wrote: > >> On 16 October 2016 at 22:13, Davide Italiano wrote: >> > On Sun, Oct 16, 2016 at 6:43 PM, Sean Silva >> wrote: >> >> Nice to see this land!

[clang] [llvm] Support VFE in thinLTO (PR #69735)

2023-11-06 Thread Teresa Johnson via cfe-commits
https://github.com/teresajohnson edited https://github.com/llvm/llvm-project/pull/69735 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] Support VFE in thinLTO (PR #69735)

2023-11-06 Thread Teresa Johnson via cfe-commits
https://github.com/teresajohnson commented: Thanks for the patch! I didn't go through in too much detail yet, but have some mostly higher level comments and suggestions. https://github.com/llvm/llvm-project/pull/69735 ___ cfe-commits mailing list cfe-

[clang] [llvm] Support VFE in thinLTO (PR #69735)

2023-11-06 Thread Teresa Johnson via cfe-commits
@@ -1362,6 +1362,8 @@ class ModuleSummaryIndex { // Temporary map while building StackIds list. Clear when index is completely // built via releaseTemporaryMemory. std::map StackIdToIndex; + std::set FuncsWithNonVtableRef; + std::set VFuncsToBeRemoved; // no need to ser

[llvm] [clang] Support VFE in thinLTO (PR #69735)

2023-11-06 Thread Teresa Johnson via cfe-commits
@@ -34,12 +40,223 @@ static cl::opt ClEnableVFE("enable-vfe", cl::Hidden, cl::init(true), cl::desc("Enable virtual function elimination")); +static cl::opt ClReadSummary( +"globaldce-read-summary", +cl::desc("Read summary from given bitcode before r

[clang] [llvm] Support VFE in thinLTO (PR #69735)

2023-11-06 Thread Teresa Johnson via cfe-commits
@@ -34,12 +40,223 @@ static cl::opt ClEnableVFE("enable-vfe", cl::Hidden, cl::init(true), cl::desc("Enable virtual function elimination")); +static cl::opt ClReadSummary( +"globaldce-read-summary", +cl::desc("Read summary from given bitcode before r

[llvm] [clang] Support VFE in thinLTO (PR #69735)

2023-11-06 Thread Teresa Johnson via cfe-commits
@@ -775,6 +783,58 @@ static void computeVariableSummary(ModuleSummaryIndex &Index, Index.addGlobalValueSummary(V, std::move(GVarSummary)); } +static void ComputeDependencies( teresajohnson wrote: nit: function should be lowerCamelCase https://github.com/l

[clang] [llvm] Support VFE in thinLTO (PR #69735)

2023-11-06 Thread Teresa Johnson via cfe-commits
@@ -34,12 +40,223 @@ static cl::opt ClEnableVFE("enable-vfe", cl::Hidden, cl::init(true), cl::desc("Enable virtual function elimination")); +static cl::opt ClReadSummary( +"globaldce-read-summary", +cl::desc("Read summary from given bitcode before r

[llvm] [clang] Support VFE in thinLTO (PR #69735)

2023-11-06 Thread Teresa Johnson via cfe-commits
@@ -34,12 +40,223 @@ static cl::opt ClEnableVFE("enable-vfe", cl::Hidden, cl::init(true), cl::desc("Enable virtual function elimination")); +static cl::opt ClReadSummary( +"globaldce-read-summary", +cl::desc("Read summary from given bitcode before r

[clang] [llvm] Support VFE in thinLTO (PR #69735)

2023-11-06 Thread Teresa Johnson via cfe-commits
@@ -1362,6 +1362,8 @@ class ModuleSummaryIndex { // Temporary map while building StackIds list. Clear when index is completely // built via releaseTemporaryMemory. std::map StackIdToIndex; + std::set FuncsWithNonVtableRef; teresajohnson wrote: Instead o

[llvm] [clang] Support VFE in thinLTO (PR #69735)

2023-11-06 Thread Teresa Johnson via cfe-commits
@@ -34,12 +40,223 @@ static cl::opt ClEnableVFE("enable-vfe", cl::Hidden, cl::init(true), cl::desc("Enable virtual function elimination")); +static cl::opt ClReadSummary( +"globaldce-read-summary", +cl::desc("Read summary from given bitcode before r

[llvm] [clang] Support VFE in thinLTO (PR #69735)

2023-11-06 Thread Teresa Johnson via cfe-commits
@@ -338,12 +574,33 @@ PreservedAnalyses GlobalDCEPass::run(Module &M, ModuleAnalysisManager &MAM) { // The second pass drops the bodies of functions which are dead... std::vector DeadFunctions; - for (Function &F : M) + std::set DeadFunctionsSet; + auto funcRemovedInIn

[llvm] [clang] [PGO][GlobalValue][LTO]In GlobalValues::getGlobalIdentifier, use semicolon as delimiter for local-linkage varibles. (PR #74008)

2023-12-05 Thread Teresa Johnson via cfe-commits
@@ -300,12 +316,8 @@ getIRPGONameForGlobalObject(const GlobalObject &GO, GlobalValue::LinkageTypes Linkage, StringRef FileName) { SmallString<64> Name; - if (llvm::GlobalValue::isLocalLinkage(Linkage)) { -Name.appen

[llvm] [clang] [PGO][GlobalValue][LTO]In GlobalValues::getGlobalIdentifier, use semicolon as delimiter for local-linkage varibles. (PR #74008)

2023-12-06 Thread Teresa Johnson via cfe-commits
teresajohnson wrote: > Using the same added ICP test, profile matching on local-linkage > `_ZL7callee0v` using `clang++ -v -fuse-ld=lld -O2 > -fprofile-use=thinlto_icall_prom.profdata ` , as > [this](https://gist.github.com/minglotus-6/11817ba645c6b12cd7116f41bfb1185e) > pgo-instr-use output

[clang-tools-extra] [llvm] [clang] [compiler-rt] [PGO][GlobalValue][LTO]In GlobalValues::getGlobalIdentifier, use semicolon as delimiter for local-linkage varibles. (PR #74008)

2023-12-06 Thread Teresa Johnson via cfe-commits
teresajohnson wrote: > David says the itanium remapper file was only used once during gcc to llvm > transition, so not relevant here. I believe it was actually for the libstdc++ to libc++ transition (see https://reviews.llvm.org/D51247 and https://reviews.llvm.org/D51240). If it is broken we'

[compiler-rt] [clang-tools-extra] [clang] [llvm] [PGO][GlobalValue][LTO]In GlobalValues::getGlobalIdentifier, use semicolon as delimiter for local-linkage varibles. (PR #74008)

2023-12-07 Thread Teresa Johnson via cfe-commits
@@ -1,39 +1,45 @@ -; Do setup work for all below tests: generate bitcode and combined index -; RUN: opt -module-summary %s -o %t.bc -; RUN: opt -module-summary %p/Inputs/thinlto_indirect_call_promotion.ll -o %t2.bc +; The raw profiles and reduced IR inputs are generated from Inp

[compiler-rt] [clang-tools-extra] [llvm] [clang] [PGO][GlobalValue][LTO]In GlobalValues::getGlobalIdentifier, use semicolon as delimiter for local-linkage varibles. (PR #74008)

2023-12-08 Thread Teresa Johnson via cfe-commits
@@ -1,39 +1,45 @@ -; Do setup work for all below tests: generate bitcode and combined index -; RUN: opt -module-summary %s -o %t.bc -; RUN: opt -module-summary %p/Inputs/thinlto_indirect_call_promotion.ll -o %t2.bc +; The raw profiles and reduced IR inputs are generated from Inp

[clang] [clang][fatlto] Don't set ThinLTO module flag with FatLTO (PR #75079)

2023-12-11 Thread Teresa Johnson via cfe-commits
teresajohnson wrote: Added a comment to that issue, I think it would be good to understand why unified LTO is not expected in that case (for the assertion). https://github.com/llvm/llvm-project/pull/75079 ___ cfe-commits mailing list cfe-commits@lists

[compiler-rt] [clang-tools-extra] [clang] [llvm] [PGO][GlobalValue][LTO]In GlobalValues::getGlobalIdentifier, use semicolon as delimiter for local-linkage varibles. (PR #74008)

2023-12-11 Thread Teresa Johnson via cfe-commits
@@ -1,39 +0,0 @@ -; Do setup work for all below tests: generate bitcode and combined index teresajohnson wrote: Without use of the raw profile, this test would not have caught the regression. If we think the new compiler-rt test is enough to catch this case in t

[compiler-rt] [clang-tools-extra] [clang] [llvm] [PGO][GlobalValue][LTO]In GlobalValues::getGlobalIdentifier, use semicolon as delimiter for local-linkage varibles. (PR #74008)

2023-12-11 Thread Teresa Johnson via cfe-commits
@@ -0,0 +1,115 @@ +// This is a regression test for ThinLTO indirect-call-promotion when candidate +// callees need to be imported from another IR module. In the C++ test case, +// `main` calls `global_func` which is defined in another module. `global_func` +// has two indirect c

[compiler-rt] [clang] [clang-tools-extra] [llvm] [PGO][GlobalValue][LTO]In GlobalValues::getGlobalIdentifier, use semicolon as delimiter for local-linkage varibles. (PR #74008)

2023-12-11 Thread Teresa Johnson via cfe-commits
@@ -352,6 +366,8 @@ std::string getIRPGOFuncName(const Function &F, bool InLTO) { return getIRPGOObjectName(F, InLTO, getPGOFuncNameMetadata(F)); } +// DEPRECATED. Use `getIRPGOFuncName`for new code. See that function for teresajohnson wrote: In the header

[compiler-rt] [clang] [clang-tools-extra] [llvm] [PGO][GlobalValue][LTO]In GlobalValues::getGlobalIdentifier, use semicolon as delimiter for local-linkage varibles. (PR #74008)

2023-12-11 Thread Teresa Johnson via cfe-commits
https://github.com/teresajohnson approved this pull request. LGTM other than a couple of minor comments and pending resolution of the LLVM IR test. Thanks! https://github.com/llvm/llvm-project/pull/74008 ___ cfe-commits mailing list cfe-commits@lists.

[clang] [Clang] Emit type metadata on vtables when IRPGO instrumentation option is on. (PR #70841)

2023-11-01 Thread Teresa Johnson via cfe-commits
@@ -0,0 +1,145 @@ +// Test that type metadata are emitted with -fprofile-generate +// +// RUN: %clang -fprofile-generate -fno-lto -target x86_64-unknown-linux -emit-llvm -S %s -o - | FileCheck %s --check-prefix=ITANIUM +// RUN: %clang -fprofile-generate -fno-lto -target x86_64-pc

[clang] [Clang] Emit type metadata on vtables when IRPGO instrumentation option is on. (PR #70841)

2023-11-03 Thread Teresa Johnson via cfe-commits
@@ -1,98 +1,116 @@ + // Tests for the cfi-vcall feature: -// RUN: %clang_cc1 -flto -flto-unit -triple x86_64-unknown-linux -fvisibility=hidden -fsanitize=cfi-vcall -fsanitize-trap=cfi-vcall -emit-llvm -o - %s | FileCheck --check-prefix=CFI --check-prefix=CFI-NVT-NO-RV --check-

[clang] [Clang] Emit type metadata on vtables when IRPGO instrumentation option is on. (PR #70841)

2023-11-03 Thread Teresa Johnson via cfe-commits
@@ -1312,7 +1312,7 @@ llvm::GlobalObject::VCallVisibility CodeGenModule::GetVCallVisibilityLevel( void CodeGenModule::EmitVTableTypeMetadata(const CXXRecordDecl *RD, llvm::GlobalVariable *VTable,

[clang] [Clang] Emit type metadata on vtables when IRPGO instrumentation option is on. (PR #70841)

2023-11-03 Thread Teresa Johnson via cfe-commits
@@ -1,98 +1,116 @@ + // Tests for the cfi-vcall feature: -// RUN: %clang_cc1 -flto -flto-unit -triple x86_64-unknown-linux -fvisibility=hidden -fsanitize=cfi-vcall -fsanitize-trap=cfi-vcall -emit-llvm -o - %s | FileCheck --check-prefix=CFI --check-prefix=CFI-NVT-NO-RV --check-

[clang] [Clang] Emit type metadata on vtables when IRPGO instrumentation option is on. (PR #70841)

2023-11-03 Thread Teresa Johnson via cfe-commits
@@ -101,14 +119,16 @@ // ITANIUM-OPT-SAME: !type [[EF16:![0-9]+]] // ITANIUM-OPT: @llvm.compiler.used = appending global [1 x ptr] [ptr @_ZTVN5test31EE] -// MS: comdat($"??_7A@@6B@"), !type [[A8:![0-9]+]] -// MS: comdat($"??_7B@@6B0@@"), !type [[B8:![0-9]+]] -// MS: comdat($"

[clang] [Clang] Emit type metadata on vtables when IRPGO instrumentation option is on. (PR #70841)

2023-11-03 Thread Teresa Johnson via cfe-commits
https://github.com/teresajohnson approved this pull request. Somehow I missed those other uses of the ITANIUM prefix. Thanks for cleaning it up though I think the new names are more descriptive. https://github.com/llvm/llvm-project/pull/70841 ___ cfe-

[llvm] [clang] Disable PGO instrumentation on naked function (PR #75224)

2023-12-12 Thread Teresa Johnson via cfe-commits
@@ -892,6 +892,10 @@ void CodeGenFunction::StartFunction(GlobalDecl GD, QualType RetTy, } } + if (FD->hasAttr()) { teresajohnson wrote: Is this change needed given the separate change in LLVM skipPGOGen? https://github.com/llvm/llvm-project/pull/7522

[llvm] [clang] Disable PGO instrumentation on naked function (PR #75224)

2023-12-12 Thread Teresa Johnson via cfe-commits
https://github.com/teresajohnson approved this pull request. https://github.com/llvm/llvm-project/pull/75224 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[lld] [llvm] [clang] [LTO] Improve diagnostics handling when parsing module-level inline assembly (PR #75726)

2023-12-18 Thread Teresa Johnson via cfe-commits
https://github.com/teresajohnson approved this pull request. https://github.com/llvm/llvm-project/pull/75726 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] DiagnosticHandler: refactor error checking (PR #75889)

2023-12-19 Thread Teresa Johnson via cfe-commits
@@ -256,10 +256,13 @@ void LLVMContext::diagnose(const DiagnosticInfo &DI) { RS->emit(*OptDiagBase); // If there is a report handler, use it. - if (pImpl->DiagHandler && - (!pImpl->RespectDiagnosticFilters || isDiagnosticEnabled(DI)) && - pImpl->DiagHandler-

[llvm] [clang] DiagnosticHandler: refactor error checking (PR #75889)

2023-12-19 Thread Teresa Johnson via cfe-commits
@@ -256,10 +256,13 @@ void LLVMContext::diagnose(const DiagnosticInfo &DI) { RS->emit(*OptDiagBase); // If there is a report handler, use it. - if (pImpl->DiagHandler && - (!pImpl->RespectDiagnosticFilters || isDiagnosticEnabled(DI)) && - pImpl->DiagHandler-

[llvm] [clang] DiagnosticHandler: refactor error checking (PR #75889)

2023-12-19 Thread Teresa Johnson via cfe-commits
https://github.com/teresajohnson approved this pull request. lgtm https://github.com/llvm/llvm-project/pull/75889 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [MemProf] Expand optimization scope to internal linakge function (PR #73236)

2023-11-27 Thread Teresa Johnson via cfe-commits
teresajohnson wrote: @snehasish can you take a look at the issue described here? Should we be doing something different in llvm-profdata? https://github.com/llvm/llvm-project/pull/73236 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://l

[clang] [llvm] [clang][llvm][fatlto] Avoid cloning modules in FatLTO (PR #72180)

2023-11-27 Thread Teresa Johnson via cfe-commits
@@ -810,7 +810,7 @@ void EmitAssemblyHelper::RunOptimizationPipeline( // Only enable CGProfilePass when using integrated assembler, since // non-integrated assemblers don't recognize .cgprofile section. PTO.CallGraphProfile = !CodeGenOpts.DisableIntegratedAS; - PTO.Unifi

[clang] [llvm] [clang][llvm][fatlto] Avoid cloning modules in FatLTO (PR #72180)

2023-11-27 Thread Teresa Johnson via cfe-commits
@@ -810,7 +810,7 @@ void EmitAssemblyHelper::RunOptimizationPipeline( // Only enable CGProfilePass when using integrated assembler, since // non-integrated assemblers don't recognize .cgprofile section. PTO.CallGraphProfile = !CodeGenOpts.DisableIntegratedAS; - PTO.Unifi

[llvm] [clang] [clang][llvm][fatlto] Avoid cloning modules in FatLTO (PR #72180)

2023-11-27 Thread Teresa Johnson via cfe-commits
@@ -810,7 +810,7 @@ void EmitAssemblyHelper::RunOptimizationPipeline( // Only enable CGProfilePass when using integrated assembler, since // non-integrated assemblers don't recognize .cgprofile section. PTO.CallGraphProfile = !CodeGenOpts.DisableIntegratedAS; - PTO.Unifi

[clang] [llvm] [clang][llvm][fatlto] Avoid cloning modules in FatLTO (PR #72180)

2023-11-27 Thread Teresa Johnson via cfe-commits
@@ -810,7 +810,7 @@ void EmitAssemblyHelper::RunOptimizationPipeline( // Only enable CGProfilePass when using integrated assembler, since // non-integrated assemblers don't recognize .cgprofile section. PTO.CallGraphProfile = !CodeGenOpts.DisableIntegratedAS; - PTO.Unifi

[clang] [llvm] [MemProf] Expand optimization scope to internal linakge function (PR #73236)

2023-11-27 Thread Teresa Johnson via cfe-commits
teresajohnson wrote: > @lifengxiang1025 thanks for flagging this issue. I think it's best to not > rely on unique-internal-linkage-name here. Instead we should extend the logic > in RawMemProfReader.cpp to include "filename;" if the function is internal > linkage as expected by IRPGOFuncName.

[clang] [llvm] [clang][llvm][fatlto] Avoid cloning modules in FatLTO (PR #72180)

2023-11-27 Thread Teresa Johnson via cfe-commits
@@ -1861,6 +1861,13 @@ bool CompilerInvocation::ParseCodeGenArgs(CodeGenOptions &Opts, ArgList &Args, if (Args.hasArg(OPT_funified_lto)) Opts.PrepareForThinLTO = true; } + if (Arg *A = Args.getLastArg(options::OPT_ffat_lto_objects, +

[clang] [llvm] [clang][llvm][fatlto] Avoid cloning modules in FatLTO (PR #72180)

2023-11-28 Thread Teresa Johnson via cfe-commits
https://github.com/teresajohnson approved this pull request. lgtm https://github.com/llvm/llvm-project/pull/72180 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[llvm] [clang] [clang][llvm][fatlto] Avoid cloning modules in FatLTO (PR #72180)

2023-11-28 Thread Teresa Johnson via cfe-commits
@@ -1530,14 +1530,11 @@ PassBuilder::buildPerModuleDefaultPipeline(OptimizationLevel Level, } ModulePassManager -PassBuilder::buildFatLTODefaultPipeline(OptimizationLevel Level, bool ThinLTO, -bool EmitSummary) { +PassBuilder::buildFatL

[clang] [llvm] [MemProf] Expand optimization scope to internal linakge function (PR #73236)

2023-11-29 Thread Teresa Johnson via cfe-commits
teresajohnson wrote: > > Yes, you're right. As an alternative can we use the symbol table and find > > Bind = LOCAL to add the prefix before hashing? > > If we choose this method. I think we can't deal with the situation which one > symbol is not local linkage type in thin compile, but will be

[clang] [llvm] [MemProf] Expand optimization scope to internal linakge function (PR #73236)

2023-11-29 Thread Teresa Johnson via cfe-commits
teresajohnson wrote: @snehasish and I chatted more about this offline. Using the dwarf info to figure out the right source name prefix during indexing is not straightforward. The source file name used as the prefix in the compiler for the IRPGOName is that of the TU. The source file of the lin

[llvm] [clang] [PGO][GlobalValue][LTO]In GlobalValues::getGlobalIdentifier, use semicolon as delimiter for local-linkage varibles. (PR #74008)

2023-12-01 Thread Teresa Johnson via cfe-commits
@@ -300,12 +316,8 @@ getIRPGONameForGlobalObject(const GlobalObject &GO, GlobalValue::LinkageTypes Linkage, StringRef FileName) { SmallString<64> Name; - if (llvm::GlobalValue::isLocalLinkage(Linkage)) { -Name.appen

  1   2   3   4   >