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
44d974b5
Commit
44d974b5
authored
18 years ago
by
Olga Golovanevsky
Committed by
Olga Golovanevsky
18 years ago
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ipa-type-escape fix for ada
From-SVN: r123022
parent
604e4ce3
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
20 additions
and
20 deletions
+20
-20
gcc/ChangeLog
+5
-0
gcc/ipa-type-escape.c
+15
-20
No files found.
gcc/ChangeLog
View file @
44d974b5
2007-03-17 Olga Golovanevsky <olga@il.ibm.com>
* ipa-type-escape.c (look_for_casts) : Revert code to use
handled_component_p due to ada test a-numaux.adb.
2007-03-17 Kazu Hirata <kazu@codesourcery.com>
* final.c (final_scan_insn): Alter the condition of a
...
...
This diff is collapsed.
Click to expand it.
gcc/ipa-type-escape.c
View file @
44d974b5
...
...
@@ -1239,26 +1239,21 @@ look_for_casts (tree lhs ATTRIBUTE_UNUSED, tree t)
tree
castfromvar
=
TREE_OPERAND
(
t
,
0
);
cast
=
cast
|
check_cast
(
TREE_TYPE
(
t
),
castfromvar
);
}
else
if
(
TREE_CODE
(
t
)
==
COMPONENT_REF
||
TREE_CODE
(
t
)
==
INDIRECT_REF
||
TREE_CODE
(
t
)
==
BIT_FIELD_REF
)
{
tree
base
=
get_base_address
(
t
);
while
(
t
!=
base
)
{
t
=
TREE_OPERAND
(
t
,
0
);
if
(
TREE_CODE
(
t
)
==
VIEW_CONVERT_EXPR
)
{
/* This may be some part of a component ref.
IE it may be a.b.VIEW_CONVERT_EXPR<weird_type>(c).d, AFAIK.
castfromref will give you a.b.c, not a. */
tree
castfromref
=
TREE_OPERAND
(
t
,
0
);
cast
=
cast
|
check_cast
(
TREE_TYPE
(
t
),
castfromref
);
}
else
if
(
TREE_CODE
(
t
)
==
COMPONENT_REF
)
get_canon_type
(
TREE_TYPE
(
TREE_OPERAND
(
t
,
1
)),
false
,
false
);
}
}
else
while
(
handled_component_p
(
t
))
{
t
=
TREE_OPERAND
(
t
,
0
);
if
(
TREE_CODE
(
t
)
==
VIEW_CONVERT_EXPR
)
{
/* This may be some part of a component ref.
IE it may be a.b.VIEW_CONVERT_EXPR<weird_type>(c).d, AFAIK.
castfromref will give you a.b.c, not a. */
tree
castfromref
=
TREE_OPERAND
(
t
,
0
);
cast
=
cast
|
check_cast
(
TREE_TYPE
(
t
),
castfromref
);
}
else
if
(
TREE_CODE
(
t
)
==
COMPONENT_REF
)
get_canon_type
(
TREE_TYPE
(
TREE_OPERAND
(
t
,
1
)),
false
,
false
);
}
if
(
!
cast
)
cast
=
CT_NO_CAST
;
...
...
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