]> gcc.gnu.org Git - gcc.git/blame - gcc/config/ia64/linux.h
lex.c (java_lineterminator): Don't recognize \r after \n.
[gcc.git] / gcc / config / ia64 / linux.h
CommitLineData
c65ebc55
JW
1/* Definitions for ia64-linux target. */
2#include "ia64/ia64.h"
3#include <linux.h>
4#include "sysv4.h"
5
6/* ??? Maybe this should be in sysv4.h? */
7#define CPP_PREDEFINES "\
8-D__ia64 -D__ia64__ -D__linux -D__linux__ -D_LONGLONG -Dlinux -Dunix \
9-D__LP64__ -D__ELF__ -Asystem(linux) -Acpu(ia64) -Amachine(ia64)"
10
11/* ??? ia64 gas doesn't accept standard svr4 assembler options? */
12#undef ASM_SPEC
3b572406 13#define ASM_SPEC "-x"
c65ebc55
JW
14
15/* Define this for shared library support because it isn't in the main
16 linux.h file. */
17
18#undef LINK_SPEC
19#define LINK_SPEC "\
20 %{shared:-shared} \
21 %{!shared: \
22 %{!static: \
23 %{rdynamic:-export-dynamic} \
f0b0e152 24 %{!dynamic-linker:-dynamic-linker /lib/ld-linux-ia64.so.1}} \
c65ebc55
JW
25 %{static:-static}}"
26
27
28#define DONT_USE_BUILTIN_SETJMP
29#define JMP_BUF_SIZE (8 * 76)
59da9a7d
JW
30
31/* Output any profiling code before the prologue. */
32
33#undef PROFILE_BEFORE_PROLOGUE
34#define PROFILE_BEFORE_PROLOGUE 1
35
36/* A C statement or compound statement to output to FILE some assembler code to
37 call the profiling subroutine `mcount'. */
38
39#undef FUNCTION_PROFILER
40#define FUNCTION_PROFILER(FILE, LABELNO) \
41do { \
42 char buf[20]; \
43 ASM_GENERATE_INTERNAL_LABEL (buf, "LP", LABELNO); \
44 fputs ("\talloc out0 = ar.pfs, 8, 0, 4, 0\n", FILE); \
45 if (TARGET_AUTO_PIC) \
46 fputs ("\tmovl out3 = @gprel(", FILE); \
47 else \
48 fputs ("\taddl out3 = @ltoff(", FILE); \
49 assemble_name (FILE, buf); \
50 if (TARGET_AUTO_PIC) \
51 fputs (");;\n", FILE); \
52 else \
53 fputs ("), r1;;\n", FILE); \
54 fputs ("\tmov out1 = r1\n", FILE); \
55 fputs ("\tmov out2 = b0\n", FILE); \
56 fputs ("\tbr.call.sptk.many b0 = _mcount;;\n", FILE); \
57} while (0)
58
c65ebc55 59/* End of linux.h */
This page took 0.111545 seconds and 5 git commands to generate.