Page MenuHomePhabricator

Ka-Ka (Karl-Johan Karlsson)
User

Projects

User does not belong to any projects.

User Details

User Since
Dec 17 2015, 1:48 AM (200 w, 1 d)

Recent Activity

Wed, Oct 16

Ka-Ka added reviewers for D68790: [AddressSanitizer] Only instrument globals of default address space: vitalybuka, leonardchan.
Wed, Oct 16, 11:24 PM · Restricted Project, Restricted Project

Thu, Oct 10

Ka-Ka updated the summary of D68790: [AddressSanitizer] Only instrument globals of default address space.
Thu, Oct 10, 11:01 PM · Restricted Project, Restricted Project
Ka-Ka created D68790: [AddressSanitizer] Only instrument globals of default address space.
Thu, Oct 10, 8:03 AM · Restricted Project, Restricted Project

Sep 16 2019

Ka-Ka committed rGa1bc428b8979: Change signature of __builtin_rotateright64 back to unsigned (authored by Ka-Ka).
Change signature of __builtin_rotateright64 back to unsigned
Sep 16 2019, 2:55 AM
Ka-Ka updated the diff for D67606: Change signature of __builtin_rotateright64 back to unsigned.

Update testcases according to review comment.

Sep 16 2019, 2:10 AM · Restricted Project, Restricted Project
Ka-Ka created D67606: Change signature of __builtin_rotateright64 back to unsigned.
Sep 16 2019, 1:12 AM · Restricted Project, Restricted Project

Aug 19 2019

Ka-Ka committed rG40da6be2bd39: [AsmPrinter] Remove const qualifier from EmitBasicBlockStart. (authored by Ka-Ka).
[AsmPrinter] Remove const qualifier from EmitBasicBlockStart.
Aug 19 2019, 10:17 PM

Jun 3 2019

Ka-Ka accepted D62580: [OpenCL] Use long instead of long long in x86 builtins.

Thanks!

Jun 3 2019, 3:51 AM · Restricted Project, Restricted Project
Ka-Ka added inline comments to D62580: [OpenCL] Use long instead of long long in x86 builtins.
Jun 3 2019, 3:03 AM · Restricted Project, Restricted Project

May 29 2019

Ka-Ka added a comment to D62580: [OpenCL] Use long instead of long long in x86 builtins.

What about a testcase? It shouldn't be hard to add a small testcase that demonstrate that the changed builtins now work when compiling OpenCL C code for x86. I don't think you have to add all changed builtins to the testcase (but a few to demonstrate the change).

May 29 2019, 12:59 PM · Restricted Project, Restricted Project

May 16 2019

Ka-Ka committed rG0e525a4d6b66: [builtin] Fixed definitions of builtins that rely on the int/long long type is… (authored by Ka-Ka).
[builtin] Fixed definitions of builtins that rely on the int/long long type is…
May 16 2019, 12:16 AM

May 15 2019

Ka-Ka updated the diff for D61845: [builtin] Fixed definitions of builtins that rely on the int/long long type is 32/64 bits.

Updated according to review comments

May 15 2019, 12:03 AM · Restricted Project, Restricted Project

May 14 2019

Ka-Ka added a reviewer for D61845: [builtin] Fixed definitions of builtins that rely on the int/long long type is 32/64 bits: efriedma.
May 14 2019, 2:47 AM · Restricted Project, Restricted Project
Ka-Ka updated the diff for D61845: [builtin] Fixed definitions of builtins that rely on the int/long long type is 32/64 bits.

Added a new C++ testcase.
Removed the REQUIRES: avr-registered-target in the avr-builtins.c testcase.

May 14 2019, 2:45 AM · Restricted Project, Restricted Project

May 12 2019

Ka-Ka created D61845: [builtin] Fixed definitions of builtins that rely on the int/long long type is 32/64 bits.
May 12 2019, 11:47 PM · Restricted Project, Restricted Project

Feb 18 2019

Ka-Ka added inline comments to D58224: [DebugInfo] Adjust fragment offset for big endian targets when splitting alloca in SROA.
Feb 18 2019, 2:16 AM · debug-info, Restricted Project

