aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorZack Weinberg <zack@gcc.gnu.org>2003-03-10 20:02:27 +0000
committerZack Weinberg <zack@gcc.gnu.org>2003-03-10 20:02:27 +0000
commit529997387b584eb172b1806e712fc0f74fb92976 (patch)
tree7e60f07d5aac90eff7cdefd4f1e1e918caafe81e /gcc
parenta489d8b0846d82e25947100033fc336fd8c2085a (diff)
downloadgcc-529997387b584eb172b1806e712fc0f74fb92976.zip
gcc-529997387b584eb172b1806e712fc0f74fb92976.tar.gz
gcc-529997387b584eb172b1806e712fc0f74fb92976.tar.bz2
c-opts.c (add_prefixed_path): Don't use concat.
* c-opts.c (add_prefixed_path): Don't use concat. When prefixing with cpp_GCC_INCLUDE_DIR, copy only the first cpp_GCC_INCLUDE_DIR_len characters. From-SVN: r64114
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog194
-rw-r--r--gcc/c-opts.c14
2 files changed, 112 insertions, 96 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 9cfdcb8..703a280 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,31 +1,37 @@
+2003-03-10 Zack Weinberg <zack@codesourcery.com>
+
+ * c-opts.c (add_prefixed_path): Don't use concat. When
+ prefixing with cpp_GCC_INCLUDE_DIR, copy only the first
+ cpp_GCC_INCLUDE_DIR_len characters.
+
2003-03-10 Segher Boessenkool <segher@koffie.nl>
- * testsuite/gcc.dg/altivec-9.c: New file.
+ * testsuite/gcc.dg/altivec-9.c: New file.
- * config/rs6000/rs6000.c (altivec_frame_fixup): Remove.
- (rs6000_emit_prologue): Use rs6000_frame_related instead.
+ * config/rs6000/rs6000.c (altivec_frame_fixup): Remove.
+ (rs6000_emit_prologue): Use rs6000_frame_related instead.
2003-03-10 Aldy Hernandez <aldyh@redhat.com>
- * config/rs6000/spe.h: Define __ev64_*64__ to use single element
- vectors.
- (__ev_convert_u64): Remove macro. Define as inline.
- (__ev_convert_s64): Same.
+ * config/rs6000/spe.h: Define __ev64_*64__ to use single element
+ vectors.
+ (__ev_convert_u64): Remove macro. Define as inline.
+ (__ev_convert_s64): Same.
2003-03-10 Aldy Hernandez <aldyh@redhat.com>
- * config/rs6000/rs6000.h (DWARF_FRAME_REGISTERS): Define.
- (rs6000_stack_t): Add spe_64bit_regs_used.
+ * config/rs6000/rs6000.h (DWARF_FRAME_REGISTERS): Define.
+ (rs6000_stack_t): Add spe_64bit_regs_used.
- * config/rs6000/rs6000.c (rs6000_stack_info): Calculate
- spe_64bit_regs_used, and use it to determine the size of the
- frame.
- (spe_func_has_64bit_regs_p): New.
- (spe_synthesize_frame_save): New.
- (rs6000_frame_related): Handle SPE synthetic registers.
- (rs6000_emit_prologue): Only save in 64-bits if the function used
- any registers in 64-bit mode.
- (rs6000_emit_epilogue): Same, but for restore.
+ * config/rs6000/rs6000.c (rs6000_stack_info): Calculate
+ spe_64bit_regs_used, and use it to determine the size of the
+ frame.
+ (spe_func_has_64bit_regs_p): New.
+ (spe_synthesize_frame_save): New.
+ (rs6000_frame_related): Handle SPE synthetic registers.
+ (rs6000_emit_prologue): Only save in 64-bits if the function used
+ any registers in 64-bit mode.
+ (rs6000_emit_epilogue): Same, but for restore.
2003-03-10 Richard Earnshaw <rearnsha@arm.com>
@@ -41,17 +47,17 @@
2003-03-10 Josef Zlomek <zlomekj@suse.cz>
- * cfgcleanup.c (outgoing_edges_match): Compare the jump tables.
+ * cfgcleanup.c (outgoing_edges_match): Compare the jump tables.
(try_crossjump_to_edge): Replace refereces to one jump table by
references to identical jump table.
* loop.c (load_mems): Moved setting the JUMP_LABEL to replace_label.
(replace_label): Moved to rtlanal.c.
(struct rtx_pair): Moved to rtl.h.
- * rtl.h (struct rtx_pair): Moved from loop.c.
+ * rtl.h (struct rtx_pair): Moved from loop.c.
(replace_label): New extern function.
(subrtx_p): New extern function.
(tablejump_p): New extern function.
- * rtlanal.c (replace_label): Moved from loop.c.
+ * rtlanal.c (replace_label): Moved from loop.c.
(subrtx_p_1): New static function.
(subrtx_p): New function.
(tablejump_p): New function.
@@ -282,7 +288,7 @@ Sat Mar 8 14:13:35 CET 2003 Jan Hubicka <jh@suse.cz>
(cgraph_finalize_compilation_unit): Actually remove the reclaimed nodes.
(cgraph_mark_functions_to_output): Use new inlining heuristics flags.
(cgraph_expand_function): Likewise.
- * cgraph.c
+ * cgraph.c
(cgraph_node): Put nodes into doubly linked chain.
(cgraph_remove_node): New function.
* flags.h (flag_inline_functions_called_once): Declare.
@@ -451,7 +457,7 @@ Sat Mar 8 14:13:35 CET 2003 Jan Hubicka <jh@suse.cz>
* config/stormy16/stormy16.c (xs_hi_general_operand):
added predicate to detect and error-out on out-of-range
const_ints for movhi.
- * config/stormy16/stormy16.md (movhi): use
+ * config/stormy16/stormy16.md (movhi): use
xs_hi_general_operand.
* config/stormy16/stormy16.c (xstormy16_expand_prologue):
@@ -459,7 +465,7 @@ Sat Mar 8 14:13:35 CET 2003 Jan Hubicka <jh@suse.cz>
* config/stormy16/stormy16.c (xs_hi_nonmemory_operand):
added predicate to detect and error-out on out-of-range
const_ints for addhi and subhi.
- * config/stormy16/stormy16.md (addhi3, addchi4, addchi5,
+ * config/stormy16/stormy16.md (addhi3, addchi4, addchi5,
subhi3, subchi4, subchi5): used xs_hi_nonmemory_operand.
* config/stormy16/stormy16.c (xstormy16_legitimate_address_p):
@@ -525,23 +531,23 @@ Wed Mar 5 18:55:02 2003 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
2003-03-05 Aldy Hernandez <aldyh@redhat.com>
- * doc/tm.texi: Document TARGET_DWARF_REGISTER_SPAN.
+ * doc/tm.texi: Document TARGET_DWARF_REGISTER_SPAN.
- * config/rs6000/rs6000.c (rs6000_dwarf_register_span): New.
+ * config/rs6000/rs6000.c (rs6000_dwarf_register_span): New.
- * hooks.c (hook_rtx_rtx_null): New.
+ * hooks.c (hook_rtx_rtx_null): New.
- * hooks.h (hook_rtx_rtx_null): Protoize.
+ * hooks.h (hook_rtx_rtx_null): Protoize.
- * target-def.h (TARGET_DWARF_REGISTER_SPAN): New macro.
- (TARGET_INITIALIZER): Add TARGET_DWARF_REGISTER_SPAN.
+ * target-def.h (TARGET_DWARF_REGISTER_SPAN): New macro.
+ (TARGET_INITIALIZER): Add TARGET_DWARF_REGISTER_SPAN.
- * target.h (struct gcc_target): Add dwarf_register_span.
+ * target.h (struct gcc_target): Add dwarf_register_span.
- * dwarf2out.c (multiple_reg_loc_descriptor): New.
- (one_reg_loc_descriptor): New.
- (reg_loc_descriptor): Add support for values that span more than
- one register.
+ * dwarf2out.c (multiple_reg_loc_descriptor): New.
+ (one_reg_loc_descriptor): New.
+ (reg_loc_descriptor): Add support for values that span more than
+ one register.
Wed Mar 5 23:16:57 CET 2003 Jan Hubicka <jh@suse.cz>
@@ -700,7 +706,7 @@ Wed Mar 5 02:04:04 CET 2003 Jan Hubicka <jh@suse.cz>
2003-03-04 Andreas Jaeger <aj@suse.de>
* configure.in: Check for <memcheck.h>.
- * configure: Regenerated.
+ * configure: Regenerated.
* config.in: Define HAVE_MEMCHECK_H.
@@ -1158,7 +1164,7 @@ Mon Mar 3 19:07:21 CET 2003 Jan Hubicka <jh@suse.cz>
2003-02-28 Aldy Hernandez <aldyh@redhat.com>
- * floatlib.c: Remove.
+ * floatlib.c: Remove.
2003-02-28 Jason Merrill <jason@redhat.com>
@@ -1177,9 +1183,9 @@ Mon Mar 3 19:07:21 CET 2003 Jan Hubicka <jh@suse.cz>
2003-02-28 Dale Johannesen <dalej@apple.com>
- * loop.c (struct movable): Add insert_temp, shrink savemode.
+ * loop.c (struct movable): Add insert_temp, shrink savemode.
(scan_loop): Accept invariants that require copying; mark as
- insert_temp.
+ insert_temp.
(combine_movables): Don't combine insert_temp movables.
(move_movables): Insert copies for insert_temp movables.
Don't record the info based on regno for insert_temp's.
@@ -1349,27 +1355,27 @@ Wed Feb 26 19:46:25 CET 2003 Jan Hubicka <jh@suse.cz>
2003-02-26 Nick Clifton <nickc@redhat.com>
* config/arm/arm.c (is_load_address): Rename to...
- (arm_memory_load_p) ... this and make it check for SUBREGs and
- constant loads that will be converted into loads from the
- minipool.
- (is_cirrus_insn): Rename to ...
- (arm_cirrus_insn_p): ... this, for consistency. Replace test
- of CIRRUS_NO with CIRRUS_NOT.
- (cirrus_reorg): Use renamed functions.
- (note_invalid_constants): Change from a void function to bool.
- Add an extra parameter, saying whether the fixups should be
- pushed. Return true if fixups are needed.
- (arm_reorg): Use renamed functions. Use INSN_P. Replace test
- of CIRRUS_NO with CIRRUS_NOT.
- * config/arm/arm.h (FLOAT_WORDS_BIG_ENDIAN): Mention that
- other floating point co-processors can also affect this.
- * config/arm/arm.md ("type" attribute): Add mav_farith and
- mav_dmult. Replace references to "cirrus_type" attribute with
- "type".
- * config/arm/cirrus.md ("cirrus_fpu" attribute): Delete.
- ("cirrus_type" attribute): Delete - use "type" instead.
- ("cirrus" attribute): Replace 'no' with 'not' and 'yes' with
- 'normal'.
+ (arm_memory_load_p) ... this and make it check for SUBREGs and
+ constant loads that will be converted into loads from the
+ minipool.
+ (is_cirrus_insn): Rename to ...
+ (arm_cirrus_insn_p): ... this, for consistency. Replace test
+ of CIRRUS_NO with CIRRUS_NOT.
+ (cirrus_reorg): Use renamed functions.
+ (note_invalid_constants): Change from a void function to bool.
+ Add an extra parameter, saying whether the fixups should be
+ pushed. Return true if fixups are needed.
+ (arm_reorg): Use renamed functions. Use INSN_P. Replace test
+ of CIRRUS_NO with CIRRUS_NOT.
+ * config/arm/arm.h (FLOAT_WORDS_BIG_ENDIAN): Mention that
+ other floating point co-processors can also affect this.
+ * config/arm/arm.md ("type" attribute): Add mav_farith and
+ mav_dmult. Replace references to "cirrus_type" attribute with
+ "type".
+ * config/arm/cirrus.md ("cirrus_fpu" attribute): Delete.
+ ("cirrus_type" attribute): Delete - use "type" instead.
+ ("cirrus" attribute): Replace 'no' with 'not' and 'yes' with
+ 'normal'.
Tue Feb 25 22:46:27 CET 2003 Jan Hubicka <jh@suse.cz>
@@ -1491,13 +1497,13 @@ Tue Feb 25 22:46:27 CET 2003 Jan Hubicka <jh@suse.cz>
* gcse.c (cprop_jump): Revert the 2003-02-23 change.
2003-02-25 Vladimir Makarov <vmakarov@toke.toronto.redhat.com>
- Richard Henderson <rth@redhat.com>
+ Richard Henderson <rth@redhat.com>
* sched-ebb.c (add_deps_for_risky_insns): Add the dependence when
there is no similar load.
2003-02-25 Vladimir Makarov <vmakarov@redhat.com>
- Richard Henderson <rth@redhat.com>
+ Richard Henderson <rth@redhat.com>
* sched-int.h (INSN_TRAP_CLASS, WORST_CLASS): Move them from
sched-rgn.c.
@@ -1522,37 +1528,37 @@ Tue Feb 25 22:46:27 CET 2003 Jan Hubicka <jh@suse.cz>
2003-02-20 Aldy Hernandez <aldyh@redhat.com>
- * doc/tm.texi: Document Rename TARGET_VECTOR_TYPES_COMPATIBLE to
- TARGET_VECTOR_OPAQUE_P. Document accordingly.
+ * doc/tm.texi: Document Rename TARGET_VECTOR_TYPES_COMPATIBLE to
+ TARGET_VECTOR_OPAQUE_P. Document accordingly.
- * testsuite/gcc.dg/20030218-1.c: Check that initialization of
- opaque types fail.
+ * testsuite/gcc.dg/20030218-1.c: Check that initialization of
+ opaque types fail.
- * c-typeck.c (comptypes): Change call to vector_types_compatible
- to vector_opaque_p.
- (convert_for_assignment): Call vector_opaque_p instead of
- vector_types_compatible.
- (really_start_incremental_init): Disallow initialization of opaque
- types.
+ * c-typeck.c (comptypes): Change call to vector_types_compatible
+ to vector_opaque_p.
+ (convert_for_assignment): Call vector_opaque_p instead of
+ vector_types_compatible.
+ (really_start_incremental_init): Disallow initialization of opaque
+ types.
- * target-def.h: Remove TARGET_VECTOR_TYPES_COMPATIBLE.
- Define TARGET_VECTOR_OPAQUE_P.
- (TARGET_INITIALIZER): Same.
+ * target-def.h: Remove TARGET_VECTOR_TYPES_COMPATIBLE.
+ Define TARGET_VECTOR_OPAQUE_P.
+ (TARGET_INITIALIZER): Same.
- * target.h (struct gcc_target): Remove vector_types_compatible.
- Add vector_opaque_p.
+ * target.h (struct gcc_target): Remove vector_types_compatible.
+ Add vector_opaque_p.
- * config/rs6000/rs6000.c (rs6000_spe_vector_types_compatible):
- Remove.
- (is_ev64_opaque_type): Check for TARGET_SPE and make sure type is
- a vector type. Change return type to bool.
- (TARGET_VECTOR_TYPES_COMPATIBLE): Remove.
- (TARGET_VECTOR_OPAQUE_P): Define.
+ * config/rs6000/rs6000.c (rs6000_spe_vector_types_compatible):
+ Remove.
+ (is_ev64_opaque_type): Check for TARGET_SPE and make sure type is
+ a vector type. Change return type to bool.
+ (TARGET_VECTOR_TYPES_COMPATIBLE): Remove.
+ (TARGET_VECTOR_OPAQUE_P): Define.
- * cp/parser.c (cp_parser_init_declarator): Call vector_opaque_p
- target hook.
- Include target.h.
- (cp_parser_init_declarator): Fix typo in function comments.
+ * cp/parser.c (cp_parser_init_declarator): Call vector_opaque_p
+ target hook.
+ Include target.h.
+ (cp_parser_init_declarator): Fix typo in function comments.
Tue Feb 25 12:35:34 CET 2003 Jan Hubicka <jh@suse.cz>
@@ -1623,7 +1629,7 @@ Mon Feb 24 22:08:22 CET 2003 Jan Hubicka <jh@suse.cz>
("load_gbr"): New insn.
* configure.in (HAVE_AS_TLS): Add sh-*-* and sh[34]*-*-* cases.
- * configure: Regenerate.
+ * configure: Regenerate.
2003-02-24 Alan Modra <amodra@bigpond.net.au>
@@ -1658,16 +1664,16 @@ Mon Feb 24 22:08:22 CET 2003 Jan Hubicka <jh@suse.cz>
2003-02-22 Kelley Cook <kelley@dwhoops.info>
- * i386.h, i386.c, i386.md (ix86_tune): Rename from ix86_cpu.
+ * i386.h, i386.c, i386.md (ix86_tune): Rename from ix86_cpu.
(ix86_tune_string): Rename from ix86_cpu_string.
2003-02-22 Kelley Cook <kelleycook@comcast.net>
- * config/i386/i386.c: Replace "mcpu" with "mtune".
- * config/i386/i386.h (TARGET_OPTIONS): Likewise.
- (CC1_CPU_SPEC): Likewise. New warning for "-mcpu".
- * doc/invoke.texi (i386 and x86-64 Options): Replace "mcpu"
- with "mtune". Note that "mcpu" is a deprecated synonym for "mtune".
+ * config/i386/i386.c: Replace "mcpu" with "mtune".
+ * config/i386/i386.h (TARGET_OPTIONS): Likewise.
+ (CC1_CPU_SPEC): Likewise. New warning for "-mcpu".
+ * doc/invoke.texi (i386 and x86-64 Options): Replace "mcpu"
+ with "mtune". Note that "mcpu" is a deprecated synonym for "mtune".
2003-02-23 Andreas Schwab <schwab@suse.de>
diff --git a/gcc/c-opts.c b/gcc/c-opts.c
index ba075f6..a06f0fe 100644
--- a/gcc/c-opts.c
+++ b/gcc/c-opts.c
@@ -1701,10 +1701,20 @@ add_prefixed_path (suffix, chain)
const char *suffix;
size_t chain;
{
+ char *path;
const char *prefix;
+ size_t prefix_len, suffix_len;
- prefix = iprefix ? iprefix: cpp_GCC_INCLUDE_DIR;
- add_path (concat (prefix, suffix), chain, 0);
+ suffix_len = strlen (suffix);
+ prefix = iprefix ? iprefix : cpp_GCC_INCLUDE_DIR;
+ prefix_len = iprefix ? strlen (iprefix) : cpp_GCC_INCLUDE_DIR_len;
+
+ path = xmalloc (prefix_len + suffix_len + 1);
+ memcpy (path, prefix, prefix_len);
+ memcpy (path + prefix_len, suffix, suffix_len);
+ path[prefix_len + suffix_len] = '\0';
+
+ add_path (path, chain, 0);
}
/* Set the C 89 standard (with 1994 amendments if C94, without GNU