From owner-freebsd-bugs@FreeBSD.ORG Fri Feb 6 22:32:27 2015 Return-Path: Delivered-To: freebsd-bugs@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BB40E79 for ; Fri, 6 Feb 2015 22:32:27 +0000 (UTC) Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2001:1900:2254:206a::16:76]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A1FEB90C for ; Fri, 6 Feb 2015 22:32:27 +0000 (UTC) Received: from bugs.freebsd.org ([127.0.1.118]) by kenobi.freebsd.org (8.14.9/8.14.9) with ESMTP id t16MWRna091580 for ; Fri, 6 Feb 2015 22:32:27 GMT (envelope-from bugzilla-noreply@freebsd.org) From: bugzilla-noreply@freebsd.org To: freebsd-bugs@FreeBSD.org Subject: [Bug 135718] [patch] enhance qsort(3) to properly handle 32-bit aligned data on 64-bit systems Date: Fri, 06 Feb 2015 22:32:27 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Base System X-Bugzilla-Component: bin X-Bugzilla-Version: unspecified X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Only Me X-Bugzilla-Who: ache@FreeBSD.org X-Bugzilla-Status: In Progress X-Bugzilla-Priority: Normal X-Bugzilla-Assigned-To: freebsd-bugs@FreeBSD.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 06 Feb 2015 22:32:27 -0000 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=135718 --- Comment #5 from Andrey A. Chernov --- And the bug: on amd64 the patch always copy by 32bits instead of 64bits due to replacement of swapcode(long, a, b, n) by swapcode(int, a, b, n). It is possible that copy by 32bits is faster on amd64 (I don't check), but it is very architecture dependent and must be ifdefed. If we going to be architecture dependent and optimize just i386 and amd64 cases, the code should use int32_t and int64_t and use proper architecture-related ifdefs. -- You are receiving this mail because: You are the assignee for the bug.