Skip to content

Conversation

@MathiasVP
Copy link
Contributor

Before:

Tuple counts for Printf::FormatLiteral::getConversionType_dispred#fff/3@10f6e8dt after 90ms:
  ...
  3914   ~2%     {3} r61 = SELECT project#Printf::FormatLiteral::parseConvSpec_dispred#fffffffff#4 ON In.2 != "l"
  3914   ~2%     {3} r62 = SELECT r61 ON In.2 != "w"
  3914   ~2%     {3} r63 = SELECT r62 ON In.2 != "h"
  3914   ~2%     {2} r64 = SCAN r63 OUTPUT In.0 'this', In.1 'n'
  3914   ~2%     {2} r65 = STREAM DEDUP r64
  3914   ~1%     {3} r66 = JOIN r65 WITH Printf::FormatLiteral::getDefaultCharType_dispred#ff ON FIRST 1 OUTPUT Rhs.1 'result', Lhs.0 'this', Lhs.1 'n'
  900220 ~0%     {3} r67 = JOIN r66 WITH Type::DerivedType::getBaseType_dispred#ff_10#join_rhs ON FIRST 1 OUTPUT Rhs.1 'result', Lhs.1 'this', Lhs.2 'n'
  3914   ~1%     {3} r68 = JOIN r67 WITH Type::PointerType#f ON FIRST 1 OUTPUT Lhs.1 'this', Lhs.2 'n', Lhs.0 'result'
  ...

After:

Tuple counts for Printf::FormatLiteral::getConversionType_dispred#fff/3@06dbbet0 after 9ms:
  ...
  3914  ~2%     {3} r44 = SELECT project#Printf::FormatLiteral::parseConvSpec_dispred#fffffffff#4 ON In.2 != "l"
  3914  ~2%     {3} r45 = SELECT r44 ON In.2 != "w"
  3914  ~2%     {3} r46 = SELECT r45 ON In.2 != "h"
  3914  ~2%     {2} r47 = SCAN r46 OUTPUT In.0 'this', In.1 'n'
  3914  ~2%     {2} r48 = STREAM DEDUP r47
  3914  ~1%     {3} r49 = JOIN r48 WITH Printf::FormatLiteral::getDefaultCharType_dispred#ff ON FIRST 1 OUTPUT Rhs.1 'result', Lhs.0 'this', Lhs.1 'n'
  3914  ~1%     {3} r50 = JOIN r49 WITH Printf::isPointerTypeWithBase#ff ON FIRST 1 OUTPUT Lhs.1 'this', Lhs.2 'n', Rhs.1 'result'
  ...

Notice that the final tuple count (from this disjunction) doesn't change.

@MathiasVP MathiasVP added the C++ label Jan 13, 2022
@MathiasVP MathiasVP requested a review from a team as a code owner January 13, 2022 13:23
aschackmull
aschackmull previously approved these changes Jan 13, 2022
@MathiasVP MathiasVP force-pushed the fix-join-order-in-get-conversion-type branch from 843b0d1 to 6148af4 Compare January 13, 2022 13:29
@MathiasVP
Copy link
Contributor Author

Thanks for approving it so efficiently, @aschackmull! I found a copy/paste error just after you approved it, though :( I force-pushed it away, but I had written:

isPointerTypeWithBase(this.getNonDefaultCharType(), result.(PointerType).getBaseType())

where I meant to write

isPointerTypeWithBase(this.getNonDefaultCharType(), result)

redsun82
redsun82 previously approved these changes Jan 13, 2022
Copy link
Contributor

@redsun82 redsun82 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Let's see if DCA agrees 🙂

Copy link
Contributor

@redsun82 redsun82 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Still LGTM! 🙂

@MathiasVP MathiasVP merged commit 78642aa into github:main Jan 17, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants