Received: by mail.netbsd.org (Postfix, from userid 0) id 4984B63B100; Sat, 7 Aug 2010 18:01:37 +0000 (UTC) Received: from cvs.netbsd.org (cvs.NetBSD.org [IPv6:2001:4f8:3:7:2e0:81ff:fe30:95bd]) by mail.netbsd.org (Postfix) with ESMTP id 9625263B104 for ; Sat, 7 Aug 2010 18:01:35 +0000 (UTC) Received: by cvs.netbsd.org (Postfix, from userid 500) id 7F982175DD; Sat, 7 Aug 2010 18:01:35 +0000 (UTC) MIME-Version: 1.0 Content-Disposition: inline Content-Transfer-Encoding: 8bit Content-Type: text/plain Date: Sat, 7 Aug 2010 18:01:35 +0000 From: Joerg Sonnenberger Subject: CVS commit: src/lib/csu To: source-changes@NetBSD.org X-Mailer: log_accum Message-Id: <20100807180135.7F982175DD@cvs.netbsd.org> Sender: source-changes-owner@NetBSD.org List-Id: source-changes.NetBSD.org Precedence: list Reply-To: source-changes-d@NetBSD.org Mail-Reply-To: Joerg Sonnenberger Mail-Followup-To: source-changes-d@NetBSD.org Module Name: src Committed By: joerg Date: Sat Aug 7 18:01:35 UTC 2010 Modified Files: src/lib/csu: Makefile Added Files: src/lib/csu: README src/lib/csu/arch/arm: Makefile.inc crt0.S crti.S crtn.S src/lib/csu/arch/i386: Makefile.inc crt0.S crtbegin.S crtend.S crti.S crtn.S src/lib/csu/arch/m68k: Makefile.inc crt0.S crti.S crtn.S src/lib/csu/arch/sh3: Makefile.inc crt0.S crti.S crtn.S src/lib/csu/arch/sparc: Makefile.inc crt0.S crti.S crtn.S src/lib/csu/arch/vax: Makefile.inc crt0.S crti.S crtn.S src/lib/csu/arch/x86_64: Makefile.inc crt0.S crtbegin.S crtend.S crti.S crtn.S src/lib/csu/common: Makefile.inc crt0-common.c sysident.S sysident_assym.cf Removed Files: src/lib/csu/i386_elf: Makefile crt0.c dot_init.h src/lib/csu/x86_64: Makefile crt0.c dot_init.h Log Message: Switch i386 and x86_64 to the new CRT layout. The crt0.c body is shared between all platforms and a small assembler stub in crt0.S is used for setting up the proper stack and whatever else MD needs. Extract crti.S and crtn. from the old dot_init.h files. Prepare other platforms that use the 6-argument form of __(_)start for this. Rewrite the crtbegin and crtend modules in assembler to make them compiler independent. Document the interface in README. To generate a diff of this commit: cvs rdiff -u -r1.26 -r1.27 src/lib/csu/Makefile cvs rdiff -u -r0 -r1.1 src/lib/csu/README cvs rdiff -u -r0 -r1.1 src/lib/csu/arch/arm/Makefile.inc \ src/lib/csu/arch/arm/crt0.S src/lib/csu/arch/arm/crti.S \ src/lib/csu/arch/arm/crtn.S cvs rdiff -u -r0 -r1.1 src/lib/csu/arch/i386/Makefile.inc \ src/lib/csu/arch/i386/crt0.S src/lib/csu/arch/i386/crtbegin.S \ src/lib/csu/arch/i386/crtend.S src/lib/csu/arch/i386/crti.S \ src/lib/csu/arch/i386/crtn.S cvs rdiff -u -r0 -r1.1 src/lib/csu/arch/m68k/Makefile.inc \ src/lib/csu/arch/m68k/crt0.S src/lib/csu/arch/m68k/crti.S \ src/lib/csu/arch/m68k/crtn.S cvs rdiff -u -r0 -r1.1 src/lib/csu/arch/sh3/Makefile.inc \ src/lib/csu/arch/sh3/crt0.S src/lib/csu/arch/sh3/crti.S \ src/lib/csu/arch/sh3/crtn.S cvs rdiff -u -r0 -r1.1 src/lib/csu/arch/sparc/Makefile.inc \ src/lib/csu/arch/sparc/crt0.S src/lib/csu/arch/sparc/crti.S \ src/lib/csu/arch/sparc/crtn.S cvs rdiff -u -r0 -r1.1 src/lib/csu/arch/vax/Makefile.inc \ src/lib/csu/arch/vax/crt0.S src/lib/csu/arch/vax/crti.S \ src/lib/csu/arch/vax/crtn.S cvs rdiff -u -r0 -r1.1 src/lib/csu/arch/x86_64/Makefile.inc \ src/lib/csu/arch/x86_64/crt0.S src/lib/csu/arch/x86_64/crtbegin.S \ src/lib/csu/arch/x86_64/crtend.S src/lib/csu/arch/x86_64/crti.S \ src/lib/csu/arch/x86_64/crtn.S cvs rdiff -u -r0 -r1.1 src/lib/csu/common/Makefile.inc \ src/lib/csu/common/crt0-common.c src/lib/csu/common/sysident.S \ src/lib/csu/common/sysident_assym.cf cvs rdiff -u -r1.9 -r0 src/lib/csu/i386_elf/Makefile cvs rdiff -u -r1.17 -r0 src/lib/csu/i386_elf/crt0.c cvs rdiff -u -r1.8 -r0 src/lib/csu/i386_elf/dot_init.h cvs rdiff -u -r1.5 -r0 src/lib/csu/x86_64/Makefile src/lib/csu/x86_64/crt0.c cvs rdiff -u -r1.7 -r0 src/lib/csu/x86_64/dot_init.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.