Page MenuHomePhabricator

tobiasvk (Tobias Edler von Koch)
User

Projects

User does not belong to any projects.

User Details

User Since
Jun 9 2015, 8:48 AM (219 w, 4 d)

Recent Activity

Aug 8 2018

tobiasvk accepted D50405: [Hexagon] Diagnose misaligned absolute loads and stores.

Thanks, this is great!

Aug 8 2018, 8:35 AM

Aug 1 2018

tobiasvk added a comment to D49822: [GlobalMerge] Allow merging globals with explicit section markings..

There is this vague, unspecified idea across the code base not to "touch" anything that hasSection(). We should be more deliberate and decide on a case-by-case basis, so this looks like the right thing to do for this pass.

Aug 1 2018, 3:09 PM

Jun 22 2018

tobiasvk committed rC335385: Re-land "[LTO] Enable module summary emission by default for regular LTO".
Re-land "[LTO] Enable module summary emission by default for regular LTO"
Jun 22 2018, 1:28 PM
tobiasvk committed rL335385: Re-land "[LTO] Enable module summary emission by default for regular LTO".
Re-land "[LTO] Enable module summary emission by default for regular LTO"
Jun 22 2018, 1:28 PM

Jun 21 2018

tobiasvk committed rC335291: Revert "[LTO] Enable module summary emission by default for regular LTO".
Revert "[LTO] Enable module summary emission by default for regular LTO"
Jun 21 2018, 2:29 PM
tobiasvk committed rL335291: Revert "[LTO] Enable module summary emission by default for regular LTO".
Revert "[LTO] Enable module summary emission by default for regular LTO"
Jun 21 2018, 2:29 PM
tobiasvk committed rC335284: [LTO] Enable module summary emission by default for regular LTO.
[LTO] Enable module summary emission by default for regular LTO
Jun 21 2018, 1:25 PM
tobiasvk committed rL335284: [LTO] Enable module summary emission by default for regular LTO.
[LTO] Enable module summary emission by default for regular LTO
Jun 21 2018, 1:25 PM
tobiasvk closed D34156: [LTO] Enable module summary emission by default for regular LTO.
Jun 21 2018, 1:25 PM

Jun 20 2018

tobiasvk added a comment to D34156: [LTO] Enable module summary emission by default for regular LTO.

@pcc, @tejohnson: Are you OK with this going in now that D47898 has merged?

Jun 20 2018, 9:58 AM

Jun 12 2018

tobiasvk updated the diff for D34156: [LTO] Enable module summary emission by default for regular LTO.
  • Rebase for current tree
  • Fix -flto -save-temps which the previous patch broke
Jun 12 2018, 9:21 AM

Jun 11 2018

tobiasvk added a comment to D34156: [LTO] Enable module summary emission by default for regular LTO.

Hi Tobias, I tracked down the failure self-hosting LLVM with LTO with this revision to https://bugs.llvm.org/show_bug.cgi?id=37684#c2 and have a fix under review in D47898.

Jun 11 2018, 12:41 PM

Apr 23 2018

tobiasvk added inline comments to D45926: Fix DISubprogram while extracting instructions out of function.
Apr 23 2018, 9:06 AM

Feb 21 2018

tobiasvk committed rL325731: [Hexagon] Add TargetRegisterInfo::getPointerRegClass() override.
[Hexagon] Add TargetRegisterInfo::getPointerRegClass() override
Feb 21 2018, 2:29 PM

Feb 6 2018

tobiasvk added inline comments to D42759: [CGP] Split large data structres to sink more GEPs.
Feb 6 2018, 10:52 AM

Jan 3 2018

tobiasvk committed rL321766: Add dev meeting slides for LTO + Linker Scripts talk.
Add dev meeting slides for LTO + Linker Scripts talk
Jan 3 2018, 2:31 PM

Jul 28 2017

tobiasvk committed rL309456: [LTO] llvm-lto2: Add option to load sample profile.
[LTO] llvm-lto2: Add option to load sample profile
Jul 28 2017, 4:44 PM
tobiasvk closed D36030: [LTO] llvm-lto2: Add option to load sample profile by committing rL309456: [LTO] llvm-lto2: Add option to load sample profile.
Jul 28 2017, 4:44 PM
tobiasvk created D36030: [LTO] llvm-lto2: Add option to load sample profile.
Jul 28 2017, 3:39 PM

Jun 15 2017

