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
1dd4b7a8
Commit
1dd4b7a8
authored
Apr 28, 1995
by
Stan Cox
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
(FRAME_POINTER_REQUIRED) Add -momit-leaf-frame-pointer
From-SVN: r9537
parent
17a2962c
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
14 additions
and
9 deletions
+14
-9
gcc/config/m88k/m88k.h
+14
-9
No files found.
gcc/config/m88k/m88k.h
View file @
1dd4b7a8
...
@@ -115,6 +115,7 @@ extern int null_prologue ();
...
@@ -115,6 +115,7 @@ extern int null_prologue ();
extern
int
integer_ok_for_set
();
extern
int
integer_ok_for_set
();
extern
int
m88k_debugger_offset
();
extern
int
m88k_debugger_offset
();
extern
void
emit_bcnd
();
extern
void
emit_bcnd
();
extern
void
expand_block_move
();
extern
void
expand_block_move
();
extern
void
m88k_layout_frame
();
extern
void
m88k_layout_frame
();
...
@@ -197,15 +198,15 @@ extern char * reg_names[];
...
@@ -197,15 +198,15 @@ extern char * reg_names[];
Redefined in sysv4.h, and luna.h. */
Redefined in sysv4.h, and luna.h. */
#define VERSION_INFO1 "88open OCS/BCS, "
#define VERSION_INFO1 "88open OCS/BCS, "
#ifndef VERSION_INFO2
#ifndef VERSION_INFO2
#define VERSION_INFO2 "$Revision: 1.
61
$"
#define VERSION_INFO2 "$Revision: 1.
1.1.2.2.2
$"
#endif
#endif
#ifndef VERSION_STRING
#ifndef VERSION_STRING
#define VERSION_STRING version_string
#define VERSION_STRING version_string
#ifdef __STDC__
#ifdef __STDC__
#define TM_RCS_ID "@(#)" __FILE__ " $Revision: 1.
61
$ " __DATE__
#define TM_RCS_ID "@(#)" __FILE__ " $Revision: 1.
1.1.2.2.2
$ " __DATE__
#else
#else
#define TM_RCS_ID "$What$"
#define TM_RCS_ID "$What
: <@(#) m88k.h,v 1.1.1.2.2.2>
$"
#endif
/* __STDC__ */
#endif
/* __STDC__ */
#else
#else
#define TM_RCS_ID "@(#)" __FILE__ " " VERSION_INFO2 " " __DATE__
#define TM_RCS_ID "@(#)" __FILE__ " " VERSION_INFO2 " " __DATE__
...
@@ -221,6 +222,8 @@ extern char * reg_names[];
...
@@ -221,6 +222,8 @@ extern char * reg_names[];
#define MASK_88100 0x00000001
/* Target m88100 */
#define MASK_88100 0x00000001
/* Target m88100 */
#define MASK_88110 0x00000002
/* Target m88110 */
#define MASK_88110 0x00000002
/* Target m88110 */
#define MASK_88000 (MASK_88100 | MASK_88110)
#define MASK_OCS_DEBUG_INFO 0x00000004
/* Emit .tdesc info */
#define MASK_OCS_DEBUG_INFO 0x00000004
/* Emit .tdesc info */
#define MASK_OCS_FRAME_POSITION 0x00000008
/* Debug frame = CFA, not r30 */
#define MASK_OCS_FRAME_POSITION 0x00000008
/* Debug frame = CFA, not r30 */
#define MASK_SVR4 0x00000010
/* Target is AT&T System V.4 */
#define MASK_SVR4 0x00000010
/* Target is AT&T System V.4 */
...
@@ -235,10 +238,10 @@ extern char * reg_names[];
...
@@ -235,10 +238,10 @@ extern char * reg_names[];
#define MASK_WARN_PASS_STRUCT 0x00002000
/* Warn about passed structs */
#define MASK_WARN_PASS_STRUCT 0x00002000
/* Warn about passed structs */
#define MASK_OPTIMIZE_ARG_AREA 0x00004000
/* Save stack space */
#define MASK_OPTIMIZE_ARG_AREA 0x00004000
/* Save stack space */
#define MASK_NO_SERIALIZE_VOLATILE 0x00008000
/* Serialize volatile refs */
#define MASK_NO_SERIALIZE_VOLATILE 0x00008000
/* Serialize volatile refs */
#define MASK_88000 (MASK_88100 | MASK_88110)
#define MASK_EITHER_LARGE_SHIFT (MASK_TRAP_LARGE_SHIFT | \
#define MASK_EITHER_LARGE_SHIFT (MASK_TRAP_LARGE_SHIFT | \
MASK_HANDLE_LARGE_SHIFT)
MASK_HANDLE_LARGE_SHIFT)
#define MASK_OMIT_LEAF_FRAME_POINTER 0x00020000
/* omit leaf frame pointers */
#define TARGET_88100 ((target_flags & MASK_88000) == MASK_88100)
#define TARGET_88100 ((target_flags & MASK_88000) == MASK_88100)
#define TARGET_88110 ((target_flags & MASK_88000) == MASK_88110)
#define TARGET_88110 ((target_flags & MASK_88000) == MASK_88110)
...
@@ -260,6 +263,7 @@ extern char * reg_names[];
...
@@ -260,6 +263,7 @@ extern char * reg_names[];
#define TARGET_SERIALIZE_VOLATILE (!(target_flags & MASK_NO_SERIALIZE_VOLATILE))
#define TARGET_SERIALIZE_VOLATILE (!(target_flags & MASK_NO_SERIALIZE_VOLATILE))
#define TARGET_EITHER_LARGE_SHIFT (target_flags & MASK_EITHER_LARGE_SHIFT)
#define TARGET_EITHER_LARGE_SHIFT (target_flags & MASK_EITHER_LARGE_SHIFT)
#define TARGET_OMIT_LEAF_FRAME_POINTER (target_flags & MASK_OMIT_LEAF_FRAME_POINTER)
/* Redefined in sysv3.h, sysv4.h, and dgux.h. */
/* Redefined in sysv3.h, sysv4.h, and dgux.h. */
#define TARGET_DEFAULT (MASK_CHECK_ZERO_DIV)
#define TARGET_DEFAULT (MASK_CHECK_ZERO_DIV)
...
@@ -289,6 +293,7 @@ extern char * reg_names[];
...
@@ -289,6 +293,7 @@ extern char * reg_names[];
{ "no-optimize-arg-area", -MASK_OPTIMIZE_ARG_AREA }, \
{ "no-optimize-arg-area", -MASK_OPTIMIZE_ARG_AREA }, \
{ "no-serialize-volatile", MASK_NO_SERIALIZE_VOLATILE }, \
{ "no-serialize-volatile", MASK_NO_SERIALIZE_VOLATILE }, \
{ "serialize-volatile", -MASK_NO_SERIALIZE_VOLATILE }, \
{ "serialize-volatile", -MASK_NO_SERIALIZE_VOLATILE }, \
{ "omit-leaf-frame-pointer", MASK_OMIT_LEAF_FRAME_POINTER }, \
SUBTARGET_SWITCHES \
SUBTARGET_SWITCHES \
/* Default switches */
\
/* Default switches */
\
{ "", TARGET_DEFAULT }, \
{ "", TARGET_DEFAULT }, \
...
@@ -973,11 +978,10 @@ enum reg_class { NO_REGS, AP_REG, XRF_REGS, GENERAL_REGS, AGRF_REGS,
...
@@ -973,11 +978,10 @@ enum reg_class { NO_REGS, AP_REG, XRF_REGS, GENERAL_REGS, AGRF_REGS,
/* Value is the number of bytes of arguments automatically
/* Value is the number of bytes of arguments automatically
popped when returning from a subroutine call.
popped when returning from a subroutine call.
FUNDECL is the declaration node of the function (as a tree),
FUNTYPE is the data type of the function (as a tree),
FUNTYPE is the data type of the function (as a tree),
or for a library call it is an identifier node for the subroutine name.
or for a library call it is an identifier node for the subroutine name.
SIZE is the number of bytes of arguments passed on the stack. */
SIZE is the number of bytes of arguments passed on the stack. */
#define RETURN_POPS_ARGS(FUN
DECL,FUN
TYPE,SIZE) 0
#define RETURN_POPS_ARGS(FUNTYPE,SIZE) 0
/* Define how to find the value returned by a function.
/* Define how to find the value returned by a function.
VALTYPE is the data type of the value (as a tree).
VALTYPE is the data type of the value (as a tree).
...
@@ -1136,8 +1140,9 @@ enum reg_class { NO_REGS, AP_REG, XRF_REGS, GENERAL_REGS, AGRF_REGS,
...
@@ -1136,8 +1140,9 @@ enum reg_class { NO_REGS, AP_REG, XRF_REGS, GENERAL_REGS, AGRF_REGS,
may be accessed via the stack pointer) in functions that seem suitable.
may be accessed via the stack pointer) in functions that seem suitable.
This is computed in `reload', in reload1.c. */
This is computed in `reload', in reload1.c. */
#define FRAME_POINTER_REQUIRED \
#define FRAME_POINTER_REQUIRED \
(frame_pointer_needed \
(current_function_varargs \
|| (write_symbols != NO_DEBUG && !TARGET_OCS_FRAME_POSITION))
|| (TARGET_OMIT_LEAF_FRAME_POINTER && !leaf_function_p ()) \
|| (write_symbols != NO_DEBUG && !TARGET_OCS_FRAME_POSITION))
/* Definitions for register eliminations.
/* Definitions for register eliminations.
...
...
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