Page MenuHomePhabricator

bjope (Bjorn Pettersson)
User

Projects

User does not belong to any projects.

User Details

User Since
Sep 26 2016, 7:58 AM (115 w, 1 d)

Recent Activity

Tue, Dec 4

bjope added inline comments to D54719: [Intrinsic] Signed Fixed Point Multiplication Intrinsic.
Tue, Dec 4, 6:57 AM

Thu, Nov 29

bjope accepted D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.

Might wait a little before you land this to see if @uweigand got anything more to say. But afaict this only removes the warning without affecting the result in any way, so it should not make anything worse.

Thu, Nov 29, 7:48 AM
bjope added a comment to D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.

Got a feeling that I'm the one who has been questioning this solution. And I guess I also kind of blocked the progress in D54962.
Anyway, I haven't really got any better alternative right now (at least not that is easy to implement).

Thu, Nov 29, 7:16 AM

Wed, Nov 28

bjope added inline comments to D54962: [SystemZ] Rework subreg structure to avoid TableGen warning.
Wed, Nov 28, 3:04 AM

Tue, Nov 27

bjope added inline comments to D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.
Tue, Nov 27, 6:53 AM

Thu, Nov 22

bjope added reviewers for D54517: [CGP] Limit Complex Addressing mode by number of BasicBlocks to traverse: chandlerc, haicheng.

I don't have any objections to the patch myself, but I don't really have the knowledge to understand if this could be bad for some important use cases either. A user can ofcourse override the threshold if needed, so I guess that makes this patch a little bit less "dangerous".

Thu, Nov 22, 2:07 PM
bjope added a comment to D54695: [PM] Port Scalarizer to the new pass manager..

return value for Scalarizer::run fixed in rL347432

Thu, Nov 22, 12:53 AM

Wed, Nov 21

bjope added a comment to D54719: [Intrinsic] Signed Fixed Point Multiplication Intrinsic.

Do we have examples of real hardware that implements this sort of instruction?

Right now this intrinsic looks like its just reimplementing what you would get if you just emitted this IR

%a = sext iX %x to i2X
%b = sext iX %y to i2X
%c = mul i2X %a, %b
%d = lshr i2X %c, PRECISION
%e = trunc i2X %d to iX

So I'm not sure if there's a need for an intrinsic unless that pattern is difficult to match to an instruction.

I think @ebevhan and @bjope may have hardware with fixed point instructions

Wed, Nov 21, 12:58 PM
bjope added inline comments to D54695: [PM] Port Scalarizer to the new pass manager..
Wed, Nov 21, 10:26 AM

Tue, Nov 20

bjope added a comment to D54517: [CGP] Limit Complex Addressing mode by number of BasicBlocks to traverse.

Basically I think the code looks ok. However, I'm not so familiar with this algorithm so it is hard to comment about the actual solution.

Tue, Nov 20, 2:37 PM
bjope added inline comments to D54719: [Intrinsic] Signed Fixed Point Multiplication Intrinsic.
Tue, Nov 20, 4:29 AM
bjope added inline comments to D54729: [Docs] Documentation for the saturation addition and subtraction intrinsics.
Tue, Nov 20, 3:41 AM
bjope accepted D54729: [Docs] Documentation for the saturation addition and subtraction intrinsics.

LGTM!

Tue, Nov 20, 2:35 AM

Wed, Nov 14

bjope added a comment to D54237: Constant folding and instcombine for saturating adds.

Please can you add vector constant folding tests + support?

Wed, Nov 14, 6:16 AM

Nov 11 2018

bjope added a comment to D54237: Constant folding and instcombine for saturating adds.

Is it perhaps "better" to fold sadd_sat(X, undef) -> 0 And uadd_sat(X, undef) -> MaxValue if we want to get rid of undef here? That way we get rid of the X operand as well.

Folding sadd_sat(X, undef) -> 0 would not be valid, because if X = SignedMinValue, there is no choice of undef for which the result would be zero. The largest value that can be reached is -1.

Nov 11 2018, 3:04 AM
bjope accepted D54007: Use a data structure better suited for large sets in SimplificationTracker..

LGTM now (might wanna wait for @skatkov to take a look at the last changes as well).

Nov 11 2018, 2:52 AM

Nov 10 2018

bjope added a comment to D49671: [SchedModel] Propagate read advance cycles to implicit operands outside instruction descriptor.

