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
59927d6b
Commit
59927d6b
authored
Feb 15, 1997
by
Richard Kenner
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
(FUNCTION_PROLOGUE): Delete.
From-SVN: r13640
parent
b345158a
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
7 additions
and
19 deletions
+7
-19
gcc/config/vax/vms.h
+7
-19
No files found.
gcc/config/vax/vms.h
View file @
59927d6b
/* Output variables, constants and external declarations, for GNU compiler.
Copyright (C) 1988, 1994, 1995, 1996 Free Software Foundation, Inc.
Copyright (C) 1988, 1994, 1995, 1996
, 1997
Free Software Foundation, Inc.
This file is part of GNU CC.
...
...
@@ -35,7 +35,6 @@ Boston, MA 02111-1307, USA. */
#undef TARGET_DEFAULT
#undef CALL_USED_REGISTERS
#undef MAYBE_VMS_FUNCTION_PROLOGUE
#undef FUNCTION_PROLOGUE
#undef STARTING_FRAME_OFFSET
/* Predefine this in CPP because VMS limits the size of command options
...
...
@@ -69,26 +68,15 @@ Boston, MA 02111-1307, USA. */
#define CALL_USED_REGISTERS {1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1}
/* We redefine this because there is a hidden variable on the stack
that VAXC$ESTABLISH uses. We just need to add four bytes to whatever
gcc thinks that we need. Similarly, we need to move all local variables
down 4 bytes in the stack. */
/* The run-time library routine VAXC$ESTABLISH (necessary when mixing
VMS exception handling and setjmp/longjmp in the same program) requires
that a hidden automatic variable at the top of the stack be reserved
for its use. We accomplish this by simply adding 4 bytes to the local
stack for all functions, and making sure that normal local variables
are 4 bytes lower on the stack then they would otherwise have been. */
#define STARTING_FRAME_OFFSET -4
#define FUNCTION_PROLOGUE(FILE, SIZE) \
{ register int regno; \
register int mask = 0; \
register int newsize = SIZE + 4; \
extern char call_used_regs[]; \
for (regno = 0; regno < FIRST_PSEUDO_REGISTER; regno++) \
if (regs_ever_live[regno] && !call_used_regs[regno]) \
mask |= 1 << regno; \
fprintf (FILE, "\t.word 0x%x\n", mask); \
MAYBE_VMS_FUNCTION_PROLOGUE(FILE) \
if (newsize >= 64) fprintf (FILE, "\tmovab %d(sp),sp\n", -newsize);\
else fprintf (FILE, "\tsubl2 $%d,sp\n", newsize); }
#define __MAIN_NAME " main("
/*
* The MAYBE_VMS_FUNCTION_PROLOGUE macro works for both gcc and g++. It
...
...
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