[Bug middle-end/36282] [4.7/4.8/4.9 Regression] Spurious warning "asm declaration ignored due to conflict with previous rename"
aldot at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Mar 22 13:07:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36282
Bernhard Reutner-Fischer <aldot at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Known to work| |3.4.6
Summary|Spurious warning "asm |[4.7/4.8/4.9 Regression]
|declaration ignored due to |Spurious warning "asm
|conflict with previous |declaration ignored due to
|rename" |conflict with previous
| |rename"
Known to fail| |4.7.2, 4.8.0
--- Comment #5 from Bernhard Reutner-Fischer <aldot at gcc dot gnu.org> 2013-03-22 13:06:47 UTC ---
$ gcc-3.4 -fno-exceptions -fomit-frame-pointer -fno-builtin -S pr36282.c -o
ok.s
$ gcc-4.7 -fno-exceptions -fomit-frame-pointer -fno-builtin -S pr36282.c -o
nak.s
pr36282.c:3:1: warning: asm declaration ignored due to conflict with previous
rename [-Wpragmas]
$ cat pr36282.c
#pragma weak __pthread_initialize
extern void *memcpy(void *dest, const void *src, int n);
extern typeof(memcpy) memcpy asm("__GI_memcpy");
char *usr(void) {
char ch[2];
return memcpy(&ch, "x", 2);
}
$ cat ok.s
.file "pr36282.c"
.section .rodata
.LC0:
.string "x"
.text
.globl usr
.type usr, @function
usr:
.LFB2:
subq $24, %rsp
.LCFI0:
movq %rsp, %rdi
movl $2, %edx
movl $.LC0, %esi
call __GI_memcpy
addq $24, %rsp
ret
.LFE2:
.size usr, .-usr
.section .eh_frame,"a",@progbits
.Lframe1:
.long .LECIE1-.LSCIE1
.LSCIE1:
.long 0x0
.byte 0x1
.string ""
.uleb128 0x1
.sleb128 -8
.byte 0x10
.byte 0xc
.uleb128 0x7
.uleb128 0x8
.byte 0x90
.uleb128 0x1
.align 8
.LECIE1:
.LSFDE1:
.long .LEFDE1-.LASFDE1
.LASFDE1:
.long .LASFDE1-.Lframe1
.quad .LFB2
.quad .LFE2-.LFB2
.byte 0x4
.long .LCFI0-.LFB2
.byte 0xe
.uleb128 0x20
.align 8
.LEFDE1:
.section .note.GNU-stack,"",@progbits
.ident "GCC: (GNU) 3.4.6 (Debian 3.4.6-10)"
$ cat nak.s
.file "pr36282.c"
.section .rodata
.LC0:
.string "x"
.text
.globl usr
.type usr, @function
usr:
.LFB0:
.cfi_startproc
subq $24, %rsp
.cfi_def_cfa_offset 32
movq %rsp, %rax
movl $2, %edx
movl $.LC0, %esi
movq %rax, %rdi
call memcpy
addq $24, %rsp
.cfi_def_cfa_offset 8
ret
.cfi_endproc
.LFE0:
.size usr, .-usr
.ident "GCC: (Debian 4.7.2-5) 4.7.2"
.section .note.GNU-stack,"",@progbits
More information about the Gcc-bugs
mailing list