assembler errors when bootstrapping with #pragma optimize "0"

Martin Sebor msebor@gmail.com
Fri Oct 22 00:06:10 GMT 2021


I put #pragma GCC optimize "0" at the top of gimplify.c to help
me debug something in a bootstrapped compiler.  The file failed
to compile with many assembler errors like this:

/tmp/ccL9zcXD.s: Assembler messages:
/tmp/ccL9zcXD.s:9: Error: CFI instruction used without previous 
.cfi_startproc

I've done this before and had no problems.  Is this supposed to
work or was I just lucky when it did before?

Thanks
Martin

PS The top of gimplify.s is below (this is with no other code
changes to any files except the #pragma).

	.file	"gimplify.c"
	.text
	.local	_ZZ20gimplify_va_arg_exprPP9tree_nodePP6gimpleS4_E9gave_help
	.comm	_ZZ20gimplify_va_arg_exprPP9tree_nodePP6gimpleS4_E9gave_help,1,1
	.p2align 4
	.type	_ZL19handled_component_pPK9tree_node, @function
_ZL19handled_component_pPK9tree_node:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register 6
	movq	%rdi, -8(%rbp)
	movq	-8(%rbp), %rax
	movzwl	(%rax), %eax
	movzwl	%ax, %eax
	subl	$47, %eax
	cmpl	$6, %eax
	ja	.L2
	movl	$1, %eax
	jmp	.L3
.L2:
	movl	$0, %eax
.L3:
	popq	%rbp
	.cfi_def_cfa 7, 8
	ret


More information about the Gcc mailing list