Page MenuHomePhabricator

loladiro (Keno Fischer)
User

Projects

User does not belong to any projects.

User Details

User Since
Nov 22 2013, 10:24 PM (394 w, 5 d)

Recent Activity

Apr 12 2021

loladiro requested review of D100359: [COFF] Force Symbols containing '.' to be quoted.
Apr 12 2021, 8:07 PM · Restricted Project

Mar 1 2021

loladiro updated the diff for D97435: [Aarch64] Correct register class for pseudo instructions.

Updated to add updates to test cases I'd forgotten to include in the revision.
They're entirely mechanical, but I'd appreciate a quick sanity check.

Mar 1 2021, 1:23 PM · Restricted Project
loladiro accepted D97571: [AArch64] Fix emitting an AdrpAddLdr LOH when there's a potential clobber of the def of the adrp before the ldr..

Verified to fix the crash we were seeing downstream as well.

Mar 1 2021, 12:28 PM · Restricted Project

Feb 24 2021

loladiro updated subscribers of D80834: [AArch64] Fix CollectLOH creating an AdrpAdd LOH when there's a live used reg between the two instructions..

I don't believe GlobalIsel is enabled. This is in debug mode, so
optimizations are enabled, but minimal. Thanks!

Feb 24 2021, 9:28 PM · Restricted Project
loladiro added a comment to D80834: [AArch64] Fix CollectLOH creating an AdrpAdd LOH when there's a live used reg between the two instructions..

I believe this fix is incomplete and also needs to apply adrp/add/ldr sequences (and maybe others). We encountered this as a miscompilation while porting to Apple Silicon (https://github.com/JuliaLang/julia/issues/39820).

Feb 24 2021, 8:47 PM · Restricted Project
loladiro requested review of D97435: [Aarch64] Correct register class for pseudo instructions.
Feb 24 2021, 8:06 PM · Restricted Project
loladiro added inline comments to D61259: AArch64: support arm64_32, an ILP32 slice for watchOS..
Feb 24 2021, 12:58 PM · Restricted Project

Jan 5 2021

loladiro added reviewers for D90969: Renovate CMake file for the `llvm-cfi-verify` tool: mgorny, hctim.

LGTM, but adding @mgorny and @hctim for D81921, which also tried to address the same issue as D44650 (which this replaces), in case I missed something that the former is addressing that this revision doesn't.

Jan 5 2021, 3:04 PM · Restricted Project

Dec 11 2020

loladiro added reviewers for D93154: GlobalISel: remove assert that memcpy Src and Dst addrspace must be identical: paquette, aemerson.

LGTM, from an IR legality perspective, but somebody familiar with GlobalISel should take a look from that perspective - adding authors/reviewers of https://reviews.llvm.org/D65167, which added this code. Also, we should have a test.

Dec 11 2020, 10:15 PM · Restricted Project

Sep 30 2020

loladiro updated subscribers of D88630: [clang/CMake] Respect LLVM_TOOLS_INSTALL_DIR.
Sep 30 2020, 7:21 PM · Restricted Project
loladiro requested review of D88630: [clang/CMake] Respect LLVM_TOOLS_INSTALL_DIR.
Sep 30 2020, 7:20 PM · Restricted Project

Sep 3 2020

loladiro added a comment to D84031: Clear NewGEPBases after finish using them in CodeGenPrep pass.

Well, the module if freed eventually. Is this issue whether the module if freed before the pass manager? If so I think run-twice will (incidentally also do that). I just though run-twice would catch it, because forgetting to clear such things usually causes incorrect behavior the next time around.

Sep 3 2020, 5:32 PM · Restricted Project

Sep 2 2020

loladiro accepted D84031: Clear NewGEPBases after finish using them in CodeGenPrep pass.

LGTM. Could we have a test for this? There is the -run-twice option to the various tools, which is designed to catch issues like this.

Sep 2 2020, 10:47 AM · Restricted Project

Aug 10 2020

loladiro abandoned D85499: [X86] Canonicalize andnp for bitmask arithmetic.
Aug 10 2020, 1:47 PM · Restricted Project

Aug 7 2020

loladiro committed rGc58674df147a: [X86] Don't produce bad x86andp nodes for i1 vectors (authored by loladiro).
[X86] Don't produce bad x86andp nodes for i1 vectors
Aug 7 2020, 5:20 PM
loladiro closed D85553: [X86] Don't produce bad x86andp nodes for i1 vectors.
Aug 7 2020, 5:19 PM · Restricted Project
loladiro requested review of D85553: [X86] Don't produce bad x86andp nodes for i1 vectors.
Aug 7 2020, 1:43 PM · Restricted Project

Aug 6 2020

loladiro added a comment to D85499: [X86] Canonicalize andnp for bitmask arithmetic.

I think that would be fine, but in that case, we should probably get rid of x86andnp entirely and just make (and (not x) y) canonical everywhere. The supported patterns for these are much the same, so if we have both canonical forms, we're just signing up for double the work.

Aug 6 2020, 10:19 PM · Restricted Project
loladiro updated subscribers of D85499: [X86] Canonicalize andnp for bitmask arithmetic.
Aug 6 2020, 9:47 PM · Restricted Project
loladiro requested review of D85499: [X86] Canonicalize andnp for bitmask arithmetic.
Aug 6 2020, 9:46 PM · Restricted Project

Feb 25 2020

loladiro added inline comments to D70097: [SCEV] Add missing cache queries.
Feb 25 2020, 12:52 PM · Restricted Project

Feb 24 2020

loladiro added a project to D75072: [SCEV] Record NI types in add exprs: Restricted Project.
Feb 24 2020, 11:53 AM · Restricted Project, Restricted Project
loladiro created D75072: [SCEV] Record NI types in add exprs.
Feb 24 2020, 11:53 AM · Restricted Project, Restricted Project

Feb 20 2020

loladiro added a comment to D74920: emit bitcode to file when Verifier fails.

Should probably be an optional feature to the verifier pass, like FatalErrors?

Feb 20 2020, 12:49 PM · Restricted Project

Jan 15 2020

loladiro added a comment to D72529: [SCCIterator] Fix use-after-free.

Jinx ;) This took quite some tracking down on our side - too bad we didn't wait a couple of weeks. I do still like the iterator interface better, since it checks against exactly this kind of issue in debug mode. It also avoids the second lookup for the erase. I'll rebase this on top of master.