Feb 15 2019

Ka-Ka added inline comments to D58224: [DebugInfo] Adjust fragment offset for big endian targets when splitting alloca in SROA.
Feb 15 2019, 4:58 AM · debug-info, Restricted Project

Feb 14 2019

Ka-Ka added a project to D58224: [DebugInfo] Adjust fragment offset for big endian targets when splitting alloca in SROA: debug-info.
Feb 14 2019, 3:42 AM · debug-info, Restricted Project
Ka-Ka created D58224: [DebugInfo] Adjust fragment offset for big endian targets when splitting alloca in SROA.
Feb 14 2019, 1:17 AM · debug-info, Restricted Project

Jan 3 2019

Ka-Ka added a comment to D17741: adds __FILE_BASENAME__ builtin macro.

Ping?

Jan 3 2019, 3:56 AM

Dec 18 2018

Ka-Ka added a comment to D17741: adds __FILE_BASENAME__ builtin macro.

Do you think this small lit testcase below work as a testcase for the -ffile-macro-prefix-to-remove option?

Dec 18 2018, 7:21 AM

Dec 7 2018

Ka-Ka created D55438: Assert on conflicting fixes for -fix option.
Dec 7 2018, 7:49 AM

Jul 30 2018

Ka-Ka added a comment to D49946: Fix crash in bounds checking.

I found another reproducer for the problem. This one is slightly different where a different assert blow, but I guess its only a different symptom for the same fault. As this one is slightly smaller you might want to use this one as a testcase instead (or use both)? Run with "opt -bounds-checking -S".

Jul 30 2018, 3:25 AM

Jul 23 2018

Ka-Ka added a comment to D48650: [analyzer] Fix constraint being dropped when analyzing a program without taint tracking enabled.
In D48650#1165966, @NoQ wrote:

This commit causes an assertion failure on void foo(int a, int *b) { (int)b < a; }

Run-line: clang -cc1 -analyze -analyzer-checker=core -analyzer-eagerly-assume test.c

So it kinda frustrates RangeConstraintManager with a SymSymExpr that expresses a comparison between a Loc and a NonLoc symbol.

I'll think a bit more on how do i want to address that.

Jul 23 2018, 4:47 AM

Jun 20 2018

Ka-Ka updated the diff for D47203: [LowerSwitch] Fixed faulty PHI node in switch default block.

Fixed another case when PHI nodes are not correctly updated.
This time it is when switch is replaced with a single branch.

Jun 20 2018, 8:14 AM

Jun 12 2018

Ka-Ka added a comment to D48111: [JumpThreading] Don't try to rewrite a use if it's already valid..

The fix solves the problem I saw originally in a out of tree target (described in PR37745) but I don't know JumpThreading enough to say if the fix is good or not. Thanks for working on this.

Jun 12 2018, 11:11 PM

Jun 4 2018

Ka-Ka updated the diff for D47203: [LowerSwitch] Fixed faulty PHI node in switch default block.

Shouldn't there be a removePredecessor call somewhere that takes care of this?

Jun 4 2018, 6:01 AM
Ka-Ka added a comment to D47203: [LowerSwitch] Fixed faulty PHI node in switch default block.

Ping?

Jun 4 2018, 3:50 AM
Ka-Ka added a comment to D46048: [branchfolding] When hoisting common code, remove kill flags from uses.

Ping?

Jun 4 2018, 3:50 AM

Jun 1 2018

Ka-Ka updated the diff for D46379: [ConstantFold] Turn off expression simplification for vector type.

Updated testcases according to comments

Jun 1 2018, 8:36 AM
Ka-Ka added a comment to D46379: [ConstantFold] Turn off expression simplification for vector type.

Do you think I should still include the negative testcase that you specified above even if the patch now only affect the GEP case?

Yes - because the earlier revision would have caused a bug with no regression test coverage for it. Let's add that to be safe. Also, I'd prefer to use the utils/update_test_checks.py script on all tests because it makes maintenance easier. And as before, if you check in the baseline version of the test using trunk output, that's even better - we want to keep the tests in place even if the patch gets reverted for some reason.

