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
dd25a747
Commit
dd25a747
authored
May 25, 2008
by
Alan Modra
Committed by
Alan Modra
May 25, 2008
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Delete get_inner_array_type. Use strip_array_types instead.
From-SVN: r135858
parent
bcfef99b
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
31 additions
and
35 deletions
+31
-35
gcc/ChangeLog
+13
-0
gcc/c-common.c
+0
-12
gcc/c-common.h
+0
-1
gcc/config/i386/i386.c
+1
-2
gcc/config/pa/pa.c
+1
-2
gcc/config/rs6000/aix.h
+4
-5
gcc/config/rs6000/linux64.h
+1
-3
gcc/tree.c
+3
-5
gcc/tree.h
+1
-1
libobjc/ChangeLog
+5
-0
libobjc/encoding.c
+2
-4
No files found.
gcc/ChangeLog
View file @
dd25a747
2008-05-25 Alan Modra <amodra@bigpond.net.au>
* c-common.c (strip_array_types): Move function to..
* tree.c: ..here.
(get_inner_array_type): Delete.
* c-common.h (strip_array_types): Move declaration to..
* tree.h: ..here.
(get_inner_array_type): Delete.
* config/i386/i386.c (x86_field_alignment): Use strip_array_types.
* config/rs6000/aix.h (ADJUST_FIELD_ALIGN): Likewise.
* config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Likewise.
* config/pa/pa.c (emit_move_sequence): Likewise.
2008-05-24 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.md (*sse_prologue_save_insn): Set length
...
...
gcc/c-common.c
View file @
dd25a747
...
...
@@ -4173,18 +4173,6 @@ self_promoting_args_p (const_tree parms)
return
1
;
}
/* Recursively examines the array elements of TYPE, until a non-array
element type is found. */
tree
strip_array_types
(
tree
type
)
{
while
(
TREE_CODE
(
type
)
==
ARRAY_TYPE
)
type
=
TREE_TYPE
(
type
);
return
type
;
}
/* Recursively remove any '*' or '&' operator from TYPE. */
tree
strip_pointer_operator
(
tree
t
)
...
...
gcc/c-common.h
View file @
dd25a747
...
...
@@ -738,7 +738,6 @@ extern alias_set_type c_common_get_alias_set (tree);
extern
void
c_register_builtin_type
(
tree
,
const
char
*
);
extern
bool
c_promoting_integer_type_p
(
const_tree
);
extern
int
self_promoting_args_p
(
const_tree
);
extern
tree
strip_array_types
(
tree
);
extern
tree
strip_pointer_operator
(
tree
);
extern
tree
strip_pointer_or_array_types
(
tree
);
extern
HOST_WIDE_INT
c_common_to_target_charset
(
HOST_WIDE_INT
);
...
...
gcc/config/i386/i386.c
View file @
dd25a747
...
...
@@ -23225,8 +23225,7 @@ x86_field_alignment (tree field, int computed)
if
(
TARGET_64BIT
||
TARGET_ALIGN_DOUBLE
)
return
computed
;
mode
=
TYPE_MODE
(
TREE_CODE
(
type
)
==
ARRAY_TYPE
?
get_inner_array_type
(
type
)
:
type
);
mode
=
TYPE_MODE
(
strip_array_types
(
type
));
if
(
mode
==
DFmode
||
mode
==
DCmode
||
GET_MODE_CLASS
(
mode
)
==
MODE_INT
||
GET_MODE_CLASS
(
mode
)
==
MODE_COMPLEX_INT
)
...
...
gcc/config/pa/pa.c
View file @
dd25a747
...
...
@@ -1712,8 +1712,7 @@ emit_move_sequence (rtx *operands, enum machine_mode mode, rtx scratch_reg)
decl
=
TREE_OPERAND
(
decl
,
1
);
type
=
TREE_TYPE
(
decl
);
if
(
TREE_CODE
(
type
)
==
ARRAY_TYPE
)
type
=
get_inner_array_type
(
type
);
type
=
strip_array_types
(
type
);
if
(
POINTER_TYPE_P
(
type
))
{
...
...
gcc/config/rs6000/aix.h
View file @
dd25a747
...
...
@@ -158,11 +158,10 @@
/* This now supports a natural alignment mode. */
/* AIX word-aligns FP doubles but doubleword-aligns 64-bit ints. */
#define ADJUST_FIELD_ALIGN(FIELD, COMPUTED) \
(TARGET_ALIGN_NATURAL ? (COMPUTED) : \
(TYPE_MODE (TREE_CODE (TREE_TYPE (FIELD)) == ARRAY_TYPE \
? get_inner_array_type (FIELD) \
: TREE_TYPE (FIELD)) == DFmode \
? MIN ((COMPUTED), 32) : (COMPUTED)))
((TARGET_ALIGN_NATURAL == 0 \
&& TYPE_MODE (strip_array_types (TREE_TYPE (FIELD))) == DFmode) \
? MIN ((COMPUTED), 32) \
: (COMPUTED))
/* AIX increases natural record alignment to doubleword if the first
field is an FP double while the FP fields remain word aligned. */
...
...
gcc/config/rs6000/linux64.h
View file @
dd25a747
...
...
@@ -217,9 +217,7 @@ extern int dot_symbols;
? 128 \
: (TARGET_64BIT \
&& TARGET_ALIGN_NATURAL == 0 \
&& TYPE_MODE (TREE_CODE (TREE_TYPE (FIELD)) == ARRAY_TYPE \
? get_inner_array_type (FIELD) \
: TREE_TYPE (FIELD)) == DFmode) \
&& TYPE_MODE (strip_array_types (TREE_TYPE (FIELD))) == DFmode) \
? MIN ((COMPUTED), 32) \
: (COMPUTED))
...
...
gcc/tree.c
View file @
dd25a747
...
...
@@ -5682,14 +5682,12 @@ build_array_type (tree elt_type, tree index_type)
return
t
;
}
/* Re
turn the TYPE of the elements comprising
the innermost dimension of ARRAY
. */
/* Re
cursively examines the array elements of TYPE, until a non-array
element type is found
. */
tree
get_inner_array_type
(
const_tree
array
)
strip_array_types
(
tree
type
)
{
tree
type
=
TREE_TYPE
(
array
);
while
(
TREE_CODE
(
type
)
==
ARRAY_TYPE
)
type
=
TREE_TYPE
(
type
);
...
...
gcc/tree.h
View file @
dd25a747
...
...
@@ -4011,7 +4011,7 @@ extern int tree_int_cst_sign_bit (const_tree);
extern
bool
tree_expr_nonnegative_p
(
tree
);
extern
bool
tree_expr_nonnegative_warnv_p
(
tree
,
bool
*
);
extern
bool
may_negate_without_overflow_p
(
const_tree
);
extern
tree
get_inner_array_type
(
const_
tree
);
extern
tree
strip_array_types
(
tree
);
/* Construct various nodes representing fract or accum data types. */
...
...
libobjc/ChangeLog
View file @
dd25a747
2008-05-25 Alan Modra <amodra@bigpond.net.au>
* encoding.c (strip_array_types): Rename from get_inner_array_type.
(rs6000_special_round_type_align): Update.
2008-05-09 Julian Brown <julian@codesourcery.com>
* Makefile.in (LTLDFLAGS): New.
...
...
libobjc/encoding.c
View file @
dd25a747
...
...
@@ -78,7 +78,7 @@ Boston, MA 02110-1301, USA. */
#define DFmode _C_DBL
#define
get_inner_array_type
(TYPE) ({const char *_field = (TYPE); \
#define
strip_array_types
(TYPE) ({const char *_field = (TYPE); \
while (*_field == _C_ARY_B)\
{\
while (isdigit ((unsigned char)*++_field))\
...
...
@@ -115,9 +115,7 @@ static int __attribute__ ((__unused__)) not_target_flags = 0;
#define rs6000_special_round_type_align(STRUCT, COMPUTED, SPECIFIED) \
({ const char *_fields = TYPE_FIELDS (STRUCT); \
((_fields != 0 \
&& TYPE_MODE (TREE_CODE (TREE_TYPE (_fields)) == ARRAY_TYPE \
? get_inner_array_type (_fields) \
: TREE_TYPE (_fields)) == DFmode) \
&& TYPE_MODE (strip_array_types (TREE_TYPE (_fields))) == DFmode) \
? MAX (MAX (COMPUTED, SPECIFIED), 64) \
: MAX (COMPUTED, SPECIFIED));})
/* FIXME: The word 'fixme' is insufficient to explain the wrong-ness
...
...
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