This is an archive of the discontinued LLVM Phabricator instance.

[mips] [IAS] Improve warning for using AT with .set noat.
ClosedPublic

Authored by tomatabacu on Mar 20 2015, 5:11 AM.

Details

Summary

Changed the warning message to show the current value of $at, similar to what clang does for typedef's, and renamed warnIfAssemblerTemporary to a more descriptive name.

I also changed the type of variables which store registers from int to unsigned, updated the relevant test and tried to make the related comments clearer.

Diff Detail

Event Timeline

tomatabacu updated this revision to Diff 22340.Mar 20 2015, 5:11 AM
tomatabacu retitled this revision from to [mips] [IAS] Improve warning for using AT with .set noat..
tomatabacu updated this object.
tomatabacu edited the test plan for this revision. (Show Details)
tomatabacu added a reviewer: dsanders.
tomatabacu added a subscriber: Unknown Object (MLST).
tomatabacu updated this revision to Diff 22342.Mar 20 2015, 5:46 AM

Rebased on top of D8478 and D8480.

Comments are inline.

test/MC/Mips/set-at-directive-explicit-at.s
30

I'm not sure if this CHECK is necessary.

54

I'm not sure if this CHECK is necessary, either.

dsanders accepted this revision.Mar 24 2015, 4:18 AM
dsanders edited edge metadata.

LGTM with a couple nits.

One other nit is the use of 'aka $n'. I'm not sure we should use 'aka' since $at can be reassigned as we process the assembly. Maybe 'currently $n' instead?

test/MC/Mips/set-at-directive-explicit-at.s
30

It is necessary but it's slightly wrong at the moment. It used to check that warnings weren't emitted by lines 34, 37, and 43. You need to change '$1' to '${{[0-9]+}'

54

I agree

This revision is now accepted and ready to land.Mar 24 2015, 4:18 AM
tomatabacu updated this revision to Diff 23413.EditedApr 8 2015, 6:26 AM
tomatabacu edited edge metadata.

Changed 'aka' to 'currently'.
Fixed warning checks in the test.
Rebased on the updated D8478 and D8480.

Because of the updates to D8478 and D8480, I thought it would be better to also
rename warnIfRegIsAT to warnIfRegIndexIsAT and rename RegNo back to RegIndex.
These last 2 changes will need an additional LGTM.

tomatabacu updated this object.Apr 8 2015, 6:28 AM

LGTM. Thanks

tomatabacu updated this object.Apr 27 2015, 5:54 AM
tomatabacu closed this revision.Apr 27 2015, 7:08 AM