Jun 1 2018, 7:23 AM
Ka-Ka updated the diff for D46379: [ConstantFold] Turn off expression simplification for vector type.

This is a constant folding change, so the test should be visible with just "opt -constprop ..."

Ie, the test should be minimized and moved under test/Analysis/ConstantFolding.

Jun 1 2018, 5:21 AM

May 30 2018

Ka-Ka updated the diff for D47531: [ValueTracking] Fix endless recursion in isKnownNonZero().

Updated testcase according to comment.

May 30 2018, 7:08 AM
Ka-Ka created D47531: [ValueTracking] Fix endless recursion in isKnownNonZero().
May 30 2018, 6:10 AM
Ka-Ka added reviewers for D47529: [BranchFolding] Fix live-in's when hoisting code: kparzysz, gberry, MatzeB, uweigand, aprantl.

Adding reviewers.

May 30 2018, 5:51 AM
Ka-Ka created D47529: [BranchFolding] Fix live-in's when hoisting code.
May 30 2018, 4:01 AM

May 26 2018

Ka-Ka added a comment to D45686: [Driver] Clean up tmp files when deleting Compilation objects.

Ping.

We have added a lit reproducer for this now in clang-tools-extra: https://reviews.llvm.org/D47251.

The above should be rolled into this patch as the test case verifying the behavioral changes.

I guess the intention from @dstenb was to submit both patches together. The reason for a separate patch with the testcase alone is that the reproducer use clang-tidy and as far as I know all clang-tidy tests exist in clang-tools-extra.

.. and both of them exist in the same svn repo, or git monorepo. (granted, not many use that)

May 26 2018, 1:08 PM
Ka-Ka added a comment to D45686: [Driver] Clean up tmp files when deleting Compilation objects.

Ping.

We have added a lit reproducer for this now in clang-tools-extra: https://reviews.llvm.org/D47251.

The above should be rolled into this patch as the test case verifying the behavioral changes.

May 26 2018, 12:56 PM

May 25 2018

Ka-Ka added a reviewer for D45686: [Driver] Clean up tmp files when deleting Compilation objects: JDevlieghere.

Added Jonas Devlieghere as reviewer as he was involved in the review of rL327851 (which seems to be the reason for this patch).

May 25 2018, 11:58 PM
Ka-Ka updated the diff for D47203: [LowerSwitch] Fixed faulty PHI node in switch default block.

Reduced the size of the testcase.

May 25 2018, 4:11 PM
Ka-Ka added reviewers for D46379: [ConstantFold] Turn off expression simplification for vector type: mssimpso, spatel.

Adding Matthew Simpson and Sanjay Patel as reviewers also as they have done work in ConstantFold recently.

May 25 2018, 3:44 PM

May 23 2018

Ka-Ka added inline comments to D47139: [NaryReassociate] Detect deleted instr with WeakTrackingVH.
May 23 2018, 12:29 PM
Ka-Ka updated the diff for D47139: [NaryReassociate] Detect deleted instr with WeakTrackingVH.

The reason for me to use WeakTrackingVH instead of WeakVH from the beginning was only that it was used elsewhere in the file. However as you point out WeakVH should be fine as RAUW is not used in RecursivelyDeleteTriviallyDeadInstructions(). I adjust the code to use WeakVH.

May 23 2018, 12:23 AM

May 22 2018

Ka-Ka created D47203: [LowerSwitch] Fixed faulty PHI node in switch default block.
May 22 2018, 9:30 AM
Ka-Ka added inline comments to D46052: GNUstep Objective-C ABI version 2.
May 22 2018, 12:50 AM

May 21 2018

Ka-Ka added a comment to D46379: [ConstantFold] Turn off expression simplification for vector type.

Ping?

May 21 2018, 8:50 AM
Ka-Ka created D47139: [NaryReassociate] Detect deleted instr with WeakTrackingVH.
May 21 2018, 7:20 AM

May 18 2018

Ka-Ka created D47055: [LowerSwitch] Fixed faulty PHI node update.
May 18 2018, 1:02 AM

