Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
R
riscv-gcc-1
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lvzhengyang
riscv-gcc-1
Commits
87c06c0d
Commit
87c06c0d
authored
Mar 27, 1992
by
Richard Stallman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Initial revision
From-SVN: r597
parent
e2f08830
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
161 additions
and
0 deletions
+161
-0
gcc/config/m68k/dpx2.h
+161
-0
No files found.
gcc/config/m68k/dpx2.h
0 → 100644
View file @
87c06c0d
/*
* dpx2.h - Bull DPX/2 200 and 300 systems (m68k, SysVr3)
*
* $Id: dpx2.h,v 1.1 1992/03/11 04:21:30 sjg Exp sjg $
*/
#include "m68k.h"
#undef SELECT_RTX_SECTION
#include "svr3.h"
/* See m68k.h. 7 means 68020 with 68881.
* We really have 68030, but this will get us going.
*/
#ifndef TARGET_DEFAULT
#define TARGET_DEFAULT 7
#endif
#define OBJECT_FORMAT_COFF
#define NO_SYS_SIGLIST
#ifdef CPP_PREDEFINES
#undef CPP_PREDEFINES
#endif
/*
* define all the things the compiler should
*/
#ifdef ncl_mr
# define CPP_PREDEFINES "-Dunix -Dbull -DDPX2 -DSVR3 -Dmc68000 -Dmc68020 -Dncl_mr=1"
#else
# ifdef ncl_el
# define CPP_PREDEFINES "-Dunix -Dbull -DDPX2 -DSVR3 -Dmc68000 -Dmc68020 -Dncl_el"
# else
# define CPP_PREDEFINES "-Dunix -Dbull -DDPX2 -DSVR3 -Dmc68000 -Dmc68020"
# endif
#endif
#undef CPP_SPEC
/*
* use -ansi to imply POSIX and XOPEN and BULL source
* no -ansi implies _SYSV
*/
# define CPP_SPEC "%{ansi:-D_POSIX_SOURCE -D_XOPEN_SOURCE -D_BULL_SOURCE}\
%{!ansi:-D_SYSV}"
#undef ASM_LONG
#define ASM_LONG "\t.long"
#define HAVE_ATEXIT
#undef DO_GLOBAL_CTORS_BODY
/* don't use svr3.h version */
#undef DO_GLOBAL_DTORS_BODY
#if 0 /* def DEBUG */
/*
* find out where cc1 aborts
*/
#define abort() do { fprintf(stderr, "%s: aborting at line %d\n", \
__FILE__, __LINE__); \
kill(getpid(), 6); } while (0)
#endif
/*
* svr3.h says to use BSS_SECTION_FUNCTION
* but no one appears to, and there is
* no definition for m68k.
*/
#ifndef BSS_SECTION_FUNCTION
# undef EXTRA_SECTION_FUNCTIONS
# define EXTRA_SECTION_FUNCTIONS \
CONST_SECTION_FUNCTION \
INIT_SECTION_FUNCTION \
FINI_SECTION_FUNCTION
#endif
#ifndef USE_GAS
/*
* handle the native assembler.
* this does NOT yet work, there is much left to do.
* use GAS for now...
*/
#undef ASM_OUTPUT_SOURCE_FILENAME
#define ASM_OUTPUT_SOURCE_FILENAME(FILE, NA) \
do { fprintf ((FILE), "\t.file\t'%s'\n", (NA)); } while (0)
#undef LOCAL_LABEL_PREFIX
#define LOCAL_LABEL_PREFIX "."
/*
* we don't seem to support any of:
* .globl
* .even
* .align
* .ascii
*/
#undef ASM_GLOBALIZE_LABEL
#define ASM_GLOBALIZE_LABEL(FILE,NAME) while (0)
#undef ASM_OUTPUT_ALIGN
#define ASM_OUTPUT_ALIGN(asm_out_file, align) while (0)
#define STRING_LIMIT (0)
#undef ASM_APP_ON
#define ASM_APP_ON ""
#undef ASM_APP_OFF
#define ASM_APP_OFF ""
/*
* dc.b 'hello, world!'
* dc.b 10,0
* is how we have to output "hello, world!\n"
*/
#undef ASM_OUTPUT_ASCII
#define ASM_OUTPUT_ASCII(asm_out_file, p, thissize) \
do { register int i, c, f=0; \
for (i = 0; i < thissize; i++) { \
c = p[i]; \
if (c == '\'' || c < ' ' || c > 127) { \
switch(f) { \
case 0:
/* need to output dc.b etc */
\
fprintf(asm_out_file, "\tdc.b %d", c); \
f=1; \
break; \
case 1: \
fprintf(asm_out_file, ",%d", c); \
break; \
default: \
/* close a string */
\
fprintf(asm_out_file, "'\n\tdc.b %d", c); \
f=1; \
break; \
} \
} else { \
switch(f) { \
case 0: \
fprintf(asm_out_file, "\tdc.b '%c", c); \
f=2; \
break; \
case 2: \
fprintf(asm_out_file, "%c", c); \
break; \
default: \
fprintf(asm_out_file, "\n\tdc.b '%c", c); \
f=2; \
break; \
} \
} \
} \
if (f==2) \
putc('\'', asm_out_file); \
putc('\n', asm_out_file); } while (0)
/* This is how to output an insn to push a register on the stack.
It need not be very fast code. */
#undef ASM_OUTPUT_REG_PUSH
#define ASM_OUTPUT_REG_PUSH(FILE,REGNO) \
fprintf (FILE, "\tmove.l %s,-(sp)\n", reg_names[REGNO])
/* This is how to output an insn to pop a register from the stack.
It need not be very fast code. */
#undef ASM_OUTPUT_REG_POP
#define ASM_OUTPUT_REG_POP(FILE,REGNO) \
fprintf (FILE, "\tmove.l (sp)+,%s\n", reg_names[REGNO])
#endif
/* ! use gas */
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment