This is an archive of the discontinued LLVM Phabricator instance.

Fix uninitialized read in ARM's PrintAsmOperand
ClosedPublic

Authored by thopre on Jul 30 2018, 6:55 AM.

Details

Summary

Fix read of uninitialized RC variable in ARM's PrintAsmOperand when
hasRegClassConstraint returns false. This was causing
inline-asm-operand-implicit-cast test to fail in r338206.

Diff Detail

Repository
rL LLVM

Event Timeline

thopre created this revision.Jul 30 2018, 6:55 AM
chill added a subscriber: chill.Jul 30 2018, 7:33 AM
chill added inline comments.
lib/Target/ARM/ARMAsmPrinter.cpp
379 ↗(On Diff #157953)

Is this doing the right thing for big-endian? (re: https://reviews.llvm.org/D49778)
(arguably a slightly separate issue, indeed).

thopre added inline comments.Jul 30 2018, 7:41 AM
lib/Target/ARM/ARMAsmPrinter.cpp
379 ↗(On Diff #157953)

Apparently not but this is an independent problem (ie. the patch does not touch this) and would be fixed by Jackson's patch. Do you mean that Jackson's patch should go in first and be marked as a dependency of this one?

chill added inline comments.Jul 30 2018, 8:13 AM
lib/Target/ARM/ARMAsmPrinter.cpp
379 ↗(On Diff #157953)

Well, duh, apparently I didn't pay enough attention to notice these patches change the same part of the code. It would be nice to sequence them, as they would probably create a merge conflict?

chill accepted this revision.Jul 30 2018, 9:30 AM

LGTM.

This revision is now accepted and ready to land.Jul 30 2018, 9:30 AM
This revision was automatically updated to reflect the committed changes.