diff --git a/lib/csu/mips/Makefile b/lib/csu/mips/Makefile deleted file mode 100644 index 372f98d5b18e..000000000000 --- a/lib/csu/mips/Makefile +++ /dev/null @@ -1,28 +0,0 @@ -# $FreeBSD$ - -.PATH: ${.CURDIR:H}/common - -.include - -CFLAGS+= -DCRT_IRELOC_SUPPRESS - -.if ${MACHINE_ARCH:Mmips64} -ELFCLASS= 64 -.else -ELFCLASS= 32 -.endif -.if ${MACHINE_ARCH:Mmips*el} -ENDIAN= l -.else -ENDIAN= b -.endif -.if ${MACHINE_ARCH:Mmipsn32*} -SUFFIX= n32 -.else -SUFFIX= -.endif - -# binutils requires an explicit emulation for ld -r -LDFLAGS.bfd+= -Wl,-m -Wl,elf${ELFCLASS}${ENDIAN}tsmip${SUFFIX}_fbsd - -.include diff --git a/lib/csu/mips/Makefile.depend b/lib/csu/mips/Makefile.depend deleted file mode 100644 index 79506ce16b79..000000000000 --- a/lib/csu/mips/Makefile.depend +++ /dev/null @@ -1,12 +0,0 @@ -# $FreeBSD$ -# Autogenerated - do NOT edit! - -DIRDEPS = \ - include \ - - -.include - -.if ${DEP_RELDIR} == ${_DEP_RELDIR} -# local dependencies - needed for -jN in clean tree -.endif diff --git a/lib/csu/mips/crt.h b/lib/csu/mips/crt.h deleted file mode 100644 index b7bf991cf991..000000000000 --- a/lib/csu/mips/crt.h +++ /dev/null @@ -1,60 +0,0 @@ -/*- - * SPDX-License-Identifier: BSD-1-Clause - * - * Copyright 2018 Andrew Turner - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * $FreeBSD$ - */ - -#ifndef _CRT_H_ -#define _CRT_H_ - -#define HAVE_CTORS -#define CTORS_CONSTRUCTORS -#ifdef __mips_o32 -#define INIT_CALL_SEQ(func) \ - ".set push \n" \ - ".set noreorder \n" \ - "bal 1f \n" \ - "nop \n" \ - "1: \n" \ - ".cpload $ra \n" \ - "addu $sp, $sp, -8 \n" \ - ".cprestore 4 \n" \ - ".local " __STRING(func) "\n" \ - "jal " __STRING(func) "\n" \ - "nop \n" \ - "addu $sp, $sp, 8 \n" \ - ".set pop\n" -#else -#define INIT_CALL_SEQ(func) \ - ".set push \n" \ - ".set noreorder \n" \ - "bal 1f \n" \ - "nop \n" \ - "1: \n" \ - ".cpsetup $ra, $zero, 1b \n" \ - ".local " __STRING(func) "\n" \ - "jal " __STRING(func) "\n" \ - "nop \n" \ - ".set pop\n" -#endif - -#endif diff --git a/lib/csu/mips/crt1_c.c b/lib/csu/mips/crt1_c.c deleted file mode 100644 index b753f7b707bd..000000000000 --- a/lib/csu/mips/crt1_c.c +++ /dev/null @@ -1,91 +0,0 @@ -/*- - * SPDX-License-Identifier: BSD-4-Clause - * - * Copyright 1996-1998 John D. Polstra. - * All rights reserved. - * Copyright (c) 1995 Christopher G. Demetriou - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by Christopher G. Demetriou - * for the NetBSD Project. - * 4. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * $FreeBSD$ - */ - -#include -__FBSDID("$FreeBSD$"); - -#include -#include "libc_private.h" -#include "ignore_init.c" - -struct Struct_Obj_Entry; -struct ps_strings; - -#ifdef GCRT -extern void _mcleanup(void); -extern void monstartup(void *, void *); -extern int eprol; -extern int etext; -#endif - -void __start(char **, void (*)(void), struct Struct_Obj_Entry *, struct ps_strings *); - -/* The entry function. */ -void -__start(char **ap, - void (*cleanup)(void), /* from shared loader */ - struct Struct_Obj_Entry *obj __unused, /* from shared loader */ - struct ps_strings *ps_strings __unused) -{ - int argc; - char **argv; - char **env; - - argc = * (long *) ap; - argv = ap + 1; - env = ap + 2 + argc; - handle_argv(argc, argv, env); - - if (&_DYNAMIC != NULL) - atexit(cleanup); - else - _init_tls(); - -#ifdef GCRT - atexit(_mcleanup); - monstartup(&eprol, &etext); -#endif - - handle_static_init(argc, argv, env); - exit(main(argc, argv, env)); -} - -#ifdef GCRT -__asm__(".text"); -__asm__("eprol:"); -__asm__(".previous"); -#endif diff --git a/lib/csu/mips/crti.S b/lib/csu/mips/crti.S deleted file mode 100644 index 7289f0a91f47..000000000000 --- a/lib/csu/mips/crti.S +++ /dev/null @@ -1,53 +0,0 @@ -#include -__FBSDID("$FreeBSD$"); - -#ifndef __clang__ - .gnu_attribute 4, 0 -#endif - .section .init,"ax",%progbits - .align 4 - .globl _init - .type _init,%function -_init: - .set noreorder -#if defined(__ABICALLS__) && (defined(__mips_o32) || defined(__mips_o64)) - SETUP_GP -#endif - PTR_ADDU sp, sp, -CALLFRAME_SIZ - REG_S ra, CALLFRAME_RA(sp) -#if defined(__ABICALLS__) -#if defined(__mips_o32) || defined(__mips_o64) - SAVE_GP(CALLFRAME_GP) -#else - SETUP_GP64(CALLFRAME_GP, _init) -#endif -#else /* __ABICALLS__ */ -#if defined(__mips_n32) || defined(__mips_n64) - REG_S gp, CALLFRAME_GP(sp) -#endif -#endif - .set reorder - - .section .fini,"ax",%progbits - .align 4 - .globl _fini - .type _fini,%function -_fini: - .set noreorder -#if defined(__ABICALLS__) && (defined(__mips_o32) || defined(__mips_o64)) - SETUP_GP -#endif - PTR_ADDU sp, sp, -CALLFRAME_SIZ - REG_S ra, CALLFRAME_RA(sp) -#if defined(__ABICALLS__) -#if defined(__mips_o32) || defined(__mips_o64) - SAVE_GP(CALLFRAME_GP) -#else - SETUP_GP64(CALLFRAME_GP, _fini) -#endif -#else /* __ABICALLS__ */ -#if defined(__mips_n32) || defined(__mips_n64) - REG_S gp, CALLFRAME_GP(sp) -#endif -#endif - .set reorder diff --git a/lib/csu/mips/crtn.S b/lib/csu/mips/crtn.S deleted file mode 100644 index db03f6c65d20..000000000000 --- a/lib/csu/mips/crtn.S +++ /dev/null @@ -1,25 +0,0 @@ -#include -__FBSDID("$FreeBSD$"); - -#ifndef __clang__ - .gnu_attribute 4, 0 -#endif - .section .init,"ax",%progbits - .set noreorder -#if defined(__ABICALLS__) && (defined(__mips_n32) || defined(__mips_n64)) - REG_L gp, CALLFRAME_GP(sp) -#endif - REG_L ra, CALLFRAME_RA(sp) - jr ra - PTR_ADDU sp, sp, CALLFRAME_SIZ - .set reorder - - .section .fini,"ax",%progbits - .set noreorder -#if defined(__ABICALLS__) && (defined(__mips_n32) || defined(__mips_n64)) - REG_L gp, CALLFRAME_GP(sp) -#endif - REG_L ra, CALLFRAME_RA(sp) - jr ra - PTR_ADDU sp, sp, CALLFRAME_SIZ - .set reorder