This is an archive of the discontinued LLVM Phabricator instance.

[MC] Allow .pushsection between .cfi_startproc/.cfi_endproc
ClosedPublic

Authored by abrachet on Jan 16 2023, 10:33 PM.

Details

Summary

This follows the behavior of gnu assemblers. This is useful when
writing inline assembly.

Diff Detail

Event Timeline

abrachet created this revision.Jan 16 2023, 10:33 PM
Herald added a project: Restricted Project. · View Herald TranscriptJan 16 2023, 10:33 PM
abrachet requested review of this revision.Jan 16 2023, 10:33 PM
Herald added a project: Restricted Project. · View Herald TranscriptJan 16 2023, 10:33 PM
abrachet updated this revision to Diff 489838.Jan 17 2023, 8:31 AM
fmayer added inline comments.Jan 17 2023, 10:42 AM
llvm/lib/MC/MCStreamer.cpp
448–449

!FrameInfoStack.empty()

abrachet updated this revision to Diff 489915.Jan 17 2023, 12:15 PM
abrachet marked an inline comment as done.

LGTM, but leaving MaskRay to take a look too.

LGTM, but leaving MaskRay to take a look too.

Thank you! I am on a trip and will be back on 2023-01-27. I'll try to read this through as quickly as I can.

MaskRay accepted this revision.Jan 29 2023, 12:29 PM

(back from a trip) Thanks!

llvm/include/llvm/MC/MCStreamer.h
217

This deserves a comment about what first/second are.

llvm/test/MC/ELF/cfi-startproc-pushsection.s
2

llvm-dwarfdump --eh-frame is slightly preferred over llvm-objdump

5

Change one .cfi_startproc to not use simple: to test more variants

This revision is now accepted and ready to land.Jan 29 2023, 12:29 PM

[MC] Allow new .cfi_startproc in new section

The subject isn't precise. Perhaps Allow .pushsection between .cfi_startproc/.cfi_endproc ?

abrachet updated this revision to Diff 493368.Jan 30 2023, 11:26 AM
abrachet marked 3 inline comments as done.
abrachet retitled this revision from [MC] Allow new .cfi_startproc in new section to [MC] Allow .pushsection between .cfi_startproc/.cfi_endproc.
This revision was landed with ongoing or failed builds.Jan 30 2023, 11:28 AM
This revision was automatically updated to reflect the committed changes.