This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug libc/12123] SIGBUS on strstr_sse42 due to bad alignment
- From: "throctukes at gmail dot com" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sources dot redhat dot com
- Date: Fri, 29 Oct 2010 15:43:39 +0000
- Subject: [Bug libc/12123] SIGBUS on strstr_sse42 due to bad alignment
- Auto-submitted: auto-generated
- References: <bug-12123-131@http.sourceware.org/bugzilla/>
http://sourceware.org/bugzilla/show_bug.cgi?id=12123
--- Comment #21 from throctukes at gmail dot com 2010-10-29 15:43:28 UTC ---
(In reply to comment #18)
> We use gcc 4.3 to build glibc in i686-linux, and we use gcc 4.5.1 to build
> x86_64-linux, so that may make a difference, and maybe that's why we only saw
> the problem in i686-linux. What compiler are you using?
> With gcc 4.5.1, strstr_sse42 starts this way:
> 130: 48 89 5c 24 d0 mov %rbx,-0x30(%rsp)
> 135: 4c 89 6c 24 e8 mov %r13,-0x18(%rsp)
> 13a: 48 89 fb mov %rdi,%rbx
> 13d: 48 89 6c 24 d8 mov %rbp,-0x28(%rsp)
> 142: 4c 89 64 24 e0 mov %r12,-0x20(%rsp)
> 147: 49 89 f5 mov %rsi,%r13
> 14a: 4c 89 74 24 f0 mov %r14,-0x10(%rsp)
> 14f: 4c 89 7c 24 f8 mov %r15,-0x8(%rsp)
> 154: 48 83 ec 58 sub $0x58,%rsp
>
> So it expects stacks 4w aligned, the default in gcc. If you have problems in
> x86_64 about bad alignment on strstr_sse42, you should revise that your code
> maintains the stack aligned 4w.
I've been using the libc6 from the Ubuntu repositories, but even recompiling
glibc from sources with gcc 4.4 and 4.5 makes no difference.
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.