aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/target-xtensa.c
blob: 3e5781c86d821b7ea7f5d788e5103447e1972b11 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include "symbol.h"
#include "target.h"
#include "machine.h"


static void init_xtensa(const struct target *self)
{
	wchar_ctype = &long_ctype;
}

static void predefine_xtensa(const struct target *self)
{
	predefine("__XTENSA__", 1, "1");
	predefine("__xtensa__", 1, "1");

	if (arch_big_endian)
		predefine("__XTENSA_EB__", 1, "1");
	else
		predefine("__XTENSA_EL__", 1, "1");
}

const struct target target_xtensa = {
	.mach = MACH_XTENSA,
	.bitness = ARCH_LP32,
	.big_endian = true,

	.bits_in_longdouble = 64,

	.init = init_xtensa,
	.predefine = predefine_xtensa,
};