tobiasvk added a comment to D34156: [LTO] Enable module summary emission by default for regular LTO.
In D34156#781415, @pcc wrote:

Please confirm that we can still self host with full LTO now that D33922 has landed.

Jun 15 2017, 1:07 PM
tobiasvk retitled D34156: [LTO] Enable module summary emission by default for regular LTO from [LTO] Add -femit-summary-index flag to emit summary for regular LTO to [LTO] Enable module summary emission by default for regular LTO.
Jun 15 2017, 9:01 AM

Jun 14 2017

tobiasvk added inline comments to D33922: Apply summary-based dead stripping to regular LTO modules with summaries..
Jun 14 2017, 2:48 PM
tobiasvk added a comment to D34156: [LTO] Enable module summary emission by default for regular LTO.
  • Change patch to always emit a module summary for regular LTO

    I don't see any real downside of having a summary given the marginal time and space overhead it takes to construct and save it.

I think some code/logic needs to be changed in LLVM first:

bool LTOModule::isThinLTO() {
  // Right now the detection is only based on the summary presence. We may want
  // to add a dedicated flag at some point.
Jun 14 2017, 2:35 PM
tobiasvk updated the diff for D34156: [LTO] Enable module summary emission by default for regular LTO.
  • Change patch to always emit a module summary for regular LTO
Jun 14 2017, 11:45 AM

Jun 13 2017

tobiasvk added a comment to D34156: [LTO] Enable module summary emission by default for regular LTO.
In D34156#779270, @pcc wrote:

Have you considered writing the regular LTO summaries unconditionally if -flto was specified? That was how I imagined that the interface would look.

Jun 13 2017, 3:30 PM
tobiasvk created D34156: [LTO] Enable module summary emission by default for regular LTO.
Jun 13 2017, 11:36 AM

May 9 2017

tobiasvk added a comment to D32819: [IR] Switch AttributeList to use an array for O(1) access.
In D32819#749163, @rnk wrote:

One question remains: do you think I should completely encapsulate this indexing change by adding 1 inside AttributeList::getAttributes, or is it better to update all the callers as I did in this change? The problem with this change is that it will break out-of-tree backends and frontends that use the APIs with one-based indexing. It won't even be a compile failure because the APIs still take unsigned integers. That's a bit rude without some more hand waving on llvm-dev and release notes.

May 9 2017, 10:44 AM

Apr 13 2017

tobiasvk added a comment to D32009: Allow attributes with global variables.

This is very useful, thanks for working on it!

Apr 13 2017, 10:32 AM
tobiasvk committed rL300205: LTO: Pass SF_Executable flag through to InputFile::Symbol.
LTO: Pass SF_Executable flag through to InputFile::Symbol
Apr 13 2017, 9:37 AM
tobiasvk closed D31901: LTO: Pass SF_Executable flag through to InputFile::Symbol by committing rL300205: LTO: Pass SF_Executable flag through to InputFile::Symbol.
Apr 13 2017, 9:36 AM
tobiasvk updated the diff for D31901: LTO: Pass SF_Executable flag through to InputFile::Symbol.

Add test case now that D31920 is merged.

Apr 13 2017, 9:19 AM

Apr 11 2017

tobiasvk added a comment to D31901: LTO: Pass SF_Executable flag through to InputFile::Symbol.
In D31901#723155, @pcc wrote:

Agreed with @davide that this needs a test case. I am working on a change to llvm-lto2 that adds a feature for dumping the LTO symbol table, which should allow you to test this. @tobiasvk would you be fine with waiting until that change lands?

Apr 11 2017, 8:58 AM

Apr 10 2017

tobiasvk added inline comments to D31898: Introduce libLTO C APIs to target the "resolution-based" new LTO API.
Apr 10 2017, 12:10 PM
tobiasvk created D31901: LTO: Pass SF_Executable flag through to InputFile::Symbol.
Apr 10 2017, 11:53 AM

Apr 4 2017

tobiasvk added a comment to D31443: [LTO] Do not reorder global variables unnecessarily during merging.

Any further comments? I'd like to go ahead and merge this.

Apr 4 2017, 2:34 PM

Apr 3 2017

tobiasvk updated the diff for D31443: [LTO] Do not reorder global variables unnecessarily during merging.

Add Rafael's suggested disclaimer to the test case.

Apr 3 2017, 2:49 PM
tobiasvk updated the diff for D31443: [LTO] Do not reorder global variables unnecessarily during merging.

Rebase and update test case comment.

Apr 3 2017, 1:43 PM

Mar 28 2017

tobiasvk updated the diff for D31443: [LTO] Do not reorder global variables unnecessarily during merging.

Make Gerolf's suggested changes to comments.

Mar 28 2017, 4:14 PM
tobiasvk added a comment to D31443: [LTO] Do not reorder global variables unnecessarily during merging.

I'd love to see some comments an get your thoughts about a verifier.

Mar 28 2017, 3:48 PM
tobiasvk created D31443: [LTO] Do not reorder global variables unnecessarily during merging.
Mar 28 2017, 3:02 PM

Feb 15 2017

tobiasvk committed rL295226: [LTO] Add ability to emit assembly to new LTO API.
[LTO] Add ability to emit assembly to new LTO API
Feb 15 2017, 12:48 PM
tobiasvk closed D29475: [LTO] Add ability to emit assembly to new LTO API.
Feb 15 2017, 12:48 PM
tobiasvk added a comment to D29475: [LTO] Add ability to emit assembly to new LTO API.

Ping?

Feb 15 2017, 11:10 AM

Feb 4 2017

tobiasvk committed rL294097: Add location of dinner for LLVM@CGO workshop..
Add location of dinner for LLVM@CGO workshop.
Feb 4 2017, 11:43 AM

Feb 3 2017

tobiasvk updated the diff for D29475: [LTO] Add ability to emit assembly to new LTO API.

Move test to test/LTO/Resolution as per Peter's request.

Feb 3 2017, 9:07 AM

Feb 2 2017

tobiasvk added a comment to D29475: [LTO] Add ability to emit assembly to new LTO API.

ehm, we already have -save-temps, why do you need this? (see what the gold-plugin and lld do)

Feb 2 2017, 3:44 PM
tobiasvk added a comment to D29475: [LTO] Add ability to emit assembly to new LTO API.

Can you clarify how one would implement -save-temps in a linker this way?

Feb 2 2017, 3:42 PM
tobiasvk created D29475: [LTO] Add ability to emit assembly to new LTO API.
Feb 2 2017, 3:32 PM

Jan 31 2017

tobiasvk committed rL293659: Add schedule for LLVM workshop at CGO.
Add schedule for LLVM workshop at CGO
Jan 31 2017, 10:09 AM

Oct 10 2016

tobiasvk added a comment to D25385: Make the FunctionComparator of the MergeFunctions pass a stand-alone utility in a separate file.

This makes sense. I shared our own similar function merging pass (in D22051), which is more generic than the Swift one, and it could potentially also use this infrastructure. We could go a little further and pull out more of the stuff in MergeFunctions that they all share (e.g. thunk creation, block traversal) in the future.

Oct 10 2016, 9:08 AM

Jul 7 2016

tobiasvk added a comment to D22051: MergeSimilarFunctions: a code size pass to merge functions with small differences.

Thanks David for the quick review - agree with most of your points, some comments added.

Jul 7 2016, 3:54 PM
tobiasvk added a comment to D22051: MergeSimilarFunctions: a code size pass to merge functions with small differences.
In D22051#476003, @jfb wrote:

Could you detail how this is different from MergeFunc, and what it would take to add the new capabilities to MergeFunc instead of duplicating?

Jul 7 2016, 3:38 PM

Jul 6 2016

tobiasvk retitled D22051: MergeSimilarFunctions: a code size pass to merge functions with small differences from to MergeSimilarFunctions: a code size pass to merge functions with small differences.
Jul 6 2016, 9:44 AM

Mar 11 2016

tobiasvk added inline comments to D18100: Simplify Logic in IRMover.
Mar 11 2016, 3:08 PM
tobiasvk retitled D18104: [Bugpoint] Fix two crashes in miscompilation debugger from to [Bugpoint] Fix two crashes in miscompilation debugger.
Mar 11 2016, 3:01 PM
tobiasvk added inline comments to D18100: Simplify Logic in IRMover.
Mar 11 2016, 2:43 PM

Feb 3 2016

tobiasvk added a comment to D16742: [DWARFDebug] Fix another case of overlapping ranges.

Can this go in please? This is breaking debug builds for a number of critical codes for us.

Feb 3 2016, 7:08 AM

Feb 1 2016

tobiasvk added a comment to D16742: [DWARFDebug] Fix another case of overlapping ranges.

We hit this bug too and your fix works for our test cases. LGTM, thanks!

Feb 1 2016, 9:17 AM

Jan 29 2016

tobiasvk updated subscribers of D16742: [DWARFDebug] Fix another case of overlapping ranges.
Jan 29 2016, 4:32 PM

Jan 18 2016

tobiasvk committed rL258101: Add a change accidentally left out from r258100.
Add a change accidentally left out from r258100
Jan 18 2016, 3:39 PM
tobiasvk committed rL258100: [LTO] Restore original linkage of externals prior to splitting.
[LTO] Restore original linkage of externals prior to splitting
Jan 18 2016, 3:28 PM
tobiasvk closed D16229: [LTO] Restore original linkage of externals prior to splitting.
Jan 18 2016, 3:28 PM

Jan 15 2016

tobiasvk added a comment to D16124: Add to the split module utility an SCC based method which allows not to globalize any local variables..
In D16124#328371, @pcc wrote:

LGTM with this one change. Thanks!

Jan 15 2016, 3:47 PM
tobiasvk added inline comments to D16124: Add to the split module utility an SCC based method which allows not to globalize any local variables..
Jan 15 2016, 2:57 PM
tobiasvk updated subscribers of D16229: [LTO] Restore original linkage of externals prior to splitting.
Jan 15 2016, 9:08 AM
tobiasvk retitled D16229: [LTO] Restore original linkage of externals prior to splitting from to [LTO] Restore original linkage of externals prior to splitting.
Jan 15 2016, 9:07 AM

Jan 12 2016

tobiasvk updated subscribers of D16124: Add to the split module utility an SCC based method which allows not to globalize any local variables..
In D16124#325170, @pcc wrote:

As far as I can tell, it seems that in a typical LTO scenario with internalization, this partitioning would be strongly biased towards a single partition containing most of the code. Do you have a plan to address this?

Jan 12 2016, 3:38 PM
tobiasvk added a comment to D16074: Make sure that any new and optimized objects created during GlobalOPT copy all the attributes from the base object..

The most common uses cases for explicit sections I'm aware of here are situations where the user wants to place part of the code into special memory (e.g. tightly-coupled memory). You're free to optimize within that special section - in fact, that's even desired because the code tends to be very performance-critical (but space-constrained) - but introducing additional control or data edges to other sections is a no-go (which is what we're currently doing in GlobalOpt). The proposed patch would solve the problem nicely.

