https://sourceware.org/bugzilla/show_bug.cgi?id=34026

--- Comment #7 from Jens Remus <jremus at linux dot ibm.com> ---
(In reply to Alan Modra from comment #4)
> Incidentally, many of the functions called from sframe_do_cfi_insn have
>   gas_assert (cur_fre);
> It seems likely they can trigger on user input.  Well, I know one can from a
> recent oss-fuzz report.

Thanks for reporting!  What do you suggest?  I fix the below issue triggering
the assertion and we leave the assertions in place?  Instead error out with
some "unexpected CFI" message?


(In reply to Alan Modra from comment #5)
> Created attachment 16698 [details]
> horrible source that triggers the assert

I was able to reduce the assembler source to trigger the assertion to the
following:

$ cat pr34026-2_simplified.s
.cfi_sections .sframe
.cfi_startproc simple
.cfi_offset 0,0

$ ./as-new pr34026-2_simplified.s
pr34026-2_simplified.s: Assembler messages:
pr34026-2_simplified.s: Error: open CFI at the end of file; missing
.cfi_endproc directive
pr34026-2_simplified.s: Internal error in sframe_xlate_do_offset at
../../gas/gen-sframe.c:1400.
Please report this bug.


Btw. the multiple "open CFI at the end of file; missing .cfi_endproc directive"
errors were confusing.  They originate from having multiple sections with open
CFI:

$ cat pr34026-open-cfi-at-eof.s
.cfi_sections .sframe
.section a
.cfi_startproc
.section b
.cfi_startproc

$ ./as-new pr34026-2_open-cfi-at-eof.s
pr34026-2_open-cfi-at-eof.s: Assembler messages:
pr34026-2_open-cfi-at-eof.s: Error: open CFI at the end of file; missing
.cfi_endproc directive
pr34026-2_open-cfi-at-eof.s: Error: open CFI at the end of file; missing
.cfi_endproc directive

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Reply via email to