Page MenuHomePhabricator

[mips] Add tests for bitwise binary and integer arithmetic operators.

Authored by vkalintiris on Jan 22 2015, 5:06 AM.

Diff Detail


Event Timeline

vkalintiris retitled this revision from to [mips] Add tests for bitwise binary and integer arithmetic operators..
vkalintiris updated this object.
vkalintiris edited the test plan for this revision. (Show Details)
vkalintiris added a reviewer: dsanders.
vkalintiris added a subscriber: Unknown Object (MLST).
dsanders accepted this revision.Jan 24 2015, 5:21 AM
dsanders edited edge metadata.

Thanks for doing this. It seems that we have a lot of optimization deficiencies on basic operations that we need to sort out. In particular, we emit a lot of unnecessary sign/zero extends. I pointed out a few but stopped after I realized how often it occurred.

LGTM with the nits below fixed. If you can also annotate the redundant instructions with FIXME's that would be appreciated but there's a lot so I'm not going to make that a requirement.

31 ↗(On Diff #18609)

all-label should be ALL-LABEL. Likewise below

43 ↗(On Diff #18609)

The andi's are redundant in this file. Please add a FIXME about this

120 ↗(On Diff #18609)

This should be redundant too. Please add a FIXME

43–52 ↗(On Diff #18609)

It would be good to eliminate the excess instructions by changing the signext's to zeroext.
We'll have other tests for sign/zero extension.

Likewise below

57 ↗(On Diff #18609)

This is redundant.

27–28 ↗(On Diff #18609)

These should be redundant since div is signed.
Likewise below

20 ↗(On Diff #18609)

It would be good to eliminate the sign extends by switching to zeroext.

This revision is now accepted and ready to land.Jan 24 2015, 5:21 AM
This revision was automatically updated to reflect the committed changes.