Jan 12 2016, 11:39 AM

Jan 11 2016

tobiasvk updated subscribers of D16074: Make sure that any new and optimized objects created during GlobalOPT copy all the attributes from the base object..
Jan 11 2016, 11:42 AM

Jan 8 2016

tobiasvk committed rL257215: [Hexagon] Replace a static member variable in HexagonCVIResource (NFC).
[Hexagon] Replace a static member variable in HexagonCVIResource (NFC)
Jan 8 2016, 2:11 PM

Dec 16 2015

tobiasvk added a comment to D15574: Remove datalayout and target triple from test cases related to LiveDebugValues pass..

LGTM conceptually. The patch doesn't apply to the current repo though (I guess it's a diff against what you had locally).

Dec 16 2015, 11:51 AM
tobiasvk added a comment to D15574: Remove datalayout and target triple from test cases related to LiveDebugValues pass..

I just did

Dec 16 2015, 10:55 AM
tobiasvk committed rL255785: [Hexagon] Make memcpy lowering thread-safe.
[Hexagon] Make memcpy lowering thread-safe
Dec 16 2015, 9:33 AM

Nov 19 2015

tobiasvk committed rL253624: [LTO] Add options to llvm-lto to select output format and dump merged module.
[LTO] Add options to llvm-lto to select output format and dump merged module
Nov 19 2015, 4:15 PM
tobiasvk committed rL253622: [LTO] Add option to emit assembly from LTOCodeGenerator.
[LTO] Add option to emit assembly from LTOCodeGenerator
Nov 19 2015, 4:02 PM
tobiasvk closed D14554: [LTO] Add option to emit assembly and bitcode from LTO CodeGen by committing rL253622: [LTO] Add option to emit assembly from LTOCodeGenerator.
Nov 19 2015, 4:02 PM

