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
77f934bb
Commit
77f934bb
authored
Apr 13, 1992
by
Tom Wood
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
*** empty log message ***
From-SVN: r732
parent
4af3895e
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
21 additions
and
15 deletions
+21
-15
gcc/c-decl.c
+6
-5
gcc/objc/objc-act.c
+2
-2
gcc/stor-layout.c
+1
-1
gcc/tree.h
+12
-7
No files found.
gcc/c-decl.c
View file @
77f934bb
...
...
@@ -2552,8 +2552,9 @@ init_decl_processing ()
/* In an ANSI C program, it is okay to supply built-in meanings
for these functions, since applications cannot validly use them
with any other meaning.
However, a traditional C program can do so. */
if
(
!
flag_traditional
)
However, a traditional C program can do so.
Also, honor the -fno-builtin option. */
if
(
!
flag_traditional
&&
!
flag_no_builtin
)
{
builtin_function
(
"abs"
,
int_ftype_int
,
BUILT_IN_ABS
,
0
);
builtin_function
(
"fabs"
,
double_ftype_double
,
BUILT_IN_FABS
,
0
);
...
...
@@ -4431,7 +4432,7 @@ finish_struct (t, fieldlist)
/* Install struct as DECL_CONTEXT of each field decl.
Also process specified field sizes.
Set DECL_F
RAME
_SIZE to the specified size, or 0 if none specified.
Set DECL_F
IELD
_SIZE to the specified size, or 0 if none specified.
The specified size is found in the DECL_INITIAL.
Store 0 there, except for ": 0" fields (so we can find them
and delete them, below). */
...
...
@@ -4439,7 +4440,7 @@ finish_struct (t, fieldlist)
for
(
x
=
fieldlist
;
x
;
x
=
TREE_CHAIN
(
x
))
{
DECL_CONTEXT
(
x
)
=
t
;
DECL_F
RAME
_SIZE
(
x
)
=
0
;
DECL_F
IELD
_SIZE
(
x
)
=
0
;
/* If any field is const, the structure type is pseudo-const. */
if
(
TREE_READONLY
(
x
))
...
...
@@ -4514,7 +4515,7 @@ finish_struct (t, fieldlist)
{
register
int
width
=
TREE_INT_CST_LOW
(
DECL_INITIAL
(
x
));
DECL_F
RAME
_SIZE
(
x
)
=
width
;
DECL_F
IELD
_SIZE
(
x
)
=
width
;
DECL_BIT_FIELD
(
x
)
=
1
;
DECL_INITIAL
(
x
)
=
NULL
;
...
...
gcc/objc/objc-act.c
View file @
77f934bb
...
...
@@ -1282,7 +1282,7 @@ objc_copy_list (list, head)
I create the situation it expects...s.naroff (7/23/89).
*/
if
(
DECL_BIT_FIELD
(
tail
)
&&
DECL_INITIAL
(
tail
)
==
0
)
DECL_INITIAL
(
tail
)
=
build_int_2
(
DECL_F
RAME
_SIZE
(
tail
),
0
);
DECL_INITIAL
(
tail
)
=
build_int_2
(
DECL_F
IELD
_SIZE
(
tail
),
0
);
newlist
=
chainon
(
newlist
,
tail
);
list
=
TREE_CHAIN
(
list
);
...
...
@@ -3866,7 +3866,7 @@ encode_field_decl (field_decl, str, format)
int
format
;
{
if
(
DECL_BIT_FIELD
(
field_decl
))
encode_bitfield
(
DECL_F
RAME
_SIZE
(
field_decl
),
str
,
format
);
encode_bitfield
(
DECL_F
IELD
_SIZE
(
field_decl
),
str
,
format
);
else
encode_type
(
TREE_TYPE
(
field_decl
),
str
,
format
);
}
...
...
gcc/stor-layout.c
View file @
77f934bb
...
...
@@ -150,7 +150,7 @@ layout_decl (decl, known_align)
{
register
tree
type
=
TREE_TYPE
(
decl
);
register
enum
tree_code
code
=
TREE_CODE
(
decl
);
int
spec_size
=
DECL_F
RAME
_SIZE
(
decl
);
int
spec_size
=
DECL_F
IELD
_SIZE
(
decl
);
if
(
code
==
CONST_DECL
)
return
;
...
...
gcc/tree.h
View file @
77f934bb
...
...
@@ -673,9 +673,9 @@ struct tree_type
#define DECL_RTL(NODE) ((NODE)->decl.rtl)
/* For PARM_DECL, holds an RTL for the stack slot or register
where the data was actually passed. */
#define DECL_INCOMING_RTL(NODE) ((NODE)->decl.saved_insns)
#define DECL_INCOMING_RTL(NODE) ((NODE)->decl.saved_insns
.r
)
/* For FUNCTION_DECL, if it is inline, holds the saved insn chain. */
#define DECL_SAVED_INSNS(NODE) ((NODE)->decl.saved_insns)
#define DECL_SAVED_INSNS(NODE) ((NODE)->decl.saved_insns
.r
)
/* For FUNCTION_DECL for built-in function. */
#define DECL_FUNCTION_CODE(NODE) \
((enum built_in_function) (NODE)->decl.frame_size)
...
...
@@ -684,6 +684,8 @@ struct tree_type
/* For FUNCTION_DECL, if it is inline,
holds the size of the stack frame, as an integer. */
#define DECL_FRAME_SIZE(NODE) ((NODE)->decl.frame_size)
/* For a FIELD_DECL, holds the size of the member as an integer. */
#define DECL_FIELD_SIZE(NODE) ((NODE)->decl.saved_insns.i)
/* The DECL_VINDEX is used for FUNCTION_DECLS in two different ways.
Before the struct containing the FUNCTION_DECL is laid out,
...
...
@@ -801,12 +803,15 @@ struct tree_decl
struct
rtx_def
*
rtl
;
/* acts as link to register transfer language
(rtl) info */
/* For a FUNCTION_DECL, if inline, this is the size of frame needed.
If built-in, this is the code for which built-in function.
For any other kind of decl, this is the alignment. */
If built-in, this is the code for which built-in function. */
int
frame_size
;
struct
rtx_def
*
saved_insns
;
/* For FUNCTION_DECLs: points to insn that
constitutes its definition on the
permanent obstack. */
/* For FUNCTION_DECLs: points to insn that constitutes its definition
on the permanent obstack. For any other kind of decl, this is the
alignment. */
union
{
struct
rtx_def
*
r
;
int
i
;
}
saved_insns
;
union
tree_node
*
vindex
;
/* Points to a structure whose details depend on the language in use. */
struct
lang_decl
*
lang_specific
;
...
...
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