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
052aaaef
Commit
052aaaef
authored
Apr 29, 1992
by
Richard Kenner
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
*** empty log message ***
From-SVN: r861
parent
3c1aa983
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
19 additions
and
5 deletions
+19
-5
gcc/genattrtab.c
+19
-5
No files found.
gcc/genattrtab.c
View file @
052aaaef
...
...
@@ -96,6 +96,9 @@ struct obstack *rtl_obstack = &obstack;
#define obstack_chunk_alloc xmalloc
#define obstack_chunk_free free
/* Define this so we can link with print-rtl.o to get debug_rtx function. */
char
**
insn_name_ptr
=
0
;
extern
void
free
();
extern
rtx
read_rtx
();
...
...
@@ -724,6 +727,7 @@ check_attr_test (exp, is_const)
{
/* These cases are valid for constant attributes, but can't be
simplified. */
exp
=
copy_rtx
(
exp
);
RTX_UNCHANGING_P
(
exp
)
=
1
;
break
;
}
...
...
@@ -1028,8 +1032,8 @@ make_canonical (attr, exp)
case
SYMBOL_REF
:
if
(
!
attr
->
is_const
||
RTX_UNCHANGING_P
(
exp
))
break
;
RTX_UNCHANGING_P
(
exp
)
=
1
;
exp
=
convert_const_symbol_ref
(
exp
,
attr
);
RTX_UNCHANGING_P
(
exp
)
=
1
;
check_attr_value
(
exp
,
attr
);
/* Goto COND case since this is now a COND. Note that while the
new expression is rescanned, all symbol_ref notes are mared as
...
...
@@ -1951,13 +1955,20 @@ evaluate_eq_attr (exp, value, insn_code, insn_index)
else
abort
();
/* If uses an address, must return original expression. */
/* If uses an address, must return original expression. But set the
RTX_UNCHANGING_P bit so we don't try to simplify it again. */
address_used
=
0
;
walk_attr_value
(
newexp
);
if
(
address_used
)
return
exp
;
{
if
(
!
RTX_UNCHANGING_P
(
exp
))
exp
=
copy_rtx
(
exp
);
RTX_UNCHANGING_P
(
exp
)
=
1
;
return
exp
;
}
else
return
newexp
;
}
...
...
@@ -2388,8 +2399,11 @@ simplify_test_exp (exp, insn_code, insn_index)
/* We have already simplified this expression. Simplifying it again
won't buy anything unless we weren't given a valid insn code
to process (i.e., we are canonicalizing something.). */
if
(
insn_code
!=
-
2
)
RTX_UNCHANGING_P
(
newexp
)
=
1
;
if
(
insn_code
!=
-
2
&&
!
RTX_UNCHANGING_P
(
newexp
))
{
newexp
=
copy_rtx
(
newexp
);
RTX_UNCHANGING_P
(
newexp
)
=
1
;
}
return
newexp
;
}
...
...
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