Nov 13 2015

tobiasvk updated the diff for D14554: [LTO] Add option to emit assembly and bitcode from LTO CodeGen.

Updated patch with Peter and Mehdi's comments - thank you both!

Nov 13 2015, 7:57 AM

Nov 10 2015

tobiasvk added a comment to D14554: [LTO] Add option to emit assembly and bitcode from LTO CodeGen.
In D14554#286654, @joker.eph wrote:

The bitcode->assembly part is available with llc though, not sure why it's not enough?

Nov 10 2015, 4:03 PM
tobiasvk added a comment to D14554: [LTO] Add option to emit assembly and bitcode from LTO CodeGen.

Ah I wasn't aware of the llvm-split utility - makes sense. It would still be useful to get bitcode out of llvm-lto for testing. But that could be built on top of writeMergedModule, as you mentioned.

Nov 10 2015, 3:01 PM
tobiasvk retitled D14554: [LTO] Add option to emit assembly and bitcode from LTO CodeGen from to [LTO] Add option to emit assembly and bitcode from LTO CodeGen.
Nov 10 2015, 2:38 PM

Nov 5 2015

tobiasvk added inline comments to D14387: Move comdat setup after global value body linking in ModuleLinker.
Nov 5 2015, 12:02 PM

Oct 16 2015

