linux/arch/mips/lib/libgcc.h
<<
>>
Prefs
   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