https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93492
H.J. Lu <hjl.tools at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |iains at gcc dot gnu.org,
| |mikestump at comcast dot net
Depends on| |95655
--- Comment #21 from H.J. Lu <hjl.tools at gmail dot com> ---
(In reply to Rainer Orth from comment #20)
> Several of the new testcases FAIL in various configurations:
>
> * On i386-pc-solaris2.11 with the native assembler (both 32 and 64-bit):
>
> +FAIL: gcc.target/i386/pr93492-2.c scan-assembler
> \\t.cfi_startproc\\n\\tendbr(32|64)\\n.*.LPFE1:\\n\\tnop\\n\\tret\\n
> +FAIL: gcc.target/i386/pr93492-3.c scan-assembler
> \\t.cfi_startproc\\n\\tendbr(32|64)\\n.*.LPFE1:\\n\\tnop\\n1:
> \\tcall\\t__fentry__\\n\\tret\\n
> +FAIL: gcc.target/i386/pr93492-4.c scan-assembler
> \\t.cfi_startproc\\n.*.LPFE1:\\n\\tnop\\n\\tret\\n
> +FAIL: gcc.target/i386/pr93492-5.c scan-assembler
> \\t.cfi_startproc\\n.*.LPFE1:\\n\\tnop\\n1:\\tcall\\t__fentry__\\n\\tret\\n
>
> Please note that while /bin/as *does* accept .cfi_* directives, gcc doesn't
> emit them because there are bugs in as' support.
>
> * On i386-pc-solaris2.11 with gas (both 32 and 64-bit):
>
> +FAIL: gcc.target/i386/pr93492-3.c scan-assembler
> \\t.cfi_startproc\\n\\tendbr(32|64)\\n.*.LPFE1:\\n\\tnop\\n1:
> \\tcall\\t__fentry__\\n\\tret\\n
> +FAIL: gcc.target/i386/pr93492-5.c scan-assembler
> \\t.cfi_startproc\\n.*.LPFE1:\\n\\tnop\\n1:\\tcall\\t__fentry__\\n\\tret\\n
>
> E.g. the 32-bit pr93492-3.s has
>
> .cfi_startproc
> .data
> .align 4
> .LP0:
> .long 0
> .text
> endbr32
> .section __patchable_function_entries,"aw",@progbits
> .align 4
> .long .LPFE1
> .text
> .LPFE1:
> nop
> movl $.LP0,%edx
> 1: call __fentry__
> pushl %ebp
> .cfi_def_cfa_offset 8
> .cfi_offset 5, -8
> movl %esp, %ebp
> .cfi_def_cfa_register 5
> popl %ebp
> .cfi_restore 5
> .cfi_def_cfa 4, 4
> ret
This is PR 95655.
> * On x86_64-apple-darwin11.4.2 (both 32 and 64-bit):
>
> FAIL: gcc.target/i386/pr93492-1.c check-function-bodies f10_endbr
> FAIL: gcc.target/i386/pr93492-1.c check-function-bodies f10_none
> FAIL: gcc.target/i386/pr93492-1.c check-function-bodies f11_endbr
> FAIL: gcc.target/i386/pr93492-1.c check-function-bodies f11_none
> FAIL: gcc.target/i386/pr93492-1.c check-function-bodies f21_endbr
> FAIL: gcc.target/i386/pr93492-1.c check-function-bodies f21_none
> FAIL: gcc.target/i386/pr93492-2.c scan-assembler
> \\t.cfi_startproc\\n\\tendbr(32|64)\\n.*.LPFE1:\\n\\tnop\\n\\tret\\n
> FAIL: gcc.target/i386/pr93492-4.c scan-assembler
> \\t.cfi_startproc\\n.*.LPFE1:\\n\\tnop\\n\\tret\\n
CC darwin maintainers.
Referenced Bugs:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95655
[Bug 95655] -mfentry -pg generates extra push/pop