From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 9CBC63858CDB; Mon, 12 Feb 2024 17:02:51 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 9CBC63858CDB DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1707757371; bh=RNIzl6S9nSrGaalmJteVbG2kMOe7VdFsOvowWgqrE5A=; h=From:To:Subject:Date:In-Reply-To:References:From; b=DYPrXso4eaAiDLA8SJSNALIu5T6Qo19OwbSwkkjWTLmq2rNyZ/rC/bVnJVdaUD9Jn ZGRNZTU6bBoHsXeAlB2Dec2AVdvlFwrgTzOrRuVSaWBodQmKzlG0nWG86cku6bSaDu ioEDzUwOgbJVn6TzLUrJ6Lh5o8/o72g2U1htl+KQ= From: "hjl.tools at gmail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/113874] GNU2 TLS descriptor calls do not follow psABI on x86_64-linux-gnu Date: Mon, 12 Feb 2024 17:02:51 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: target X-Bugzilla-Version: 13.2.1 X-Bugzilla-Keywords: ABI, wrong-code X-Bugzilla-Severity: normal X-Bugzilla-Who: hjl.tools at gmail dot com X-Bugzilla-Status: RESOLVED X-Bugzilla-Resolution: MOVED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.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: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D113874 --- Comment #28 from H.J. Lu --- (In reply to Jakub Jelinek from comment #27) > (In reply to H.J. Lu from comment #26) > > Even if I compile ia32 glibc with -march=3Dskylake, the _dl_tlsdesc_dyn= amic > > slow > > path doesn't touch XMM registers at all. >=20 > I thought Florian said it can call malloc and malloc can be user provided > and can use SSE2, 387/MMX or whatever other call clobbered registers ia32 > has. [hjl@gnu-cfl-3 elf]$ readelf -rW ld.so Relocation section '.rel.dyn' at offset 0x9f8 contains 3 entries: Offset Info Type Sym. Value Symbol's Name 00032fe0 00001a06 R_386_GLOB_DAT 00031ac0 __rseq_offset@@GLIBC_2= .35 00032fe4 00001f06 R_386_GLOB_DAT 00031ac4 __rseq_size@@GLIBC_2.35 00032b20 0000002a R_386_IRELATIVE=20=20=20=20=20=20=20 Relocation section '.relr.dyn' at offset 0xa10 contains 3 entries: 12 offsets 00031a60 00032ed0 00032ed8 00032f04 00032f08 00032f0c 00032f10 00032f14 00032f18 00032f1c 00032f20 00032f24 [hjl@gnu-cfl-3 elf]$=20 You can't use another malloc for the ld.so internal usage of malloc/calloc.=