This is an archive of the discontinued LLVM Phabricator instance.

[mips] Range check simm10
ClosedPublic

Authored by dsanders on Mar 14 2016, 8:28 AM.

Diff Detail

Event Timeline

dsanders updated this revision to Diff 50599.Mar 14 2016, 8:28 AM
dsanders retitled this revision from to [mips] Range check simm10.
dsanders updated this object.
dsanders added a reviewer: vkalintiris.
dsanders added a subscriber: llvm-commits.
vkalintiris added inline comments.Mar 21 2016, 7:48 AM
test/MC/Mips/mips64r2/invalid.s
65–70 ↗(On Diff #50599)

These new instructions are Octeon-specific but the assembler doesn't report any error. Shouldn't we add them in MC/Mips/cnmips/invalid.s, instead?

dsanders added inline comments.Mar 22 2016, 10:22 AM
test/MC/Mips/mips64r2/invalid.s
65–70 ↗(On Diff #50599)

These new instructions are Octeon-specific ...

Well spotted. I've posted another patch to make this much more obvious and fix a few PredicateControl usage mistakes at the same time.

... but the assembler doesn't report any error.

This is because we can only report one error and the out-of-range immediate has priority. If the immediate were in range then it would have emitted an error about the lack of cnMIPS.

Shouldn't we add them in MC/Mips/cnmips/invalid.s, instead?

I agree. I'll post an updated patch shortly.

dsanders updated this revision to Diff 51525.Mar 24 2016, 2:58 AM

Move the cnMIPS tests to the cnMIPS files.

vkalintiris accepted this revision.Mar 24 2016, 3:16 AM
vkalintiris edited edge metadata.

LGTM with D18354 committed first.

This revision is now accepted and ready to land.Mar 24 2016, 3:16 AM
dsanders closed this revision.Mar 24 2016, 6:32 AM
This revision was automatically updated to reflect the committed changes.