1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef __ASM_LIBGCC_H 3#define __ASM_LIBGCC_H 4 5#include <asm/byteorder.h> 6 7typedef int word_type __attribute__ ((mode (__word__))); 8 9#ifdef __BIG_ENDIAN 10struct DWstruct { 11 int high, low; 12}; 13 14struct TWstruct { 15 long long high, low; 16}; 17#elif defined(__LITTLE_ENDIAN) 18struct DWstruct { 19 int low, high; 20}; 21 22struct TWstruct { 23 long long low, high; 24}; 25#else 26#error I feel sick. 27#endif 28 29typedef union { 30 struct DWstruct s; 31 long long ll; 32} DWunion; 33 34#if defined(CONFIG_64BIT) && defined(CONFIG_CPU_MIPSR6) 35typedef int ti_type __attribute__((mode(TI))); 36 37typedef union { 38 struct TWstruct s; 39 ti_type ti; 40} TWunion; 41#endif 42 43#endif /* __ASM_LIBGCC_H */ 44