Maybe the register allocator should add the implicit-def as an IMPLICIT_DEF instruction just before the MI instead of attaching a bogus impl def on the MI (if the MI uses parts of the register I guess the IMPLICIT_DEF needs a corresponding implicit use).

Nov 10 2018, 11:09 AM

Nov 9 2018

bjope added a comment to D54237: Constant folding and instcombine for saturating adds.

Regarding

// X + undef -> undef
// undef + X -> undef
if (match(Op1, m_Undef()) || match(Op0, m_Undef()))
  return UndefValue::get(ReturnType);

I was initially planning to include these simplifications, but ultimately was not certain regarding their legality. In particular, if we have uadd.sat(MaxValue, Y), then the result is fully determined to be MaxValue, regardless of the value of Y. If we have something like sadd.sat(SignedMinValue, Y) then the result is known to be negative. In either case the intrinsic cannot have the full range of results of the result type, regardless of the value of Y. As such, I think folding operations on undef to undef would not be legal in this case.

It should be possible to fold uadd.sat(X, undef) to MaxValue. Not sure how useful that is though.

You can also assume that undef is 0 and fold X + undef -> X.

Nov 9 2018, 10:49 AM

Nov 8 2018

bjope added inline comments to D54237: Constant folding and instcombine for saturating adds.
Nov 8 2018, 2:32 AM
bjope added a comment to D54237: Constant folding and instcombine for saturating adds.

Regarding

// X + undef -> undef
// undef + X -> undef
if (match(Op1, m_Undef()) || match(Op0, m_Undef()))
  return UndefValue::get(ReturnType);

I was initially planning to include these simplifications, but ultimately was not certain regarding their legality. In particular, if we have uadd.sat(MaxValue, Y), then the result is fully determined to be MaxValue, regardless of the value of Y. If we have something like sadd.sat(SignedMinValue, Y) then the result is known to be negative. In either case the intrinsic cannot have the full range of results of the result type, regardless of the value of Y. As such, I think folding operations on undef to undef would not be legal in this case.

It should be possible to fold uadd.sat(X, undef) to MaxValue. Not sure how useful that is though.

Nov 8 2018, 1:59 AM

Nov 7 2018

bjope added a comment to D54237: Constant folding and instcombine for saturating adds.

I'm no expert on how things are divided between InstructionSimplify and InstCombine, but shouldn't the simple folds be in InstructionSimplify?
For the record, we were planning to upstream something like this in simplifyBinaryIntrinsic in InstructionSimplify.cpp:

case Intrinsic::sadd_sat:
  // X + 0 -> X
  if (match(Op1, m_Zero()))
    return Op0;
Nov 7 2018, 11:58 PM
bjope added a comment to D54007: Use a data structure better suited for large sets in SimplificationTracker..

Just a note, there is a specific usage of this data structure.
Phi nodes are inserted in the initial step without any removals and then only removals are used.

So we should not see something like delete-insert.
So while data structure really suffers from what Bjorn wrote but in this specific application of this data structure I do not expect any problems...

Nov 7 2018, 12:56 AM
bjope requested changes to D54007: Use a data structure better suited for large sets in SimplificationTracker..
Nov 7 2018, 12:27 AM

Nov 5 2018

bjope added a comment to D54007: Use a data structure better suited for large sets in SimplificationTracker..

If I remember correctly a problem was that depending on the order iteration at line 3011

while (PhiNodesToMatch.size())

the end result (which PHI node that others are found out to be equivalent to) could be different. Quite annoying when trying to debug something, and when turning on -print-after-all or rebuilding using -g the result is different.

Nov 5 2018, 10:24 AM

Oct 30 2018

bjope committed rL345636: [DAGCombiner] Fix for big endian in ForwardStoreValueToDirectLoad.
[DAGCombiner] Fix for big endian in ForwardStoreValueToDirectLoad
Oct 30 2018, 1:19 PM
bjope closed D53776: [DAGCombiner] Fix for big endian in ForwardStoreValueToDirectLoad.
Oct 30 2018, 1:19 PM
bjope added inline comments to D53776: [DAGCombiner] Fix for big endian in ForwardStoreValueToDirectLoad.
Oct 30 2018, 12:32 PM
bjope committed rC345573: [OPENMP] Fix for "error: unused variable 'CED'".
[OPENMP] Fix for "error: unused variable 'CED'"
Oct 30 2018, 1:51 AM
bjope committed rL345573: [OPENMP] Fix for "error: unused variable 'CED'".
[OPENMP] Fix for "error: unused variable 'CED'"
Oct 30 2018, 1:51 AM

