From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/10444 Path: news.gmane.org!.POSTED!not-for-mail From: Timo Teras Newsgroups: gmane.linux.lib.musl.general Subject: Re: incompatibility between libtheora/mmx and musl ? Date: Wed, 14 Sep 2016 17:31:37 +0300 Message-ID: <20160914173138.034eab55@vostro> References: <20160913180649.GN16436@example.net> <20160913204304.GY15995@brightrain.aerifal.cx> <20160914103253.GO16436@example.net> <20160914112400.GS1280@port70.net> <20160914140450.GQ16436@example.net> <20160914142842.GZ15995@brightrain.aerifal.cx> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Trace: blaine.gmane.org 1473863531 17959 195.159.176.226 (14 Sep 2016 14:32:11 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 14 Sep 2016 14:32:11 +0000 (UTC) Cc: musl@lists.openwall.com To: Rich Felker Original-X-From: musl-return-10457-gllmg-musl=m.gmane.org@lists.openwall.com Wed Sep 14 16:32:07 2016 Return-path: Envelope-to: gllmg-musl@m.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by blaine.gmane.org with smtp (Exim 4.84_2) (envelope-from ) id 1bkBEB-0003E8-TO for gllmg-musl@m.gmane.org; Wed, 14 Sep 2016 16:31:55 +0200 Original-Received: (qmail 14055 invoked by uid 550); 14 Sep 2016 14:31:56 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Original-Received: (qmail 14034 invoked from network); 14 Sep 2016 14:31:55 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=GT0lcCi0JROn1ryM+yOOCF0cuFDXWdF7etmgE6vT/Js=; b=DTSOc0hY5YyEltmbJ6fW9rS+cZ1p18QTOqtAOExpnlIIzwLaKTmPf/4kwXGUlVqZRo cUru0nS3RHG9KZMJkOy8aDsHzaYN9JQnr39f/hqftj2bEHwdDExHAZ2cYlnewSqw9+k4 ZtQwgAQbD1Iy4qvFpYvENEEa+ozo3hOUTafLBKR9OZVBHEPPiukZ4qi0A3JRQCHUHyTj TvX1e1zFWNG3tnop3JuegYEuVm1EaVAIThlk7kK2d13KEbZwFzNtMnggTYwUo1MIviWw J5D+UYKmxtydlnPyqYpc82+SZcO7Snpt7bvYcZY/A/GveHkfr+L9uQ7o14rozQv5vwXx Xd+g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=GT0lcCi0JROn1ryM+yOOCF0cuFDXWdF7etmgE6vT/Js=; b=TgRFwrHjmhn0uCNlZTlOwYCLPmlu/hgQkiupgwkqab/IeuShbZ6AHP/gWZpGkiGCv3 p2eHKv0WmF1Nyiiw3vUrC5g29UA9gJO1uhE0FiW8UIfJ9/c66owXksX/51g43ssIKUyI FcbHlDWhjVaDR5a/mccbZ6zPJcINvU4o4TB88DGo2sIHjtgSvSekswwifw7Jc/FkF1Le 0CxmxNVHq8/g4T8cqnyVdVGOl+5SMqbmfird8MqUTMT7HyYEAyyhvGEVLBxyb1OROY3Z ZBAUm2OB5YqwJ3pAOYrqfgmeaHeUgyHq0bSqoVDXBr9CU9orc2uL2V3l3meIYr7iTNkl GGmA== X-Gm-Message-State: AE9vXwPgLN9kSyflnzzMMzviRUFv8Qg32OawVAlveeiRJ+XzYSFeXc7+4qGdz2znLXcKjQ== X-Received: by 10.46.69.11 with SMTP id s11mr1208062lja.7.1473863504270; Wed, 14 Sep 2016 07:31:44 -0700 (PDT) Original-Sender: =?UTF-8?Q?Timo_Ter=C3=A4s?= In-Reply-To: <20160914142842.GZ15995@brightrain.aerifal.cx> X-Mailer: Claws Mail 3.13.2 (GTK+ 2.24.28; x86_64-alpine-linux-musl) Xref: news.gmane.org gmane.linux.lib.musl.general:10444 Archived-At: On Wed, 14 Sep 2016 10:28:42 -0400 Rich Felker wrote: > > > there can be some call abi issue (register clobbering, > > > stack alignment,..) because of the asm, but that's hard > > > to check. > > > > Is musl in any way special compared to glibc/uclibc in its register > > usage? > > Not in principle; this is mandated by the ABI. But it's possible that > their violation of ABI contracts is visible with some implementations > but not others. For example if they're calling malloc from code that's > using asm it's possible that they assume the floating point registers > (or mmx state) are call-saved rather than call-clobbered. This is an > invalid assumption that might happen to actively break on musl but not > glibc. IIRC you need some special instructions to switch between x87 > and (original) mmx usage; perhaps they're missing this somewhere. Also, since it's Alpine (mentioned in first there with the bug report), we compile everything PIE. So on x86 ebx is reserved and should not be clobbered.