Jan 15 2020, 10:03 AM · Restricted Project

Jan 13 2020

loladiro updated the diff for D72550: [SCCIterator] Fix another potential use-after-free.

Turns out this doesn't quite yet address the TODO in Inliner.
Reverted that part of this change for a complete solution in a future
revision.

Jan 13 2020, 1:43 PM · Restricted Project
loladiro created D72626: [compiler-rt/cmake] Don't attempt to ad-hoc sign for OS X.
Jan 13 2020, 8:59 AM · Restricted Project, Restricted Project

Jan 10 2020

loladiro created D72550: [SCCIterator] Fix another potential use-after-free.
Jan 10 2020, 6:09 PM · Restricted Project
loladiro created D72529: [SCCIterator] Fix use-after-free.
Jan 10 2020, 11:46 AM · Restricted Project

Dec 12 2019

loladiro added a comment to D71156: [WebAssembly] Don't crash when gnu-style pubnames are requested.

I have be working on CL that does basically a superset of this to support -gsplit-dwarf. But maybe can land this first.

Dec 12 2019, 2:27 PM · Restricted Project

Dec 6 2019

loladiro created D71156: [WebAssembly] Don't crash when gnu-style pubnames are requested.
Dec 6 2019, 4:44 PM · Restricted Project

Oct 7 2019

loladiro closed D39297: [DynamicLibrary] Fix build on musl libc.
Oct 7 2019, 5:20 AM · Restricted Project

Sep 25 2019

loladiro committed rGcea8882254f9: [ConstantFolding] Use FoldBitCast correctly (authored by loladiro).
[ConstantFolding] Use FoldBitCast correctly
Sep 25 2019, 7:09 PM

Sep 16 2019

loladiro accepted D65057: [ConstantFolding] Use FoldBitCast correctly.

LGTM. @lebedev.ri, do you have further review?