Oct 27 2018

bjope added a comment to D53783: [Intrinsic] Signed and Unsigned Saturation Subtraction Intrinsics.

nit: there is a spelling error in the title "Intirnsics"

Oct 27 2018, 1:49 AM

Oct 26 2018

bjope added inline comments to D53776: [DAGCombiner] Fix for big endian in ForwardStoreValueToDirectLoad.
Oct 26 2018, 1:36 PM
bjope added a comment to D53776: [DAGCombiner] Fix for big endian in ForwardStoreValueToDirectLoad.

This should fix the problem discussed here: http://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20181022/596459.html
But as shown by @test4 in the added test case (for CHECK-BE) we also get forwarding in that test now.

Oct 26 2018, 1:26 PM
bjope created D53776: [DAGCombiner] Fix for big endian in ForwardStoreValueToDirectLoad.
Oct 26 2018, 1:24 PM
bjope committed rL345398: [Fixed Point Arithmetic] Refactor fixed point casts.
[Fixed Point Arithmetic] Refactor fixed point casts
Oct 26 2018, 9:14 AM
bjope committed rC345398: [Fixed Point Arithmetic] Refactor fixed point casts.
[Fixed Point Arithmetic] Refactor fixed point casts
Oct 26 2018, 9:14 AM
bjope closed D53707: [Fixed Point Arithmetic] Refactor fixed point casts.
Oct 26 2018, 9:14 AM
bjope added inline comments to D53738: [Fixed Point Arithmetic] Fixed Point Addition.
Oct 26 2018, 9:13 AM · Restricted Project

Oct 25 2018

bjope created D53707: [Fixed Point Arithmetic] Refactor fixed point casts.
Oct 25 2018, 8:52 AM
bjope added a comment to D53612: [LV] Avoid vectorizing loops under opt for size that involve SCEV checks.

The patch will avoid the assert seen in PR39417 so that is great.
(hard to tell if it still is possible to hit the assert, PR39417 was triggered during fuzzy testing using csmith to generate the input)

Oct 25 2018, 1:24 AM

Oct 24 2018

bjope added a comment to D53612: [LV] Avoid vectorizing loops under opt for size that involve SCEV checks.

A PR for the problem reported by @uabelho can be found here: https://bugs.llvm.org/show_bug.cgi?id=39417

Oct 24 2018, 12:22 PM

Oct 19 2018

bjope added a comment to D52927: [CodeGen] Fix for PR39094..

I am sorry that I misunderstood the meaning of the status. I thought that if the status is ‘ACCEPTED’, I could upstream the commit.

Oct 19 2018, 3:32 AM

Oct 18 2018

bjope added a comment to D52927: [CodeGen] Fix for PR39094..