tobiasvk added inline comments to D13515: Support for ThinLTO function importing and symbol linking..
Oct 16 2015, 2:18 PM
tobiasvk added inline comments to D13515: Support for ThinLTO function importing and symbol linking..
Oct 16 2015, 1:40 PM

Jul 15 2015

tobiasvk committed rL242320: Analyze recursive PHI nodes in BasicAA.
Analyze recursive PHI nodes in BasicAA
Jul 15 2015, 12:32 PM
tobiasvk closed D10368: Analyze recursive PHI nodes in BasicAA.
Jul 15 2015, 12:32 PM
tobiasvk updated D10368: Analyze recursive PHI nodes in BasicAA.
Jul 15 2015, 12:30 PM

Jul 14 2015

tobiasvk updated the diff for D10368: Analyze recursive PHI nodes in BasicAA.

Update patch to no longer create temporary instructions

Jul 14 2015, 3:10 PM

Jul 10 2015

tobiasvk updated the diff for D10368: Analyze recursive PHI nodes in BasicAA.

Change patch to use a load of undef, instead of just an undef, as the index for
the temporary GEP. This should make it safe even if aliasGEP ever gets smarter
about undefs.

Jul 10 2015, 9:07 AM

Jun 25 2015

tobiasvk added a comment to D10368: Analyze recursive PHI nodes in BasicAA.

Hi Hal, Daniel,

Jun 25 2015, 12:52 PM

Jun 24 2015

tobiasvk updated the diff for D10368: Analyze recursive PHI nodes in BasicAA.

Remove spurious extra directories that ended up in the patch.

Jun 24 2015, 11:17 AM
tobiasvk updated the diff for D10368: Analyze recursive PHI nodes in BasicAA.

Add a flag to guard this change and leave it off by default for now.

Jun 24 2015, 11:15 AM

Jun 20 2015

tobiasvk added a comment to D10368: Analyze recursive PHI nodes in BasicAA.

Hi Daniel, Hal,

Jun 20 2015, 9:26 AM

Jun 10 2015

tobiasvk added a reviewer for D10368: Analyze recursive PHI nodes in BasicAA: hfinkel.
Jun 10 2015, 3:30 PM
tobiasvk updated subscribers of D10368: Analyze recursive PHI nodes in BasicAA.
Jun 10 2015, 3:28 PM
tobiasvk retitled D10368: Analyze recursive PHI nodes in BasicAA from to Analyze recursive PHI nodes in BasicAA.
Jun 10 2015, 3:27 PM

Jun 9 2015

tobiasvk committed rL239439: [RegisterScavenger] Fix handling of predicated instructions.
[RegisterScavenger] Fix handling of predicated instructions
Jun 9 2015, 3:15 PM
tobiasvk closed D9039: [RegisterScavenger] Fix handling of predicated instructions by committing rL239439: [RegisterScavenger] Fix handling of predicated instructions.
Jun 9 2015, 3:15 PM
tobiasvk updated the diff for D9039: [RegisterScavenger] Fix handling of predicated instructions.

Rebased

Jun 9 2015, 3:05 PM
tobiasvk commandeered D9039: [RegisterScavenger] Fix handling of predicated instructions.
Jun 9 2015, 3:04 PM