This is an archive of the discontinued LLVM Phabricator instance.

[SelectionDAG] Update check in createOperands to reflect max() is a valid value.
ClosedPublic

Authored by fhahn on Jan 15 2019, 11:58 AM.

Details

Summary

The value returned by max() is the last valid value, adjust the
comparison accordingly.

The code added in D55073 creates TokenFactors with max() operands.

Diff Detail

Repository
rL LLVM

Event Timeline

fhahn created this revision.Jan 15 2019, 11:58 AM

Can any test case be added here, or would it be just too big to realistically test?

Can any test case be added here, or would it be just too big to realistically test?

I have a file triggering the assert, but I think the cases where it is triggered require 64k load/stores in a single BB. But maybe there is another way to construct a node with more than 64k operands?

aemerson accepted this revision.Jan 15 2019, 1:08 PM

Can any test case be added here, or would it be just too big to realistically test?

I have a file triggering the assert, but I think the cases where it is triggered require 64k load/stores in a single BB. But maybe there is another way to construct a node with more than 64k operands?

I couldn't find a way to generate the test myself without writing a huge one. LGTM.

This revision is now accepted and ready to land.Jan 15 2019, 1:08 PM
This revision was automatically updated to reflect the committed changes.