Still no test case :-(

Oct 18 2018, 11:38 PM

Oct 17 2018

bjope added a comment to D53340: [Intrinsic] Unigned Saturation Addition Intrinsic.

Is this intrinsic really needed for the fixed point support?

Maybe I've missed something in the discussions about support for unsigned fixed point types, but in our implementation the unsigned types are using the positive range of the signed type, such as [0, SIGNED_MAX]. So we keep the sign bit zero for the unsigned fixed point types. Are you planning for something different here?

In our implementation we lower addition of two saturated unsigned fixed point types to sadd.sat (if the input values are in the range [0, SIGNED_MAX] the result will be in the range [0, SIGNED_MAX] as well). So we haven't really found a need for implementing uadd.sat.

By default we have unsigned fixed point types in clang to use the entire length of the int, so it ranges from [0, UNSIGNED_MAX]. In this case I think it would be useful to have an unsigned version as well. This could also be used for regular unsigned integers that do not have a padding bit, and I believe @craig.topper was interested in this so they could be replaced with target specific calls to x86 intrinsics like PADDUSB and PADDUSW.

Oct 17 2018, 9:41 AM
bjope added inline comments to D53340: [Intrinsic] Unigned Saturation Addition Intrinsic.
Oct 17 2018, 1:56 AM
bjope added a comment to D53340: [Intrinsic] Unigned Saturation Addition Intrinsic.

Is this intrinsic really needed for the fixed point support?

Oct 17 2018, 12:01 AM

Oct 15 2018

bjope added a comment to D52109: [TwoAddressInstructionPass] Don't update SrcRegMap for copies inserted for tied register constraint when the src isn't killed.

Have you considered making a .mir-test that show the effect of TwoAddressInstruction pass here. Maybe an overkill since there already are plenty of test cases that are affected by the change, but it would make it easier to understand the tranformation difference that we introduce in the TwoAddressInstructionPass.

Oct 15 2018, 11:50 PM
bjope accepted D53299: [Fixed Point Arithmetic] Fix for clang-tools-extra warning.

Just some inline nit:s about whitespace.

Oct 15 2018, 12:40 PM · Restricted Project
bjope added a comment to rL344530: [Fixed Point Arithmetic] FixedPointCast.

I found those earlier when working on the monorepo. In fixing them now.

Oct 15 2018, 12:12 PM
bjope added a comment to rL344530: [Fixed Point Arithmetic] FixedPointCast.

I think this will give problems when building with clang-tools-extra, and having -Werror.
Such as:
../tools/clang/tools/extra/clang-tidy/modernize/UseDefaultMemberInitCheck.cpp:22:11: error: enumeration value 'STK_FixedPoint' not handled in switch [-Werror,-Wswitch]

Oct 15 2018, 11:33 AM
bjope committed rL344492: [TwoAddressInstructionPass] Replace subregister uses when processing tied….
[TwoAddressInstructionPass] Replace subregister uses when processing tied…
Oct 15 2018, 1:38 AM
bjope closed D36224: [TwoAddressInstructionPass] Replace subregister uses when processing tied operands.
Oct 15 2018, 1:38 AM

Oct 14 2018

bjope added a comment to D36224: [TwoAddressInstructionPass] Replace subregister uses when processing tied operands.

ping!

Oct 14 2018, 11:57 PM

Oct 12 2018

bjope added inline comments to D53162: [DataLayout] Add bit width of pointers to global values.
Oct 12 2018, 2:42 AM
bjope added inline comments to D53053: [Intrinsic] Signed Saturation Addition Intrinsic.
Oct 12 2018, 1:11 AM
bjope added inline comments to D53053: [Intrinsic] Signed Saturation Addition Intrinsic.
Oct 12 2018, 12:36 AM

Oct 9 2018

bjope updated subscribers of D52286: [Intrinsic] Signed Saturation Intrinsic.

If the use of a special intrinsic for saturation is rare (few targets that supports it natively), then perhaps we should put this particular patch on hold for now?

Oct 9 2018, 12:16 AM

Oct 3 2018

bjope added a comment to D52447: [Tablegen/RFC] Introduce Mask to limit generation of inferred register classes.

I don't know the history behind the inferred classes, I thought they were generated because they might be needed :-)

Oct 3 2018, 9:43 AM
bjope added a comment to D36224: [TwoAddressInstructionPass] Replace subregister uses when processing tied operands.

Note that embarassingly there are still a few passes where we skip machine verification in the default pass pipeline, TwoAddressInstruction being one of them. However if this is a new failure triggered by this particular patch then please fix it!

Oct 3 2018, 8:55 AM

Sep 30 2018

bjope committed rL343417: [PHIElimination] Lower a PHI node with only undef uses as IMPLICIT_DEF.
[PHIElimination] Lower a PHI node with only undef uses as IMPLICIT_DEF
Sep 30 2018, 10:28 AM
bjope closed D52558: [PHIElimination] Lower a PHI node with only undef uses as IMPLICIT_DEF.
Sep 30 2018, 10:28 AM
bjope committed rL343416: [PHIElimination] Update the regression test for PR16508.
[PHIElimination] Update the regression test for PR16508
Sep 30 2018, 10:25 AM
bjope closed D52553: [PHIElimination] Update the regression test for PR16508.
Sep 30 2018, 10:24 AM

Sep 28 2018

bjope added a comment to D52558: [PHIElimination] Lower a PHI node with only undef uses as IMPLICIT_DEF.

Minor refactoring/renaming as suggested by Matze.

BTW: This is still good to go, no need for further review. (I often approve patches with small issues remaining in cases where I trust the author to address the small issues correctly).

Sep 28 2018, 9:37 AM
bjope updated the summary of D52553: [PHIElimination] Update the regression test for PR16508.
Sep 28 2018, 8:40 AM
bjope updated the diff for D52558: [PHIElimination] Lower a PHI node with only undef uses as IMPLICIT_DEF.

Minor refactoring/renaming as suggested by Matze.

Sep 28 2018, 8:39 AM
bjope updated the diff for D52553: [PHIElimination] Update the regression test for PR16508.

Removed the .ll test case (and updated comments in the new .mir test) as suggested in the review comments.

Sep 28 2018, 8:39 AM
bjope added a comment to D52558: [PHIElimination] Lower a PHI node with only undef uses as IMPLICIT_DEF.

The patch on its own makes sense to me, so LGTM (comment below).

I didn't know PHIElimination looks for IMPLICIT_DEFs, do you have an idea why that is given that we run ProcessImplicitDefs immediately before PHIElimination and it has a rule to eliminate phi-nodes with all implicit-def inputs too...

Sep 28 2018, 8:35 AM
bjope updated the diff for D36224: [TwoAddressInstructionPass] Replace subregister uses when processing tied operands.
  1. Added livevars and verify-machineinstrs to the RUN line in the test case.
  2. Solved the fault detected by the verifier, i.e. incorrectly setting of killed on %0 in the inserted COPY instruction in test2.
Sep 28 2018, 7:09 AM
bjope added a comment to D52553: [PHIElimination] Update the regression test for PR16508.

LGTM, thanks! Maybe we can even drop the .ll test now?

Sep 28 2018, 1:15 AM

Sep 27 2018

bjope added a reviewer for D36224: [TwoAddressInstructionPass] Replace subregister uses when processing tied operands: MatzeB.

I'm actually not sure if this should impact the update of liveness info. LV is deprecated and should not be used after this pass (so I don't know if it really need to be updated). And everything about LIS here is unused code unless using -early-live-intervals. And we do not have any tests for that (and when I tried -early-live-intervals I got lots of other failures). Anyway, since rL279804 did not change anything about liveness info, I guess a revert of rL279804 should not impact it either.