May 14 2018

Ka-Ka added a comment to D46048: [branchfolding] When hoisting common code, remove kill flags from uses.

Ping!
Anyone up for reviewing this?

May 14 2018, 1:47 AM
Ka-Ka resigned from D46775: [LICM] Preserve DT and LoopInfo specifically.

This definitely solve the problem I saw in the issue pr37369.

May 14 2018, 1:03 AM

May 9 2018

Ka-Ka updated the diff for D46379: [ConstantFold] Turn off expression simplification for vector type.

Changed testcase according what was suggested by lebedev.ri

May 9 2018, 7:19 AM
Ka-Ka added a comment to D46379: [ConstantFold] Turn off expression simplification for vector type.

Ping!
Anyone up for reviewing this?

May 9 2018, 12:57 AM

May 7 2018

Ka-Ka updated the summary of D46048: [branchfolding] When hoisting common code, remove kill flags from uses.
May 7 2018, 5:47 AM

May 2 2018

Ka-Ka created D46379: [ConstantFold] Turn off expression simplification for vector type.
May 2 2018, 11:39 PM

Apr 26 2018

Ka-Ka added reviewers for D46048: [branchfolding] When hoisting common code, remove kill flags from uses: MatzeB, kparzysz.

Adding Matthias Braun and Krzysztof Parzyszek as reviewer as it seems you both have done work in BranchFolding.cpp before. Do you have time to review this change?

Apr 26 2018, 2:23 AM
Ka-Ka added a comment to D46048: [branchfolding] When hoisting common code, remove kill flags from uses.

Adding Uli as a reviewer for the test case, since it's SystemZ (he always reviews SystemZ changes). Note: as Kalle explained to me in a mail, this test case has been somewhat modified to expose the bug on SystemZ, but since this is a .mir test case which passes the machine verifier, I think this is not a problem.

Apr 26 2018, 2:12 AM

Apr 25 2018

Ka-Ka created D46048: [branchfolding] When hoisting common code, remove kill flags from uses.
Apr 25 2018, 3:02 AM

Feb 7 2018

Ka-Ka added a project to D42801: [DebugInfo] Don't insert DEBUG_VALUE after terminators: debug-info.

Ping.
As I said before the change LGTM, but I would prefer if someone else also reviewed this change.

Feb 7 2018, 4:23 AM · debug-info

Feb 1 2018

Ka-Ka added reviewers for D42801: [DebugInfo] Don't insert DEBUG_VALUE after terminators: rnk, aprantl.

The change LGTM, but I'm not sure if I'm allowed to set "ready to land". I would prefer if Adrian Prantl or Reid Kleckner also reviewed this change (both now added as reviewers).

Feb 1 2018, 8:52 AM · debug-info

Nov 9 2017

Ka-Ka added inline comments to D38024: [RegisterCoalescer] Move debug value after rematerialize trivial def.
Nov 9 2017, 5:36 AM

Oct 4 2017

Ka-Ka updated the diff for D38229: [DebugInfo] Insert DEBUG_VALUEs after each register redefinition.

Rebased

Oct 4 2017, 3:58 AM

Sep 29 2017

Ka-Ka added a comment to D38229: [DebugInfo] Insert DEBUG_VALUEs after each register redefinition.

Could you please file a PR about this?

Sep 29 2017, 11:31 PM
Ka-Ka added a comment to D38229: [DebugInfo] Insert DEBUG_VALUEs after each register redefinition.
In D38229#880149, @rnk wrote:

One concern I have about this is that it may lead to inaccurate debug info when the value is computed long before its (dead) assignment. Consider this kind of program (untested, yet):

int v1 = getval();
int v2 = getval();
usevals(v1, v2);
v1 = v2;
if (v1) { /* empty after inlining, making v2 dead */ }

After optimization, v1 will probably use a CSR and v2 will use a volatile register clobbered by the usevals call. So, the dead v1 = v2 assignment will produce a DBG_VALUE of a physical register that has been clobbered. It would be innacurate to hoist the DBG_VALUE across the usevals call, since the value should still be the result of the first getval call, not the second.