Sep 16 2019, 6:40 AM · Restricted Project

Sep 11 2019

loladiro added a comment to D66602: Add a LineTable class to GSYM and test it..

This broke the build for me locally:

In file included from /home/keno/llvm-project/llvm/lib/DebugInfo/GSYM/FunctionInfo.cpp:10:0:
/home/keno/llvm-project/llvm/include/llvm/DebugInfo/GSYM/FunctionInfo.h:36:29: error: declaration of ‘llvm::Optional<llvm::gsym::LineTable> llvm::gsym::FunctionInfo::LineTable’ [-fpermissive]
   llvm::Optional<LineTable> LineTable;
                             ^~~~~~~~~
In file included from /home/keno/llvm-project/llvm/include/llvm/DebugInfo/GSYM/FunctionInfo.h:14:0,
                 from /home/keno/llvm-project/llvm/lib/DebugInfo/GSYM/FunctionInfo.cpp:10:
/home/keno/llvm-project/llvm/include/llvm/DebugInfo/GSYM/LineTable.h:118:7: error: changes meaning of ‘LineTable’ from ‘class llvm::gsym::LineTable’ [-fpermissive]
 class LineTable {
       ^~~~~~~~~
[720/3364] Building CXX object lib/Analysis/CMakeFiles/LLVMAnalysis.dir/ScalarEvolution.cpp.o
Sep 11 2019, 3:29 PM

Aug 9 2019

loladiro updated the diff for D66035: [WebAssembly] WIP: Add support for reference types.

Accidentally only pushed half the changes

Aug 9 2019, 3:29 PM · Restricted Project, Restricted Project
loladiro created D66035: [WebAssembly] WIP: Add support for reference types.
Aug 9 2019, 3:29 PM · Restricted Project, Restricted Project

Aug 5 2019

loladiro added a comment to D65463: [WebAssembly] Fix conflict between ret legalization and sjlj.

Just out of curiosity, how did you discover this bug?

Aug 5 2019, 3:01 PM · Restricted Project
loladiro added a comment to D64032: [cmake] With utils disabled, don't build tblgen in cross mode.

Ok, I think that'd work for my use case. I'll try it out and post a revision to that extent.

Aug 5 2019, 2:46 PM · Restricted Project
loladiro committed rG5c3cdef84b82: [WebAssembly] Fix conflict between ret legalization and sjlj (authored by loladiro).
[WebAssembly] Fix conflict between ret legalization and sjlj
Aug 5 2019, 2:38 PM
loladiro added inline comments to D65463: [WebAssembly] Fix conflict between ret legalization and sjlj.
Aug 5 2019, 2:15 PM · Restricted Project
loladiro added a comment to D64032: [cmake] With utils disabled, don't build tblgen in cross mode.

Hmm, we do have a list of all the .cpp files in the tablegen tool in ${ARGN}, and I'd be fine depending on the target libraries. Do you know of a way to emulate whatever handling add_executable is doing for .cpp files to get at the included .h files?

Aug 5 2019, 1:12 PM · Restricted Project
loladiro added a comment to D64032: [cmake] With utils disabled, don't build tblgen in cross mode.

Is there a way to just add the whatever the underlying dependencies are that are missing for the native tool? My concern is that I don't want to build target executables (because the toolchain for that is broken).

Aug 5 2019, 12:07 PM · Restricted Project

Aug 3 2019

loladiro updated the diff for D65463: [WebAssembly] Fix conflict between ret legalization and sjlj.

Updated to add a test and confine the changes to the wasm backend code.

Aug 3 2019, 4:29 PM · Restricted Project
loladiro committed rG3c805d125a9b: [WebAssembly] Fix allocsize attribute in sjlj lowering (authored by loladiro).
[WebAssembly] Fix allocsize attribute in sjlj lowering
Aug 3 2019, 2:41 PM

Jul 30 2019

loladiro updated subscribers of D65470: [WebAssembly] Fix allocsize attribute in sjlj lowering.
Jul 30 2019, 1:17 PM · Restricted Project
loladiro updated subscribers of D65463: [WebAssembly] Fix conflict between ret legalization and sjlj.
Jul 30 2019, 1:16 PM · Restricted Project
loladiro created D65470: [WebAssembly] Fix allocsize attribute in sjlj lowering.
Jul 30 2019, 12:18 PM · Restricted Project
loladiro created D65463: [WebAssembly] Fix conflict between ret legalization and sjlj.
Jul 30 2019, 11:16 AM · Restricted Project

Jul 15 2019

loladiro committed rG42e90ed7717e: [cmake] Don't set install rules for tblgen if building utils is disabled (authored by loladiro).
[cmake] Don't set install rules for tblgen if building utils is disabled
Jul 15 2019, 12:06 PM

Jul 4 2019

loladiro created D64225: [cmake] Don't set install rules for tblgen if building utils is disabled.
Jul 4 2019, 4:42 PM · Restricted Project

Jul 1 2019

loladiro committed rGa7f00941efd7: [cmake] With utils disabled, don't build tblgen in cross mode (authored by loladiro).
[cmake] With utils disabled, don't build tblgen in cross mode
Jul 1 2019, 4:16 PM
loladiro updated the diff for D64032: [cmake] With utils disabled, don't build tblgen in cross mode.

Use set_target_properties to set EXCLUDE_FROM_ALL on the target rather than using
the global setting.

Jul 1 2019, 3:45 PM · Restricted Project
loladiro created D64032: [cmake] With utils disabled, don't build tblgen in cross mode.
Jul 1 2019, 1:56 PM · Restricted Project

Jun 25 2019

loladiro added a comment to D63696: [WebAssembly] Fix list of relocations with addends in lld.

There was a small omission in this revision that I fixed up in https://reviews.llvm.org/rG5bb0dcd96ec1.

Jun 25 2019, 6:33 PM · Restricted Project
loladiro committed rG5bb0dcd96ec1: [WebAssembly] Fix accidental omission from rLLD364367 (authored by loladiro).
[WebAssembly] Fix accidental omission from rLLD364367
Jun 25 2019, 6:28 PM
loladiro committed rGc5b8e1c538d6: [lld/WebAssembly] Slightly nicer error message for malformed input files (authored by loladiro).
[lld/WebAssembly] Slightly nicer error message for malformed input files
Jun 25 2019, 5:54 PM
loladiro committed rGcadcb9eb6131: [WebAssembly] Fix list of relocations with addends in lld (authored by loladiro).
[WebAssembly] Fix list of relocations with addends in lld
Jun 25 2019, 5:54 PM
loladiro added inline comments to D63696: [WebAssembly] Fix list of relocations with addends in lld.
Jun 25 2019, 5:28 PM · Restricted Project
loladiro added a comment to D63694: [lld/WebAssembly] Slightly nicer error message for malformed input files.

Ideally I'd rather see the invalid file be generated on the fly, but this is also ok since it should never really change.

What about the actual test that checks for the error string? I imagine the binary would go in "Inputs" and the .test would be a text file that checks for the error.

Jun 25 2019, 5:12 PM · Restricted Project
loladiro updated the diff for D63696: [WebAssembly] Fix list of relocations with addends in lld.

Address review comments and add test case.

Jun 25 2019, 5:06 PM · Restricted Project
loladiro updated the diff for D63694: [lld/WebAssembly] Slightly nicer error message for malformed input files.

Remove extraneous output from error message and add test case.

Jun 25 2019, 4:22 PM · Restricted Project
loladiro accepted D59730: [GVN] teach ConstantFolding correct handling of non-integral addrspace casts.

This looks fine to me now. @reames if you have a chance, I'd appreciate confirmation that your concerns are addressed as well.

Jun 25 2019, 2:21 PM · Restricted Project

Jun 23 2019

loladiro created D63696: [WebAssembly] Fix list of relocations with addends in lld.
Jun 23 2019, 4:24 PM · Restricted Project
loladiro created D63694: [lld/WebAssembly] Slightly nicer error message for malformed input files.
Jun 23 2019, 3:21 PM · Restricted Project

Jun 22 2019

loladiro committed rG5f4ae7c45718: [Support] Fix build under Emscripten (authored by loladiro).
[Support] Fix build under Emscripten
Jun 22 2019, 5:31 PM
loladiro created D63688: [Support] Fix build under Emscripten.
Jun 22 2019, 4:49 PM · Restricted Project

Jun 7 2019

loladiro committed rG6f48c076207f: [analyzer] Add werror flag for analyzer warnings (authored by loladiro).
[analyzer] Add werror flag for analyzer warnings
Jun 7 2019, 4:33 PM
loladiro committed rGeb4a561fa377: [GVN] non-functional code movement (authored by loladiro).
[GVN] non-functional code movement
Jun 7 2019, 4:08 PM
loladiro added inline comments to D59729: [GVN] non-functional code movement.
Jun 7 2019, 2:31 PM · Restricted Project

Jun 4 2019

loladiro added a comment to D62885: [analyzer] Add werror flag for analyzer warnings.

So, you'd like to make this a frontend flag in order not to expose it to "regular" end users? Or was it because, well, every other flag we have is a frontend flag?

Jun 4 2019, 6:13 PM · Restricted Project, Restricted Project
loladiro created D62885: [analyzer] Add werror flag for analyzer warnings.
Jun 4 2019, 4:51 PM · Restricted Project, Restricted Project

May 8 2019

loladiro added a comment to D50167: RFC: [SCEV] Add explicit representations of umin/smin.

Looked straightforward enough. Should be fixed by rPLO360238. I don't usually work on polly, so let me know if I misunderstood something.

May 8 2019, 3:36 AM · Restricted Project
loladiro committed rGaa1b6f1cfb35: [polly][SCEV] Expand SCEV matcher cases for new smin/umin ops (authored by loladiro).
[polly][SCEV] Expand SCEV matcher cases for new smin/umin ops
May 8 2019, 3:34 AM

May 7 2019

loladiro committed rGa1a4adf4b919: [SCEV] Add explicit representations of umin/smin (authored by loladiro).
[SCEV] Add explicit representations of umin/smin
May 7 2019, 8:27 AM

May 3 2019

loladiro added a comment to D59729: [GVN] non-functional code movement.

@vtjnash Was the review comment addressed? If so I assume you want me to land this, since you don't have commit?

May 3 2019, 5:53 AM · Restricted Project
loladiro added a comment to D50167: RFC: [SCEV] Add explicit representations of umin/smin.

@sanjoy Could you take another look to make sure I have addressed your comments to your satisfaction before I commit this?

May 3 2019, 5:42 AM · Restricted Project
loladiro updated the diff for D50167: RFC: [SCEV] Add explicit representations of umin/smin.

A few minor tweaks.

May 3 2019, 5:20 AM · Restricted Project
loladiro updated the diff for D50167: RFC: [SCEV] Add explicit representations of umin/smin.

Rebase and address review comments.

May 3 2019, 4:40 AM · Restricted Project

May 1 2019

loladiro committed rGa3e4b3bd3320: [SCEV] Use isKnownViaNonRecursiveReasoning for smax simplification (authored by loladiro).
[SCEV] Use isKnownViaNonRecursiveReasoning for smax simplification
May 1 2019, 8:59 AM
loladiro added inline comments to D50167: RFC: [SCEV] Add explicit representations of umin/smin.
May 1 2019, 8:35 AM · Restricted Project
loladiro added a comment to D61166: [SCEV] Use isKnownViaNonRecursiveReasoning for smax simplification.

and as I found out also stack overflows

For posterity, do you have some example IR and/or stack traces that you could attach to the commit message, or make a test case out of?

May 1 2019, 8:18 AM · Restricted Project
loladiro committed rGd8f856d26549: [LoopInfo] Faster implementation of setLoopID. NFC. (authored by loladiro).
[LoopInfo] Faster implementation of setLoopID. NFC.
May 1 2019, 7:39 AM

Apr 26 2019

loladiro added a comment to D44650: Fix build of llvm-cfi-verify on mingw32.

Shouldn't instead LLVMCFIVerify be declared using add_llvm_library with the proper dependency on the add_llvm_tool line. It seems like the problem might just be mixing the llvm and the cmake variant of these commands.

Apr 26 2019, 3:56 PM · Restricted Project, Restricted Project
loladiro created D61215: [LoopInfo] Faster implementation of setLoopID. NFC..
Apr 26 2019, 3:43 PM · Restricted Project
loladiro added a comment to D46460: [LoopInfo] Don't bail out early in getLoopID.

Actually, looks like the change to setLoopID is still relevant. I'll submit a new revision with just that change.

Apr 26 2019, 3:20 PM · Restricted Project
loladiro abandoned D46460: [LoopInfo] Don't bail out early in getLoopID.

Looks like this got fixed by @jdoerfert in rL341926 with a near identical patch and test. No rebase required.

Apr 26 2019, 3:14 PM · Restricted Project

Apr 25 2019

loladiro added a comment to D50167: RFC: [SCEV] Add explicit representations of umin/smin.

Alright, I have rebased this revision. I'd be happy to make the improvement to getAddExpr requested by @tvikram, since that seems independently useful, but I'd like to come to an agreement with @sanjoy and @mkazantsev on direction first.

Apr 25 2019, 6:21 PM · Restricted Project
loladiro created D61166: [SCEV] Use isKnownViaNonRecursiveReasoning for smax simplification.
Apr 25 2019, 6:14 PM · Restricted Project
loladiro updated the diff for D50167: RFC: [SCEV] Add explicit representations of umin/smin.

Undo a small spurious change I noticed while browsing the diff

Apr 25 2019, 5:59 PM · Restricted Project
loladiro updated the diff for D50167: RFC: [SCEV] Add explicit representations of umin/smin.

Rebased

Apr 25 2019, 5:50 PM · Restricted Project
loladiro committed rGe008be2b0723: [CMake][PowerPC] Recognize LLVM_NATIVE_TARGET="ppc64le" as PowerPC (authored by loladiro).
[CMake][PowerPC] Recognize LLVM_NATIVE_TARGET="ppc64le" as PowerPC
Apr 25 2019, 2:26 PM

Apr 4 2019

loladiro accepted D60231: Include invoke'd functions for recursive extract.
Apr 4 2019, 2:43 PM · Restricted Project

Apr 3 2019

loladiro added a comment to D60231: Include invoke'd functions for recursive extract.

Inline comment on implementation. The functionality looks fine to me.

Apr 3 2019, 1:35 PM · Restricted Project

Jan 23 2019

loladiro created D57118: [CMake][PowerPC] Recognize LLVM_NATIVE_TARGET="ppc64le" as PowerPC.
Jan 23 2019, 1:55 PM · Restricted Project

Sep 12 2018

loladiro updated the diff for D51842: [X86ISel] Implement byval lowering for Win64 calling convention.

Fix comment as requested by review, fix a small bug found in more extensive testing,
add a test case for the latter.

Sep 12 2018, 7:36 PM

Sep 9 2018

loladiro created D51842: [X86ISel] Implement byval lowering for Win64 calling convention.
Sep 9 2018, 2:01 PM

Aug 11 2018

loladiro updated the diff for D50167: RFC: [SCEV] Add explicit representations of umin/smin.

Fix ir names in tests broken by previous commits and proplerly match u/smin.

Aug 11 2018, 4:06 AM · Restricted Project
loladiro added a comment to D50167: RFC: [SCEV] Add explicit representations of umin/smin.

I have a general concern against such changes. In fact, you are introducing an alternative way to express the same thing. umin(a, b) and umax(~a, ~b) are the same, but now have 2 possible notations. It means that whatever pass or analysis that needs to recognize this pattern needs to be aware of both. Whenever the new node was not supported, it might be missed optimization opportunities. And we cannot know for sure how many such places there are, or will be. What motivation do you have for making this change? Is it strong enough to take a risk of missing optimization opportunities that I've just pointed out?

Aug 11 2018, 3:57 AM · Restricted Project

Aug 5 2018

loladiro updated the diff for D50167: RFC: [SCEV] Add explicit representations of umin/smin.

Fix a small bug discovered during production testing (
when expanding umin/umax, don't go to integers just because
types are unequal - the only reason to do is if one of the
operands in an integer and the other is not).

Aug 5 2018, 6:20 PM · Restricted Project