Sep 27 2018, 8:00 AM
bjope added reviewers for D52558: [PHIElimination] Lower a PHI node with only undef uses as IMPLICIT_DEF: MatzeB, tstellar.

This is slightly related to https://bugs.llvm.org/show_bug.cgi?id=39085, but this patch is supposed to focus on getting IMPLICIT_DEF when all PHI inputs are undefined.
The PR is about the problem with updating "killed" that is mentioned in the "bar" part of the test case.

Sep 27 2018, 7:41 AM
bjope added reviewers for D52553: [PHIElimination] Update the regression test for PR16508: MatzeB, hfinkel.
Sep 27 2018, 7:34 AM

Sep 26 2018

bjope added a comment to D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.

So it should not be possible to do subreg_h32(V0), right?

Tablegen makes registers "inherit" some subregister indices from their subregisters, so you can end up with a h32 of a register that didn't initially have it.

Sep 26 2018, 12:07 PM
bjope added a comment to D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.

The FPR64 and VR128 classes are a little bit unusual(?) as they only have one subreg, that maps to the high part of the register.

Sep 26 2018, 11:20 AM
bjope added a comment to D36224: [TwoAddressInstructionPass] Replace subregister uses when processing tied operands.

The tests may pass, but is the output exactly the same? I think this should break the test in the listed example. There can't be a copy in the case it's trying to fix

Sorry, I don't think I understand what you mean. Are you talking about the example in the summary, or the added mir-test?

The tests I committed with that revision

Sep 26 2018, 9:50 AM
bjope created D52558: [PHIElimination] Lower a PHI node with only undef uses as IMPLICIT_DEF.
Sep 26 2018, 9:20 AM
bjope created D52553: [PHIElimination] Update the regression test for PR16508.
Sep 26 2018, 7:54 AM

Sep 24 2018

bjope added a comment to D36224: [TwoAddressInstructionPass] Replace subregister uses when processing tied operands.

The tests may pass, but is the output exactly the same? I think this should break the test in the listed example. There can't be a copy in the case it's trying to fix

Sep 24 2018, 7:38 AM

Sep 21 2018