One way to address this would be to avoid moving DBG_VALUEs across instructions with different DebugLoc lines.

Even if we decide that this issue is unimportant, we should probably write tests for it.

Sep 29 2017, 2:16 AM

Sep 27 2017

Ka-Ka added a comment to D38229: [DebugInfo] Insert DEBUG_VALUEs after each register redefinition.

When I tried your test program above I found that faulty hoisting of a DBG_VALUE across the call to usevals seems to be done by the CodeGenPrepare pass (before instruction selection). This must be a bug. If you want I can convert code above into a testcase but it will contain this faulty hoisted DBG_VALUE from the CodeGenPrepare pass. This patch will not impact that testcase.

Sep 27 2017, 4:29 AM
Ka-Ka updated the diff for D38229: [DebugInfo] Insert DEBUG_VALUEs after each register redefinition.

Minor fixes.

Sep 27 2017, 4:24 AM

Sep 26 2017

Ka-Ka added a comment to D38229: [DebugInfo] Insert DEBUG_VALUEs after each register redefinition.
In D38229#880149, @rnk wrote:

One concern I have about this is that it may lead to inaccurate debug info when the value is computed long before its (dead) assignment. Consider this kind of program (untested, yet):

int v1 = getval();
int v2 = getval();
usevals(v1, v2);
v1 = v2;
if (v1) { /* empty after inlining, making v2 dead */ }

After optimization, v1 will probably use a CSR and v2 will use a volatile register clobbered by the usevals call. So, the dead v1 = v2 assignment will produce a DBG_VALUE of a physical register that has been clobbered. It would be innacurate to hoist the DBG_VALUE across the usevals call, since the value should still be the result of the first getval call, not the second.

One way to address this would be to avoid moving DBG_VALUEs across instructions with different DebugLoc lines.

Even if we decide that this issue is unimportant, we should probably write tests for it.

Sep 26 2017, 3:30 PM

Sep 25 2017

Ka-Ka added a parent revision for D38229: [DebugInfo] Insert DEBUG_VALUEs after each register redefinition: D38140: [DebugInfo] Do not extend range for physreg in LiveDebugVariables.
Sep 25 2017, 5:03 AM
Ka-Ka added a child revision for D38140: [DebugInfo] Do not extend range for physreg in LiveDebugVariables: D38229: [DebugInfo] Insert DEBUG_VALUEs after each register redefinition.
Sep 25 2017, 5:03 AM
Ka-Ka created D38229: [DebugInfo] Insert DEBUG_VALUEs after each register redefinition.
Sep 25 2017, 5:03 AM
Ka-Ka added inline comments to D38197: [DebugInfo] Sort the SDDbgValue list before assuming it is in IR order.
Sep 25 2017, 5:02 AM

Sep 18 2017

Ka-Ka created D38024: [RegisterCoalescer] Move debug value after rematerialize trivial def.
Sep 18 2017, 11:56 PM

Sep 5 2017

Ka-Ka added inline comments to D37428: Debug info: Fixed faulty debug locations for attributed statements.
Sep 5 2017, 10:58 PM
Ka-Ka added a comment to D37428: Debug info: Fixed faulty debug locations for attributed statements.

Not sure what you mean by "avoid emitting unnecessary stop points" - do you have a test case for that?

Sep 5 2017, 9:10 AM
Ka-Ka updated the diff for D37428: Debug info: Fixed faulty debug locations for attributed statements.

I updated the testcase according to what David Blaikie suggested.
I also rewrote to code to be a bit more robust and avoid emitting unnecessary stoppoints.

Sep 5 2017, 12:22 AM

Sep 3 2017

Ka-Ka added inline comments to D37428: Debug info: Fixed faulty debug locations for attributed statements.
Sep 3 2017, 10:47 AM
Ka-Ka created D37428: Debug info: Fixed faulty debug locations for attributed statements.
Sep 3 2017, 10:35 AM

Mar 24 2017

