This is an archive of the discontinued LLVM Phabricator instance.

Make the unwinder build on thumbv6-m with the integrated assembler.
ClosedPublic

Authored by jroelofs on Feb 13 2015, 3:42 PM.

Details

Reviewers
compnerd
Summary

Integrated AS likes UAL, and can't handle pre-UAL garbage like thumb1 'mov r0, #0'.

Diff Detail

Event Timeline

jroelofs updated this revision to Diff 19943.Feb 13 2015, 3:42 PM
jroelofs retitled this revision from to Make the unwinder build on thumbv6-m with the integrated assembler..
jroelofs updated this object.
jroelofs edited the test plan for this revision. (Show Details)
jroelofs added a reviewer: compnerd.
jroelofs added a subscriber: Unknown Object (MLST).
compnerd added inline comments.Feb 13 2015, 3:46 PM
UnwindRegistersSave.S
310

How about doing:

#if __ARM_ARCH_ISA_THUMB == 1
  movs r0, #0
#else
  mov r0, #0
#endif

I don't see why we should have the side-effect if we can avoid it.

jroelofs updated this revision to Diff 19948.Feb 13 2015, 4:17 PM

Sounds good to me.

compnerd accepted this revision.Feb 13 2015, 5:05 PM
compnerd edited edge metadata.

LGTM with the one inline comment.

UnwindRegistersSave.S
320

A comment to indicate that the non-setting version is not available in T1 would ensure that someone coming along wouldn't try to merge this together.

This revision is now accepted and ready to land.Feb 13 2015, 5:05 PM
jroelofs closed this revision.Feb 17 2015, 8:24 AM