bjope added a reviewer for D36224: [TwoAddressInstructionPass] Replace subregister uses when processing tied operands: kparzysz.
Sep 21 2018, 4:39 AM
bjope retitled D36224: [TwoAddressInstructionPass] Replace subregister uses when processing tied operands from [CodeGen} Correctly replace subregister uses when processing tied operands to [TwoAddressInstructionPass] Replace subregister uses when processing tied operands.
Sep 21 2018, 4:33 AM
bjope updated the diff for D36224: [TwoAddressInstructionPass] Replace subregister uses when processing tied operands.

Addning a hand-crafted reproducer for Hexagon.

Sep 21 2018, 4:32 AM
bjope commandeered D36224: [TwoAddressInstructionPass] Replace subregister uses when processing tied operands.

I'll take over this, and add a reproducer for an in-tree target!

Sep 21 2018, 4:31 AM
bjope added inline comments to D52092: [ValueTracking] Generalize isBytewiseValue into isSplatValue.
Sep 21 2018, 1:27 AM

Sep 20 2018

bjope added inline comments to D52092: [ValueTracking] Generalize isBytewiseValue into isSplatValue.
Sep 20 2018, 12:50 PM
bjope added inline comments to D52092: [ValueTracking] Generalize isBytewiseValue into isSplatValue.
Sep 20 2018, 12:20 PM
bjope added a reviewer for D50977: [TableGen] Examine entire subreg compositions to detect ambiguity: bjope.

I think a difference is that the ll composition clash with a user-defined subreg, while the hh composition clashes with a tablegen synthesized subreg.
And we do not get the extra synthesized subreg index for hh when there is a user defined composition.

Sep 20 2018, 11:45 AM
bjope added a comment to D52306: [DAGCombine] Don't fold dependent loads across SELECT_CC..

Do you have a test case?

Sep 20 2018, 10:37 AM
bjope committed rL342632: [IPSCCP] Fix a problem with removing labels in a switch with undef condition.
[IPSCCP] Fix a problem with removing labels in a switch with undef condition
Sep 20 2018, 2:01 AM
bjope closed D52232: [IPSCCP] Fix a problem with removing labels in a switch with undef condition.
Sep 20 2018, 2:01 AM
bjope added a comment to D51751: Merge clang's isRepeatedBytePattern with LLVM's isBytewiseValue.

This patch will conflict with my patch here: https://reviews.llvm.org/D52092

Sep 20 2018, 12:17 AM
bjope added a comment to D52092: [ValueTracking] Generalize isBytewiseValue into isSplatValue.

Might conflict with: https://reviews.llvm.org/D51751

Sep 20 2018, 12:17 AM
bjope committed rL342618: [MachineVerifier] Relax checkLivenessAtDef regarding dead subreg defs.
[MachineVerifier] Relax checkLivenessAtDef regarding dead subreg defs
Sep 20 2018, 12:03 AM
bjope closed D52237: [MachineVerifier] Relax checkLivenessAtDef regarding dead subreg defs.
Sep 20 2018, 12:03 AM

Sep 19 2018

bjope added inline comments to rL342576: Copy utilities updated and added for MI flags.
Sep 19 2018, 4:08 PM
bjope added a comment to D50977: [TableGen] Examine entire subreg compositions to detect ambiguity.

I see one problem with this.

Sep 19 2018, 10:04 AM
bjope added inline comments to D52237: [MachineVerifier] Relax checkLivenessAtDef regarding dead subreg defs.
Sep 19 2018, 8:21 AM
bjope updated the diff for D52237: [MachineVerifier] Relax checkLivenessAtDef regarding dead subreg defs.

Added a reproducer using hexagon as target, that way it was possible to show the difference between having subregister liveness or not.

Sep 19 2018, 8:14 AM
bjope added inline comments to D52232: [IPSCCP] Fix a problem with removing labels in a switch with undef condition.
Sep 19 2018, 4:07 AM
bjope updated the diff for D52232: [IPSCCP] Fix a problem with removing labels in a switch with undef condition.

Fixed some mistakes detected by Florian. Thanks alot for those comments!

Sep 19 2018, 4:01 AM
bjope updated the diff for D52232: [IPSCCP] Fix a problem with removing labels in a switch with undef condition.

Removed a code comment uploaded by mistake in previous diff.

Sep 19 2018, 2:43 AM