Ka-Ka updated subscribers of D31322: [TableGen] Make CodeGenMapTable understand the namespace field of an instruction.
Mar 24 2017, 3:45 AM
Ka-Ka added reviewers for D31322: [TableGen] Make CodeGenMapTable understand the namespace field of an instruction: stoklund, craig.topper.
Mar 24 2017, 3:37 AM
Ka-Ka created D31322: [TableGen] Make CodeGenMapTable understand the namespace field of an instruction.
Mar 24 2017, 3:29 AM

Feb 14 2017

Ka-Ka added a comment to D29717: [LoopVectorize] Added address space check when analysing interleaved accesses.

I had to revert this change due to a buildbot failure. I'm trying to recreate the fault locally ...

Feb 14 2017, 5:26 AM

Feb 13 2017

Ka-Ka updated the diff for D29717: [LoopVectorize] Added address space check when analysing interleaved accesses.

Updated the testcase "run line"

Feb 13 2017, 6:31 AM

Feb 9 2017

Ka-Ka updated the diff for D29717: [LoopVectorize] Added address space check when analysing interleaved accesses.

Updated the testcase to use FileCheck.

Feb 9 2017, 12:12 AM

Feb 8 2017

Ka-Ka removed a reviewer for D29717: [LoopVectorize] Added address space check when analysing interleaved accesses: llvm-commits.
Feb 8 2017, 1:34 PM
Ka-Ka added a comment to D28922: [LoadCombine] Fix combining of loads which span an aliasing store..

Any news about this issue?

Feb 8 2017, 8:00 AM
Ka-Ka created D29717: [LoopVectorize] Added address space check when analysing interleaved accesses.
Feb 8 2017, 6:21 AM

Dec 29 2016

Ka-Ka added a comment to D27983: Fix InlineSpiller accessing not updated dominator tree base information.

Hi,

The change looks good, but do you have a test case to add with it?

Thanks,
-Quentin

Dec 29 2016, 5:12 AM

Dec 20 2016

Ka-Ka added a comment to D27983: Fix InlineSpiller accessing not updated dominator tree base information.

I have a reproducer for an out of target backend. I will give it a try (tomorrow) to transform it into a x86 reproducer, but I suspect that it might be hard to get it working.

Dec 20 2016, 1:35 PM
Ka-Ka retitled D27983: Fix InlineSpiller accessing not updated dominator tree base information from to Fix InlineSpiller accessing not updated dominator tree base information.
Dec 20 2016, 4:50 AM

Sep 23 2016

Ka-Ka added a comment to D24854: [SROA] Drop lifetime.start/end intrinsics when they block promotion..

This patch solve the problem I have in the "out of tree" backend I work with. Many thanks!

Sep 23 2016, 1:29 AM

Jun 15 2016

Ka-Ka updated the diff for D20807: PR27938: Don't remove valid DebugLoc in Scalarizer.

The testcase was originally only reduced with creduce but now also with bugpoint.

Jun 15 2016, 8:47 AM

Jun 8 2016

Ka-Ka added a comment to D20807: PR27938: Don't remove valid DebugLoc in Scalarizer.

Anyone interested in reviewing this bugfix?

Jun 8 2016, 12:02 AM

May 31 2016

Ka-Ka retitled D20807: PR27938: Don't remove valid DebugLoc in Scalarizer from to PR27938: Don't remove valid DebugLoc in Scalarizer.
May 31 2016, 3:51 AM
Ka-Ka abandoned D20805: PR27938: Don't remove valid DebugLoc in Scalarizer.

Inverted diff. Abandon.

May 31 2016, 2:43 AM
Ka-Ka retitled D20805: PR27938: Don't remove valid DebugLoc in Scalarizer from to PR27938: Don't remove valid DebugLoc in Scalarizer.
May 31 2016, 2:39 AM

Jan 31 2016

Ka-Ka updated subscribers of D16742: [DWARFDebug] Fix another case of overlapping ranges.
Jan 31 2016, 4:29 AM

Dec 17 2015

Ka-Ka updated subscribers of D8705: ScheduleDAGInstrs::buildSchedGraph() handling of memory dependecies rewritten..
Dec 17 2015, 1:48 AM