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
6ad7895a
Commit
6ad7895a
authored
23 years ago
by
Alexandre Petit-Bianco
Committed by
Alexandre Petit-Bianco
23 years ago
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
*** empty log message ***
From-SVN: r44528
parent
b24a9e88
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
55 additions
and
18 deletions
+55
-18
gcc/ChangeLog
+16
-0
gcc/cp/ChangeLog
+5
-0
gcc/cp/tree.c
+1
-1
gcc/expr.c
+7
-7
gcc/java/ChangeLog
+13
-0
gcc/java/check-init.c
+1
-1
gcc/java/decl.c
+1
-1
gcc/java/jcf-write.c
+1
-1
gcc/java/parse.y
+2
-2
gcc/tree.c
+2
-3
gcc/tree.def
+2
-2
gcc/tree.h
+4
-0
No files found.
gcc/ChangeLog
View file @
6ad7895a
2001-07-31 Alexandre Petit-Bianco <apbianco@redhat.com>
* expr.c (safe_from_p): Use WITH_CLEANUP_EXPR_RTL instead of
RTL_EXPR_RTL while handling WITH_CLEANUP_EXPR nodes. Fixed typo in
comment.
(expand_expr): Use WITH_CLEANUP_EXPR_RTL instead of RTL_EXPR_RTL
while handling WITH_CLEANUP_EXPR node. Use second operand calling
expand_decl_cleanup.
* tree.c (firt_rtl_op): The third operand of WITH_CLEANUP_EXPR is
the first RTX.
(simple_cst_equal): WITH_CLEANUP_EXPR node to use its second
operand while calling simple_cst_equal.
* tree.def (WITH_CLEANUP_EXPR): Switched operands: the second
operand is the cleanup expression, the third is the RTL_EXPR.
* tree.h (WITH_CLEANUP_EXPR_RTL): New macro.
2001-07-31 Jeff Sturm <jsturm@one-point.com>
* except.c (duplicate_eh_regions): Test n_array[i] for NULL.
...
...
This diff is collapsed.
Click to expand it.
gcc/cp/ChangeLog
View file @
6ad7895a
2001-07-31 Alexandre Petit-Bianco <apbianco@redhat.com>
* tree.c (cp_tree_equal): WITH_CLEANUP_EXPR node to use its second
operand while calling cp_tree_equal.
2001-07-31 Nathan Sidwell <nathan@codesourcery.com>
The 3.0 ABI no longer has vbase pointer fields.
...
...
This diff is collapsed.
Click to expand it.
gcc/cp/tree.c
View file @
6ad7895a
...
...
@@ -1958,7 +1958,7 @@ cp_tree_equal (t1, t2)
cmp
=
cp_tree_equal
(
TREE_OPERAND
(
t1
,
0
),
TREE_OPERAND
(
t2
,
0
));
if
(
cmp
<=
0
)
return
cmp
;
return
cp_tree_equal
(
TREE_OPERAND
(
t1
,
2
),
TREE_OPERAND
(
t1
,
2
));
return
cp_tree_equal
(
TREE_OPERAND
(
t1
,
1
),
TREE_OPERAND
(
t1
,
1
));
case
COMPONENT_REF
:
if
(
TREE_OPERAND
(
t1
,
1
)
==
TREE_OPERAND
(
t2
,
1
))
...
...
This diff is collapsed.
Click to expand it.
gcc/expr.c
View file @
6ad7895a
...
...
@@ -5858,7 +5858,7 @@ safe_from_p (x, exp, top_p)
break
;
case
WITH_CLEANUP_EXPR
:
exp_rtl
=
RTL
_EXPR_RTL
(
exp
);
exp_rtl
=
WITH_CLEANUP
_EXPR_RTL
(
exp
);
break
;
case
CLEANUP_POINT_EXPR
:
...
...
@@ -6452,7 +6452,7 @@ expand_expr (exp, target, tmode, modifier)
lineno
=
EXPR_WFL_LINENO
(
exp
);
if
(
EXPR_WFL_EMIT_LINE_NOTE
(
exp
))
emit_line_note
(
input_filename
,
lineno
);
/* Possibly avoid switching back and for
ce
here. */
/* Possibly avoid switching back and for
th
here. */
to_return
=
expand_expr
(
EXPR_WFL_NODE
(
exp
),
target
,
tmode
,
modifier
);
input_filename
=
saved_input_filename
;
lineno
=
saved_lineno
;
...
...
@@ -7376,16 +7376,16 @@ expand_expr (exp, target, tmode, modifier)
}
case
WITH_CLEANUP_EXPR
:
if
(
RTL
_EXPR_RTL
(
exp
)
==
0
)
if
(
WITH_CLEANUP
_EXPR_RTL
(
exp
)
==
0
)
{
RTL
_EXPR_RTL
(
exp
)
WITH_CLEANUP
_EXPR_RTL
(
exp
)
=
expand_expr
(
TREE_OPERAND
(
exp
,
0
),
target
,
tmode
,
ro_modifier
);
expand_decl_cleanup
(
NULL_TREE
,
TREE_OPERAND
(
exp
,
2
));
expand_decl_cleanup
(
NULL_TREE
,
TREE_OPERAND
(
exp
,
1
));
/* That's it for this cleanup. */
TREE_OPERAND
(
exp
,
2
)
=
0
;
TREE_OPERAND
(
exp
,
1
)
=
0
;
}
return
RTL
_EXPR_RTL
(
exp
);
return
WITH_CLEANUP
_EXPR_RTL
(
exp
);
case
CLEANUP_POINT_EXPR
:
{
...
...
This diff is collapsed.
Click to expand it.
gcc/java/ChangeLog
View file @
6ad7895a
2001-07-31 Alexandre Petit-Bianco <apbianco@redhat.com>
* check-init.c (check_init): WITH_CLEANUP_EXPR node to use its
second operand calling check_init.
* decl.c (complete_start_java_method): Swaped second and third
arguments while creating WITH_CLEANUP_EXPR node.
* jcf-write.c (generate_bytecode_insns): Use second operand
instead of third when handling WITH_CLEANUP_EXPR.
* parse.y (java_complete_lhs): Expand second operand of
WITH_CLEANUP_EXPR nodes.
(patch_synchronized_statement): Swaped second and third arguments
while creating WITH_CLEANUP_EXPR node.
2001-07-18 Alexandre Petit-Bianco <apbianco@redhat.com>
* parse.y (create_interface): Avoid cyclic inheritance report when
...
...
This diff is collapsed.
Click to expand it.
gcc/java/check-init.c
View file @
6ad7895a
...
...
@@ -537,7 +537,7 @@ check_init (exp, before)
#endif
check_init
(
TREE_OPERAND
(
exp
,
0
),
before
);
UNION
(
alt
->
combined
,
alt
->
combined
,
before
);
check_init
(
TREE_OPERAND
(
exp
,
2
),
alt
->
combined
);
check_init
(
TREE_OPERAND
(
exp
,
1
),
alt
->
combined
);
return
;
}
...
...
This diff is collapsed.
Click to expand it.
gcc/java/decl.c
View file @
6ad7895a
...
...
@@ -1738,7 +1738,7 @@ complete_start_java_method (fndecl)
tree
function_body
=
DECL_FUNCTION_BODY
(
fndecl
);
tree
body
=
BLOCK_EXPR_BODY
(
function_body
);
lock
=
build
(
WITH_CLEANUP_EXPR
,
void_type_node
,
enter
,
NULL_TREE
,
exit
);
enter
,
exit
,
NULL_TREE
);
TREE_SIDE_EFFECTS
(
lock
)
=
1
;
lock
=
build
(
COMPOUND_EXPR
,
TREE_TYPE
(
body
),
lock
,
body
);
TREE_SIDE_EFFECTS
(
lock
)
=
1
;
...
...
This diff is collapsed.
Click to expand it.
gcc/java/jcf-write.c
View file @
6ad7895a
...
...
@@ -2293,7 +2293,7 @@ generate_bytecode_insns (exp, target, state)
label
->
next
=
state
->
labeled_blocks
;
state
->
labeled_blocks
=
label
;
state
->
num_finalizers
++
;
label
->
u
.
labeled_block
=
TREE_OPERAND
(
exp
,
2
);
label
->
u
.
labeled_block
=
TREE_OPERAND
(
exp
,
1
);
label
->
v
.
start_label
=
get_jcf_label_here
(
state
);
if
(
target
!=
IGNORE_TARGET
)
abort
();
...
...
This diff is collapsed.
Click to expand it.
gcc/java/parse.y
View file @
6ad7895a
...
...
@@ -11326,7 +11326,7 @@ java_complete_lhs (node)
case WITH_CLEANUP_EXPR:
COMPLETE_CHECK_OP_0 (node);
COMPLETE_CHECK_OP_
2
(node);
COMPLETE_CHECK_OP_
1
(node);
CAN_COMPLETE_NORMALLY (node) =
CAN_COMPLETE_NORMALLY (TREE_OPERAND (node, 0));
TREE_TYPE (node) = void_type_node;
...
...
@@ -15326,7 +15326,7 @@ patch_synchronized_statement (node, wfl_op1)
build (WITH_CLEANUP_EXPR, NULL_TREE,
build (COMPOUND_EXPR, NULL_TREE,
assignment, enter),
NULL_TREE, exit
),
exit, NULL_TREE
),
block));
node = build_expr_block (node, expr_decl);
...
...
This diff is collapsed.
Click to expand it.
gcc/tree.c
View file @
6ad7895a
...
...
@@ -1628,8 +1628,7 @@ first_rtl_op (code)
case
RTL_EXPR
:
return
0
;
case
WITH_CLEANUP_EXPR
:
/* Should be defined to be 2. */
return
1
;
return
2
;
case
METHOD_CALL_EXPR
:
return
3
;
default
:
...
...
@@ -3679,7 +3678,7 @@ simple_cst_equal (t1, t2)
if
(
cmp
<=
0
)
return
cmp
;
return
simple_cst_equal
(
TREE_OPERAND
(
t1
,
2
),
TREE_OPERAND
(
t1
,
2
));
return
simple_cst_equal
(
TREE_OPERAND
(
t1
,
1
),
TREE_OPERAND
(
t1
,
1
));
case
COMPONENT_REF
:
if
(
TREE_OPERAND
(
t1
,
1
)
==
TREE_OPERAND
(
t2
,
1
))
...
...
This diff is collapsed.
Click to expand it.
gcc/tree.def
View file @
6ad7895a
...
...
@@ -472,8 +472,8 @@ DEFTREECODE (METHOD_CALL_EXPR, "method_call_expr", 'e', 4)
/* Specify a value to compute along with its corresponding cleanup.
Operand 0 argument is an expression whose value needs a cleanup.
Operand 1 is
an RTL_EXPR which will eventually represent that value
.
Operand 2 is
the cleanup expression for the object
.
Operand 1 is
the cleanup expression for the object
.
Operand 2 is
an RTL_EXPR which will eventually represent that value
.
The RTL_EXPR is used in this expression, which is how the expression
manages to act on the proper value.
The cleanup is executed by the first enclosing CLEANUP_POINT_EXPR, if
...
...
This diff is collapsed.
Click to expand it.
gcc/tree.h
View file @
6ad7895a
...
...
@@ -792,6 +792,10 @@ struct tree_vec
#define RTL_EXPR_SEQUENCE(NODE) (*(struct rtx_def **) &EXPR_CHECK (NODE)->exp.operands[0])
#define RTL_EXPR_RTL(NODE) (*(struct rtx_def **) &EXPR_CHECK (NODE)->exp.operands[1])
/* In a WITH_CLEANUP_EXPR node. */
#define WITH_CLEANUP_EXPR_RTL(NODE) \
(*(struct rtx_def **) &EXPR_CHECK (NODE)->exp.operands[2])
/* In a CONSTRUCTOR node. */
#define CONSTRUCTOR_ELTS(NODE) TREE_OPERAND (NODE, 1)
...
...
This diff is collapsed.
Click to expand 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