gcc/gcc
Alexandre Oliva 4deef538ec re PR debug/43092 (Wrong debuginfo with VTA and -fomit-frame-pointer/-mno-accumulate-outgoing-args)
PR debug/43092
PR rtl-optimization/43494
* rtl.h (for_each_inc_dec_fn): New type.
(for_each_inc_dec): Declare.
* rtlanal.c (struct for_each_inc_dec_ops): New type.
(for_each_inc_dec_find_inc_dec): New fn.
(for_each_inc_dec_find_mem): New fn.
(for_each_inc_dec): New fn.
* dse.c (struct insn_size): Remove.
(replace_inc_dec, replace_inc_dec_mem): Remove.
(emit_inc_dec_insn_before): New fn.
(check_for_inc_dec): Use it, along with for_each_inc_dec.
(canon_address): Pass mem modes to cselib_lookup.
* cselib.h (cselib_lookup): Add memmode argument.  Adjust callers.
(cselib_lookup_from_insn): Likewise.
(cselib_subst_to_values): Likewise.
* cselib.c (find_slot_memmode): New var.
(cselib_find_slot): New fn.  Use it instead of
htab_find_slot_with_hash everywhere.
(entry_and_rtx_equal_p): Use find_slot_memmode.
(autoinc_split): New fn.
(rtx_equal_for_cselib_p): Rename and implement in terms of...
(rtx_equal_for_cselib_1): ... this.  Take memmode, pass it on.
Deal with autoinc.  Special-case recursion into MEMs.
(cselib_hash_rtx): Likewise.
(cselib_lookup_mem): Infer pmode from address mode.  Distinguish
address and MEM modes.
(cselib_subst_to_values): Add memmode, pass it on.
Deal with autoinc.
(cselib_lookup): Add memmode argument, pass it on.
(cselib_lookup_from_insn): Add memmode.
(cselib_invalidate_rtx): Discard obsolete push_operand handling.
(struct cselib_record_autoinc_data): New.
(cselib_record_autoinc_cb): New fn.
(cselib_record_sets): Use it, along with for_each_inc_dec.  Pass MEM
mode to cselib_lookup.  Reset autoinced REGs here instead of...
(cselib_process_insn): ... here.
* var-tracking.c (replace_expr_with_values, use_type): Pass MEM mode
to cselib_lookup.
(add_uses): Likewise, also to cselib_subst_to_values.
(add_stores): Likewise.
* sched-deps.c 	(add_insn_mem_dependence): Pass mode to
cselib_subst_to_values.
(sched_analyze_1, sched_analyze_2): Likewise.  Adjusted.
* gcse.c (do_local_cprop): Adjusted.
* postreload.c (reload_cse_simplify_set): Adjusted.
(reload_cse_simplify_operands): Adjusted.
* sel-sched-dump (debug_mem_addr_value): Pass mode.

From-SVN: r169782
2011-02-03 06:04:04 +00:00
..
ada re PR other/47467 (hwint.h:239:3: error: implicit declaration of function 'abs') 2011-01-26 22:10:23 +00:00
c-family re PR c/47473 (Incorrect computation with complex numbers when using -std=c99) 2011-01-26 21:06:57 +01:00
config Fix PR target/47272 2011-02-03 05:42:19 +00:00
cp re PR c++/47416 (ICE in build_data_member_initialization, at cp/semantics.c:5509) 2011-01-31 21:19:25 +01:00
doc Fix PR target/47272 2011-02-03 05:42:19 +00:00
fortran re PR fortran/47082 ([OOP] ICE in gfc_conv_component_ref) 2011-02-02 19:51:03 +00:00
ginclude re PR bootstrap/47147 (gcc 4.6 fails to compile on NetBSD) 2011-01-29 22:15:52 +00:00
go configure.ac (gcc_cv_ld_static_option): Define. 2011-01-31 13:52:42 +00:00
java re PR bootstrap/47215 (Failed to bootstrap) 2011-01-21 10:05:14 +01:00
lto re PR lto/45721 (ICE: in function_and_variable_visibility, at ipa.c:673 with -flto) 2011-01-11 17:29:52 +00:00
objc In gcc/objc/: 2011-01-17 Nicola Pero <nicola.pero@meta-innovation.com> 2011-01-17 22:17:47 +00:00
objcp Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
po * ja.po: Update. 2011-01-28 15:11:34 +00:00
testsuite re PR tree-optimization/45122 (-funsafe-loop-optimizations causes FAIL: gcc.c-torture/execute/pr27285.c execution) 2011-02-03 06:01:40 +00:00
ABOUT-GCC-NLS
BASE-VER
COPYING
COPYING.LIB
COPYING3
COPYING3.LIB
ChangeLog re PR debug/43092 (Wrong debuginfo with VTA and -fomit-frame-pointer/-mno-accumulate-outgoing-args) 2011-02-03 06:04:04 +00:00
ChangeLog-1997
ChangeLog-1998
ChangeLog-1999
ChangeLog-2000
ChangeLog-2001
ChangeLog-2002
ChangeLog-2003
ChangeLog-2004
ChangeLog-2005
ChangeLog-2006
ChangeLog-2007
ChangeLog-2008
ChangeLog-2009
ChangeLog-2010 re PR target/45258 (linkage on -ldl, -lm and -lpthread should be purged from darwin build) 2011-01-10 19:41:39 +00:00
ChangeLog.dataflow
ChangeLog.graphite Add testcase for PR43567. 2011-01-25 21:24:35 +00:00
ChangeLog.lib
ChangeLog.ptr
ChangeLog.tree-ssa
ChangeLog.tuples
DATESTAMP Daily bump. 2011-02-03 00:18:15 +00:00
DEV-PHASE
FSFChangeLog
FSFChangeLog.10
FSFChangeLog.11
LANGUAGES
Makefile.in re PR target/40125 (libgcc_s DLL installed in wrong directory in cross toolchain) 2011-01-26 04:19:58 +00:00
ONEWS
README.Portability
acinclude.m4
aclocal.m4 configure: Regenerate. 2010-09-03 13:16:24 +00:00
addresses.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
alias.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
alias.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
alloc-pool.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
alloc-pool.h
attribs.c re PR target/44290 (__naked attribute is broken) 2010-07-23 14:47:46 +00:00
auto-inc-dec.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
basic-block.h re PR rtl-optimization/44374 (Hoist same instructions in different branches) 2010-12-14 00:23:40 +00:00
bb-reorder.c re PR middle-end/45458 (ICE: in add_labels_and_missing_jumps, at bb-reorder.c:1306 with-fnon-call-exceptions -freorder-blocks-and-partition -fprofile-use) 2010-09-01 21:46:21 +02:00
bb-reorder.h Makefile.in (bb-reorder.o, [...]): Depend on bb-reorder.h 2010-07-12 19:04:11 +00:00
bitmap.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
bitmap.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
bt-load.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
builtin-attrs.def Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
builtin-types.def Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
builtins.c re PR middle-end/47566 (ICE in vn_reference_lookup) 2011-02-02 09:59:23 +00:00
builtins.def tree.c (build_common_builtin_nodes): Do not initialize BUILT_IN_PROFILE_FUNC_ENTER and BUILT_IN_PROFILE_FUNC_EXIT. 2010-12-01 16:45:36 +00:00
builtins.h Makefile.in (target-globals.o): Depend on builtins.h. 2010-07-12 19:03:35 +00:00
c-aux-info.c c-aux-info.c (gen_formal_list_for_type): Use prototype_p. 2010-12-22 19:45:58 +00:00
c-config-lang.in Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
c-convert.c re PR c/47150 (ICE in gimplify_expr at gimplify.c) 2011-01-06 11:37:02 +01:00
c-decl.c re PR tree-optimization/26854 (Inordinate compile times on large routines) 2011-01-26 01:26:48 +00:00
c-errors.c
c-lang.c In gcc/: 2010-10-20 Nicola Pero <nicola.pero@meta-innovation.com> 2010-10-20 09:08:57 +00:00
c-lang.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
c-objc-common.c langhooks-def.h (lhd_init_options, [...]): New. 2010-07-27 10:59:51 +01:00
c-objc-common.h Makefile.in (TM_H): Include $(FLAGS_H) instead of options.h. 2010-10-08 16:17:32 +01:00
c-parser.c c-parser.c (c_parser_for_statement): Initialize collection_expression. 2011-01-19 21:59:47 +00:00
c-tree.h c-aux-info.c (gen_formal_list_for_type): Use prototype_p. 2010-12-22 19:45:58 +00:00
c-typeck.c In gcc/: 2011-01-26 Nicola Pero <nicola.pero@meta-innovation.com> 2011-01-27 02:09:13 +00:00
caller-save.c re PR rtl-optimization/41619 (ICE in insert_save (caller-save.c) for SPEC CPU2000's 252.eon) 2011-01-21 09:49:31 -07:00
calls.c builtins.c (std_gimplify_va_arg_expr): Use targetm.calls.function_arg_boundary. 2010-11-16 14:25:07 +00:00
cfg.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
cfganal.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
cfgbuild.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
cfgcleanup.c re PR rtl-optimization/44469 (internal compiler error: in fixup_reorder_chain, at cfglayout.c:797) 2011-01-26 21:11:57 +00:00
cfgexpand.c re PR debug/47106 (-fcompare-debug failure (length) with -fpartial-inlining -flto -fconserve-stack) 2011-02-02 06:18:01 +00:00
cfghooks.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
cfghooks.h
cfglayout.c re PR rtl-optimization/46777 (ICE: in rtl_verify_flow_info, at cfgrtl.c:2164 with -O -fgcse -fno-tree-dominator-opts -funroll-loops) 2010-12-06 20:28:09 +01:00
cfglayout.h
cfgloop.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
cfgloop.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
cfgloopanal.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
cfgloopmanip.c re PR tree-optimization/46107 (-ftree-loop-distribute-patterns caused verify_loop_structure problem) 2010-11-03 10:49:16 +01:00
cfgrtl.c mode-switching.c (optimize_mode_switching): Use FOR_BB_INSNS instead of open-coded for loop. 2010-11-19 19:56:01 +01:00
cgraph.c re PR tree-optimization/47237 (builtin_apply_args broken WRT local ABI changes.) 2011-01-26 14:06:20 +00:00
cgraph.h re PR tree-optimization/47237 (builtin_apply_args broken WRT local ABI changes.) 2011-01-26 14:06:20 +00:00
cgraphbuild.c re PR lto/47423 (Many testsuite failures caused by missing gxx_visibility_sj0) 2011-01-26 11:29:42 +00:00
cgraphunit.c re PR middle-end/46949 (ICE when weakref is used on a definition (internal compiler error: in function_and_variable_visibility, at ipa.c:904)) 2011-01-27 16:16:34 +00:00
cif-code.def Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
collect2-aix.c system.h: Include "safe-ctype.h" instead of <safe-ctype.h>. 2010-11-29 14:09:41 +00:00
collect2-aix.h
collect2.c re PR lto/47188 (Undefined reference errors when combining IR and non-IR object files) 2011-01-06 18:50:20 +00:00
collect2.h collect2.c (vflag): Change type from int to bool. 2010-04-29 17:42:54 +00:00
combine-stack-adj.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
combine.c re PR rtl-optimization/46878 (V850 ICE in in maybe_add_or_update_dep_1, at sched-deps.c:854) 2011-01-26 17:03:47 -05:00
common.opt Use Alias in common.opt to make -ftree-loop-linear an alias of -floop-interchange. 2011-01-31 19:30:55 +00:00
compare-elim.c compare-elim.c (maybe_select_cc_mode): Add ATTRIBUTE_UNUSED markers. 2011-01-23 14:27:33 +00:00
conditions.h
config.build config.build (alpha*-dec-osf4*): Remove. 2010-04-12 18:36:30 +00:00
config.gcc pa-hpux10.opt: New. 2011-02-03 02:13:31 +00:00
config.host config.host: Update copyright year. 2010-10-07 21:04:47 +00:00
config.in configure.ac (gcc_cv_ld_static_option): Define. 2011-01-31 13:52:42 +00:00
configure configure.ac (gcc_cv_ld_eh_frame_hdr): Update minimal Sun ld version number. 2011-01-31 14:07:45 +00:00
configure.ac configure.ac (gcc_cv_ld_eh_frame_hdr): Update minimal Sun ld version number. 2011-01-31 14:07:45 +00:00
convert.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
convert.h
coretypes.h tree.h (DECL_HAS_IMPLICIT_SECTION_NAME_P): New macro. 2010-11-23 16:06:37 +00:00
coverage.c * coverage.c (ctr_labels): Delete. 2010-08-10 19:27:18 +00:00
coverage.h
cppbuiltin.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
cppbuiltin.h cppbuiltin.c: New file. 2010-10-03 19:00:55 +00:00
cppdefault.c system.h: Include "safe-ctype.h" instead of <safe-ctype.h>. 2010-11-29 14:09:41 +00:00
cppdefault.h
cppspec.c Makefile.in (gccspec.o, cppspec.o): Update dependencies. 2010-08-22 13:19:01 +01:00
crtstuff.c configure.ac (gcc_cv_ld_eh_frame_hdr): Only check GNU ld for --eh-frame-hdr. 2010-12-23 12:08:21 +00:00
cse.c cse.c (is_dead_reg): Change into inline function that is not called through for_each_rtx. 2010-10-14 09:17:54 +02:00
cselib.c re PR debug/43092 (Wrong debuginfo with VTA and -fomit-frame-pointer/-mno-accumulate-outgoing-args) 2011-02-03 06:04:04 +00:00
cselib.h re PR debug/43092 (Wrong debuginfo with VTA and -fomit-frame-pointer/-mno-accumulate-outgoing-args) 2011-02-03 06:04:04 +00:00
cstamp-h.in
dbgcnt.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
dbgcnt.def Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
dbgcnt.h
dbxout.c re PR debug/46724 (Wrong debug info: Invalid variable location) 2010-12-22 03:49:00 +00:00
dbxout.h
dce.c re PR rtl-optimization/47337 (Wrong RTL dce of calls) 2011-01-19 16:13:01 +01:00
dce.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
ddg.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
ddg.h
debug.c godump.c: New file. 2010-11-15 21:38:40 +00:00
debug.h godump.c: New file. 2010-11-15 21:38:40 +00:00
defaults.h system.h: Include "safe-ctype.h" instead of <safe-ctype.h>. 2010-11-29 14:09:41 +00:00
df-core.c re PR rtl-optimization/44374 (Hoist same instructions in different branches) 2010-12-14 00:23:40 +00:00
df-problems.c re PR libgomp/47464 (Many gomp failures) 2011-01-26 15:45:04 -07:00
df-scan.c re PR rtl-optimization/47525 (DCE fails to eliminate a dead call to a pure function when compiled with -maltivec) 2011-02-02 14:08:06 -06:00
df.h re PR rtl-optimization/44374 (Hoist same instructions in different branches) 2010-12-14 00:23:40 +00:00
dfp.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
dfp.h
diagnostic-core.h diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
diagnostic.c re PR c/44782 (implement -ferror-limit=) 2010-11-12 03:38:15 +00:00
diagnostic.def
diagnostic.h re PR c/44782 (implement -ferror-limit=) 2010-11-12 03:38:15 +00:00
dojump.c double-int.h (double_int_ior): New function. 2010-05-20 00:09:57 +04:00
dominance.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
domwalk.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
domwalk.h
double-int.c hwint.c: New. 2010-11-30 16:36:19 +00:00
double-int.h Fix PR/46316 2010-11-09 02:01:06 +00:00
dse.c re PR debug/43092 (Wrong debuginfo with VTA and -fomit-frame-pointer/-mno-accumulate-outgoing-args) 2011-02-03 06:04:04 +00:00
dse.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
dwarf2asm.c dwarf2asm.c (dw2_output_indirect_constant_1): Set DECL_ASSEMBLER_NAME to prevent mangling with lto frontend. 2010-12-04 22:01:32 +00:00
dwarf2asm.h This patch adds the end prologue and begin epilogue markers in Dwarf2 2010-06-16 19:40:46 +00:00
dwarf2out.c re PR c++/47291 (ICE: SIGSEGV in size_binop_loc (fold-const.c:1427) with -g) 2011-01-19 23:57:47 +01:00
dwarf2out.h re PR middle-end/45484 (Invalid memory access in gcc.c-torture/execute/builtins/sprintf-chk.c) 2010-09-03 16:46:39 +02:00
ebitmap.c bitmap.c: Delete unnecessary includes. 2010-11-16 13:57:21 +00:00
ebitmap.h
emit-rtl.c emit-rtl.c (reg_attrs_htab_hash): Replace long by intptr_t. 2011-01-24 19:49:20 +01:00
emit-rtl.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
emutls.c
errors.c
errors.h
et-forest.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
et-forest.h system.h: Include "safe-ctype.h" instead of <safe-ctype.h>. 2010-11-29 14:09:41 +00:00
except.c re PR middle-end/47401 (Support for must-not-throw regions with SJLJ exceptions broken) 2011-01-22 21:24:54 +00:00
except.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
exec-tool.in Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
explow.c re PR middle-end/46894 (vector tests fail on powerpc 32-bit) 2011-01-18 21:29:11 +00:00
expmed.c re PR rtl-optimization/47299 (Widening multiply optimization generates bad code) 2011-01-18 08:45:12 +01:00
expmed.h expmed.h (MAX_BITS_PER_WORD): Move to... 2010-07-13 19:48:58 +00:00
expr.c re PR target/42894 (Invalid rtl sharing in Thumb1.) 2011-01-28 20:36:44 +01:00
expr.h expr.c (emit_group_load_1): Update calls to extract_bit_field. 2010-10-22 00:40:15 +00:00
final.c re PR debug/47498 (-fcompare-debug failure with -fsched2-use-superblocks) 2011-02-02 04:31:35 +00:00
fixed-value.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
fixed-value.h
flag-types.h common.opt (user_vect_verbosity_level): New Variable entry. 2010-11-24 13:28:38 +00:00
flags.h common.opt (flag_stack_check): New Variable entry. 2010-12-01 13:58:52 +00:00
fold-const.c hwint.c: New. 2010-11-30 16:36:19 +00:00
fp-test.c
function.c re PR debug/47079 (FAIL: gcc.dg/guality/nrv-1.c) 2011-01-19 22:00:00 +00:00
function.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
fwprop.c re PR rtl-optimization/47366 (ICE: verify_flow_info failed: missing REG_EH_REGION note in the end of bb 3 with -fnon-call-exceptions -fno-tree-ccp -fno-tree-forwprop) 2011-01-21 20:34:03 +01:00
gbl-ctors.h
gcc-plugin.h Include coretypes.h in gcc-plugin.h & Add hard-reg-set.h in FUNCTION_H. 2010-11-30 07:13:29 +00:00
gcc.c configure.ac (gcc_cv_ld_static_option): Define. 2011-01-31 13:52:42 +00:00
gcc.h Makefile.in (gccspec.o, cppspec.o): Update dependencies. 2010-08-22 13:19:01 +01:00
gccspec.c Makefile.in (gccspec.o, cppspec.o): Update dependencies. 2010-08-22 13:19:01 +01:00
gcov-dump.c gcc.c (process_command): Update copyright notice dates. 2011-01-03 17:14:57 +01:00
gcov-io.c
gcov-io.h
gcov-iov.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
gcov.c gcc.c (process_command): Update copyright notice dates. 2011-01-03 17:14:57 +01:00
gcse.c re PR debug/43092 (Wrong debuginfo with VTA and -fomit-frame-pointer/-mno-accumulate-outgoing-args) 2011-02-03 06:04:04 +00:00
gcse.h Makefile.in (gcse.o, [...]): Depend on gcse.h.. 2010-07-12 19:04:03 +00:00
gdbinit.in Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
genattr.c vec.h (FOR_EACH_VEC_ELT): Define. 2010-08-20 12:48:59 +00:00
genattrtab.c hwint.c: New. 2010-11-30 16:36:19 +00:00
genautomata.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
gencheck.c
genchecksum.c Build compiler checksum from object files v2 2010-10-11 13:06:50 +00:00
gencodes.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
genconditions.c hwint.c: New. 2010-11-30 16:36:19 +00:00
genconfig.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
genconstants.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
genemit.c hwint.c: New. 2010-11-30 16:36:19 +00:00
genenums.c re PR bootstrap/44512 (--enable-build-with-cxx bootstrap fails in revision 160669) 2010-07-05 21:18:07 +01:00
genextract.c hwint.c: New. 2010-11-30 16:36:19 +00:00
genflags.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
gengenrtl.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
gengtype-lex.l Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
gengtype-parse.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
gengtype-state.c gengtype-state.c (read_state_structures): Initialize "previous". 2010-11-25 22:50:53 +01:00
gengtype.c gentype-state.c: Add new file. 2010-11-25 19:03:27 +00:00
gengtype.h gentype-state.c: Add new file. 2010-11-25 19:03:27 +00:00
genhooks.c system.h: Include "safe-ctype.h" instead of <safe-ctype.h>. 2010-11-29 14:09:41 +00:00
genmddeps.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
genmodes.c tm.texi.in (OVERRIDE_OPTIONS): Remove documentation. 2010-09-16 12:59:39 +01:00
genmultilib
genopinit.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
genoutput.c hwint.c: New. 2010-11-30 16:36:19 +00:00
genpeep.c hwint.c: New. 2010-11-30 16:36:19 +00:00
genpreds.c hwint.c: New. 2010-11-30 16:36:19 +00:00
genrecog.c hwint.c: New. 2010-11-30 16:36:19 +00:00
gensupport.c gensupport.c (MNEMONIC_ATTR_NAME, [...]): New macros. 2010-11-16 15:33:53 +00:00
gensupport.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
ggc-common.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
ggc-internal.h utils.c (init_gnat_to_gnu): Use typed GC allocation. 2010-06-08 07:25:24 +00:00
ggc-none.c ggc-zone.c (ggc_pch_read): Fix conditional compilation. 2010-11-30 04:12:56 +00:00
ggc-page.c hwint.c: New. 2010-11-30 16:36:19 +00:00
ggc-zone.c hwint.c: New. 2010-11-30 16:36:19 +00:00
ggc.h utils.c (init_gnat_to_gnu): Use typed GC allocation. 2010-06-08 07:25:24 +00:00
gimple-fold.c re PR tree-optimization/47382 (g++.dg/ipa/devirt-d-1.C FAILs with -finline-functions) 2011-01-25 18:08:47 +01:00
gimple-iterator.c basic-block.h (single_succ_edge): Use gcc_checking_assert. 2010-10-21 13:08:28 +00:00
gimple-low.c re PR debug/47106 (-fcompare-debug failure (length) with -fpartial-inlining -flto -fconserve-stack) 2011-02-02 05:44:38 +00:00
gimple-pretty-print.c gimple-pretty-print.c (dump_bb_header): Add check for cfun. 2010-11-22 19:01:20 +00:00
gimple-pretty-print.h gimplify.c: Do not include except.h and optabs.h. 2010-06-01 22:00:56 +00:00
gimple.c re PR c++/44871 (Invalid type mismatches while merging C and C++ sources) 2010-12-02 12:24:46 +00:00
gimple.def Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
gimple.h re PR tree-optimization/45934 (g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions) 2010-12-22 13:56:54 +01:00
gimplify.c gimplify.c (gimple_tree_eq): Assert hashes are equal only when checking is enabled. 2010-12-08 16:14:29 +00:00
glimits.h
godump.c godump.c (go_define): Ignore macros whose definitions include two adjacent operands. 2011-01-29 02:32:28 +00:00
graph.c system.h: Include "safe-ctype.h" instead of <safe-ctype.h>. 2010-11-29 14:09:41 +00:00
graph.h
graphds.c
graphds.h
graphite-blocking.c Do not include unnecessary .h files. 2010-12-28 17:09:16 +00:00
graphite-clast-to-gimple.c Use diagnostic-core.h instead of diagnostic.h. 2010-12-29 05:26:17 +00:00
graphite-clast-to-gimple.h Introduce compatibility to newer CLooG's CloogState and mask the use with macros where possible. 2010-08-11 20:30:41 +00:00
graphite-cloog-compat.h New flag: -fgraphite-dump-cloog. 2010-09-30 21:21:21 +00:00
graphite-cloog-util.c Do not include unnecessary .h files. 2010-12-28 17:09:16 +00:00
graphite-cloog-util.h Enable graphite to read an OpenScop file. 2010-09-30 21:17:12 +00:00
graphite-dependences.c Allow several reductions in a reduction PBB. 2011-01-25 06:47:21 +00:00
graphite-dependences.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
graphite-flattening.c Do not include unnecessary .h files. 2010-12-28 17:09:16 +00:00
graphite-interchange.c Test the profitability of interchange on the perfect nest. 2011-01-25 06:45:04 +00:00
graphite-poly.c Fix pbb_remove_duplicate_pdrs. 2011-01-25 06:45:16 +00:00
graphite-poly.h Relax the definition of same_pdr_p. 2011-01-25 06:46:56 +00:00
graphite-ppl.c Pass 0 as the number of parameters to PIP when testing for integer feasibility. 2011-01-25 06:46:43 +00:00
graphite-ppl.h Pass 0 as the number of parameters to PIP when testing for integer feasibility. 2011-01-25 06:46:43 +00:00
graphite-scop-detection.c Pass to dr_analyze_indices the analysis loop for subscripts. 2011-01-25 06:48:32 +00:00
graphite-scop-detection.h
graphite-sese-to-poly.c Do not use a data ref with indices invalid in the loop of the close_phi. 2011-01-25 06:48:52 +00:00
graphite-sese-to-poly.h Postpone the rewrite out of SSA to the end of the translation to polyhedral representation. 2010-12-01 17:25:10 +00:00
graphite.c Use diagnostic-core.h instead of diagnostic.h. 2010-12-29 05:26:17 +00:00
gsstruct.def Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
gstab.h
gsyms.h
gsyslimits.h
gthr-aix.h
gthr-dce.h
gthr-gnat.c
gthr-gnat.h
gthr-lynx.h
gthr-mipssde.h
gthr-nks.h
gthr-posix.c
gthr-posix.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
gthr-posix95.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
gthr-rtems.h
gthr-single.h
gthr-solaris.h
gthr-tpf.h
gthr-vxworks.h
gthr-win32.h
gthr.h
haifa-sched.c re PR debug/47498 (-fcompare-debug failure with -fsched2-use-superblocks) 2011-02-02 04:31:35 +00:00
hard-reg-set.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
highlev-plugin-common.h
hooks.c target.def (supports_split_stack, [...]): Take gcc_options parameters. 2010-11-25 13:16:03 +00:00
hooks.h target.def (supports_split_stack, [...]): Take gcc_options parameters. 2010-11-25 13:16:03 +00:00
host-default.c
hosthooks-def.h
hosthooks.h
hwint.c hwint.c: New. 2010-11-30 16:36:19 +00:00
hwint.h Remove the lambda framework and make -ftree-loop-linear an alias of -floop-interchange. 2011-01-25 21:24:23 +00:00
ifcvt.c re PR rtl-optimization/44374 (Hoist same instructions in different branches) 2010-12-14 00:23:40 +00:00
implicit-zee.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
incpath.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
incpath.h
init-regs.c
input.c input.c: New file. 2010-05-27 12:33:27 +01:00
input.h tree.h (struct call_expr_arg_iterator_d): Remove GTY tag. 2010-12-03 04:11:10 +00:00
insn-addr.h
insn-notes.def
integrate.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
integrate.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
intl.c intl.c: Don't include tm.h. 2010-12-01 17:29:12 +00:00
intl.h
ipa-cp.c re PR tree-optimization/47237 (builtin_apply_args broken WRT local ABI changes.) 2011-01-26 14:06:20 +00:00
ipa-inline.c re PR tree-optimization/47237 (builtin_apply_args broken WRT local ABI changes.) 2011-01-26 14:06:20 +00:00
ipa-prop.c common.opt (fdevirtualize): New flag. 2011-01-15 00:19:08 +01:00
ipa-prop.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
ipa-pure-const.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
ipa-ref-inline.h cgraphbuild.c (record_reference_ctx): Add varpool_node. 2010-05-06 08:39:32 +00:00
ipa-ref.c cgraph.c (cgraph_edge_cannot_lead_to_return): Also check if caller is noreturn. 2010-06-07 15:33:34 +00:00
ipa-ref.h cgraph.c (cgraph_edge_cannot_lead_to_return): Also check if caller is noreturn. 2010-06-07 15:33:34 +00:00
ipa-reference.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
ipa-reference.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
ipa-split.c re PR tree-optimization/47237 (builtin_apply_args broken WRT local ABI changes.) 2011-01-26 14:06:20 +00:00
ipa-struct-reorg.c hwint.c: New. 2010-11-30 16:36:19 +00:00
ipa-struct-reorg.h
ipa-type-escape.c c-aux-info.c (gen_formal_list_for_type): Use prototype_p. 2010-12-22 19:45:58 +00:00
ipa-type-escape.h
ipa-utils.c
ipa-utils.h
ipa.c re PR tree-optimization/47276 (ICE in function_and_variable_visibility, at ipa.c:857 during compiling glibc.) 2011-01-15 15:44:56 +00:00
ira-build.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
ira-color.c hwint.c: New. 2010-11-30 16:36:19 +00:00
ira-conflicts.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
ira-costs.c re PR rtl-optimization/37273 (IRA does not re-materializes addresses (loads from the TOC)) 2011-01-25 07:10:46 -07:00
ira-emit.c re PR fortran/42169 (gfortran.dg/pr41928.f90:47: internal compiler error: in store_can_be_removed_p, at ira-emit.c:371) 2010-10-20 13:51:31 +00:00
ira-int.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
ira-lives.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
ira.c re PR rtl-optimization/46755 (ICE: in calc_dfs_tree, at dominance.c:395 with -O) 2010-12-21 14:55:41 +00:00
ira.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
jump.c re PR debug/46756 (-fcompare-debug failure (length) with ASSIGN) 2010-12-13 03:08:24 +00:00
langhooks-def.h invoke.texi (-dy): Remove. 2010-11-17 14:31:07 +00:00
langhooks.c invoke.texi (-dy): Remove. 2010-11-17 14:31:07 +00:00
langhooks.h invoke.texi (-dy): Remove. 2010-11-17 14:31:07 +00:00
lcm.c re PR rtl-optimization/39077 (GCSE-optimization causes enormous binary size increase (~20 times !)) 2011-01-13 06:41:03 -07:00
libfuncs.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
libgcc-libsystem.ver
libgcc-std.ver common.opt (fsplit-stack): New option. 2010-09-27 19:48:20 +00:00
libgcc2.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
libgcc2.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
libgcov.c re PR bootstrap/47055 ("make profiledbootstrap" fails on MSYS/mingw-w64) 2011-01-04 19:05:06 +01:00
limitx.h
limity.h
lists.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
longlong.h mn10300: Add support in longlong.h. 2011-01-19 11:36:42 -08:00
loop-doloop.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
loop-init.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
loop-invariant.c vec.h (FOR_EACH_VEC_ELT): Define. 2010-08-20 12:48:59 +00:00
loop-iv.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
loop-unroll.c loop-unroll.c (analyze_insn_to_expand_var): Accept 2010-11-15 15:20:13 -08:00
loop-unswitch.c loop-unswitch.c (compare_and_jump_seq): Assert that the last insn in the sequence is a jump insn before setting its label. 2010-06-24 10:01:57 +00:00
lower-subreg.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
lto-cgraph.c re PR tree-optimization/47237 (builtin_apply_args broken WRT local ABI changes.) 2011-01-26 14:06:20 +00:00
lto-compress.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
lto-compress.h
lto-opts.c re PR lto/45375 ([meta-bug] Issues with building Mozilla (i.e. Firefox) with LTO) 2011-01-07 18:21:00 +00:00
lto-section-in.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
lto-section-out.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
lto-streamer-in.c re PR lto/46083 (gcc.dg/initpri1.c FAILs with -flto/-fwhopr (attribute constructor/destructor doesn't work)) 2011-01-10 21:54:33 +00:00
lto-streamer-out.c re PR lto/47259 (LTO and global register variable) 2011-01-12 15:01:09 +00:00
lto-streamer.c tree.c (tree_node_structure_for_code): TRANSLATION_UNIT_DECL is TS_TRANSLATION_UNIT_DECL. 2010-09-16 09:38:13 +00:00
lto-streamer.h re PR driver/46760 (LTO bootstrap doesn't work with FDO) 2010-12-04 19:35:23 +00:00
lto-symtab.c Remove the lambda framework and make -ftree-loop-linear an alias of -floop-interchange. 2011-01-25 21:24:23 +00:00
lto-wrapper.c Check HOST_BIT_BUCKET when settting dump base/dir. 2011-02-01 06:42:08 -08:00
machmode.def machmode.def: Fixed comments. 2011-01-24 20:08:06 +00:00
machmode.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
main.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
matrix-reorg.c hwint.c: New. 2010-11-30 16:36:19 +00:00
mcf.c
mips-tdump.c gcc.c (process_command): Update copyright notice dates. 2011-01-03 17:14:57 +01:00
mips-tfile.c gcc.c (process_command): Update copyright notice dates. 2011-01-03 17:14:57 +01:00
mkconfig.sh Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
mkmap-flat.awk
mkmap-symver.awk
mode-classes.def
mode-switching.c mode-switching.c (optimize_mode_switching): Use FOR_BB_INSNS instead of open-coded for loop. 2010-11-19 19:56:01 +01:00
modulo-sched.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
omega.c Remove the lambda framework and make -ftree-loop-linear an alias of -floop-interchange. 2011-01-25 21:24:23 +00:00
omega.h
omp-builtins.def re PR middle-end/45838 (FAIL: libgomp.c/pr34513.c execution test) 2010-10-06 09:47:28 +02:00
omp-low.c hwint.c: New. 2010-11-30 16:36:19 +00:00
opt-functions.awk options.texi (Enum, EnumValue): Document new record types. 2010-11-26 23:18:28 +00:00
opt-gather.awk
opt-include.awk Add PowerPC target attribute/pragma support 2010-11-19 17:27:18 +00:00
optabs.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
optabs.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
optc-gen.awk options.texi (Enum, EnumValue): Document new record types. 2010-11-26 23:18:28 +00:00
opth-gen.awk options.texi (Enum, EnumValue): Document new record types. 2010-11-26 23:18:28 +00:00
opts-common.c options.texi (Enum, EnumValue): Document new record types. 2010-11-26 23:18:28 +00:00
opts-diagnostic.h diagnostic.c: Don't include opts.h. 2010-05-26 14:40:53 +01:00
opts-global.c common.opt (main_input_filename, [...]): New Variable entries. 2010-12-01 13:46:36 +00:00
opts.c Check HOST_BIT_BUCKET when settting dump base/dir. 2011-02-01 06:42:08 -08:00
opts.h options.texi (Enum, EnumValue): Document new record types. 2010-11-26 23:18:28 +00:00
output.h allow the target to label code fragments generated by partitioning. 2011-01-07 13:57:45 +00:00
params.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
params.def Fix PR47576 and PR47555: add PARAM_SCEV_MAX_EXPR_COMPLEXITY. 2011-02-02 15:52:08 +00:00
params.h re PR rtl-optimization/39077 (GCSE-optimization causes enormous binary size increase (~20 times !)) 2011-01-13 06:41:03 -07:00
passes.c Fix PR40979 and PR47044: after LIM call copy_prop and DCE to clean up. 2011-02-02 15:52:21 +00:00
plugin.c re PR c/46902 (gcc.dg/plugin/plugindir*.c gives ICEs on powerpc-apple-darwin9) 2011-01-09 12:41:33 +00:00
plugin.def
plugin.h opts-common.c (handle_option, [...]): Add diagnostic_context parameter. 2010-10-05 15:28:39 +01:00
pointer-set.c
pointer-set.h
postreload-gcse.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
postreload.c re PR debug/43092 (Wrong debuginfo with VTA and -fomit-frame-pointer/-mno-accumulate-outgoing-args) 2011-02-03 06:04:04 +00:00
predict.c re PR target/43884 (Performance degradation for simple fibonacci numbers calculation) 2011-01-22 21:47:40 +00:00
predict.def
predict.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
prefix.c
prefix.h
pretty-print.c Makefile.in (READ_MD_H): New variable. 2010-06-10 20:21:23 +00:00
pretty-print.h toplev.h: Do not include diagnostic-core.h. 2010-07-08 04:22:54 +00:00
print-rtl.c re PR middle-end/45234 (ICE in expand_call, at calls.c:2845 when passing aligned function argument from unaligned stack after alloca) 2010-09-24 16:37:02 +02:00
print-tree.c * print-tree.c (print_node): Print in-constant-pool. 2010-09-27 10:16:44 +00:00
profile.c re PR lto/45375 ([meta-bug] Issues with building Mozilla (i.e. Firefox) with LTO) 2011-01-10 23:37:11 +00:00
profile.h
read-md.c md.texi (define_enum_attr): Document. 2010-06-10 20:24:17 +00:00
read-md.h md.texi (define_enum_attr): Document. 2010-06-10 20:24:17 +00:00
read-rtl.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
real.c hwint.c: New. 2010-11-30 16:36:19 +00:00
real.h real: Do not include gmp.h, mpfr.h, and mpc.h. 2010-05-21 18:13:54 +00:00
realmpfr.c real: Do not include gmp.h, mpfr.h, and mpc.h. 2010-05-21 18:13:54 +00:00
realmpfr.h real: Do not include gmp.h, mpfr.h, and mpc.h. 2010-05-21 18:13:54 +00:00
recog.c hwint.c: New. 2010-11-30 16:36:19 +00:00
recog.h New -fcompare-elim pass. 2011-01-22 11:35:10 -08:00
reg-notes.def Describe unwinding for realigned frames explicitly. 2010-08-04 16:58:26 -07:00
reg-stack.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
regcprop.c Continue searching in find_oldest_value_reg on class match failure. 2010-12-17 14:51:25 -08:00
reginfo.c reginfo.c (struct subregs_of_mode_node): Remove. 2010-12-09 10:01:18 +00:00
regmove.c re PR rtl-optimization/46804 (gfortran.dg/char_cshift_2.f90 FAILs with -fregmove) 2010-12-10 17:40:51 +01:00
regrename.c regrename.c: Add general comment describing the pass. 2011-01-02 17:28:24 +00:00
regs.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
regset.h coretypes.h (struct simple_bitmap_def, [...]): New core types. 2010-05-22 22:24:53 +00:00
regstat.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
reload.c re PR target/47543 (ICE: in extract_insn, at recog.c:2109 when building zlib) 2011-02-02 09:52:21 -07:00
reload.h reload.h (register_move_cost, [...]): Adjust prototype. 2010-08-15 01:46:11 +04:00
reload1.c re PR rtl-optimization/47166 (SpecCpu2000 Ammp segfaults for ARM with -O3 -mthumb) 2011-01-23 21:11:24 +00:00
reorg.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
resource.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
resource.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
rtl-error.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
rtl-error.h toplev.h (_fatal_insn_not_found, [...]): Move declarations to rtl.h. 2010-06-30 17:12:36 +00:00
rtl.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
rtl.def Add fma support 2010-10-15 17:42:05 +00:00
rtl.h re PR debug/43092 (Wrong debuginfo with VTA and -fomit-frame-pointer/-mno-accumulate-outgoing-args) 2011-02-03 06:04:04 +00:00
rtlanal.c re PR debug/43092 (Wrong debuginfo with VTA and -fomit-frame-pointer/-mno-accumulate-outgoing-args) 2011-02-03 06:04:04 +00:00
rtlhooks-def.h
rtlhooks.c
sbitmap.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
sbitmap.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
sched-deps.c re PR debug/43092 (Wrong debuginfo with VTA and -fomit-frame-pointer/-mno-accumulate-outgoing-args) 2011-02-03 06:04:04 +00:00
sched-ebb.c re PR debug/47498 (-fcompare-debug failure with -fsched2-use-superblocks) 2011-02-02 04:31:35 +00:00
sched-int.h re PR debug/47498 (-fcompare-debug failure with -fsched2-use-superblocks) 2011-02-02 04:31:35 +00:00
sched-rgn.c re PR debug/47498 (-fcompare-debug failure with -fsched2-use-superblocks) 2011-02-02 04:31:35 +00:00
sched-vis.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
sdbout.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
sdbout.h
sel-sched-dump.c re PR debug/43092 (Wrong debuginfo with VTA and -fomit-frame-pointer/-mno-accumulate-outgoing-args) 2011-02-03 06:04:04 +00:00
sel-sched-dump.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
sel-sched-ir.c re PR rtl-optimization/47036 (ICE: in move_cond_jump, at sel-sched.c:4901 with -fschedule-insns -fselective-scheduling -fno-dce) 2010-12-24 17:19:23 +03:00
sel-sched-ir.h re PR rtl-optimization/45354 (ICE with -fselective-scheduling and -freorder-blocks-and-partition) 2010-12-03 15:04:16 +03:00
sel-sched.c re PR debug/45454 (ICE: in verify_target_availability, at sel-sched.c:1614) 2011-01-26 05:59:53 +00:00
sel-sched.h
sese.c Do not include unnecessary .h files. 2010-12-28 17:09:16 +00:00
sese.h Fix PR47019: parameters of a SCoP are SCEV analyzable. 2010-12-22 21:19:34 +00:00
simplify-rtx.c hwint.c: New. 2010-11-30 16:36:19 +00:00
sparseset.c
sparseset.h system.h: Include "safe-ctype.h" instead of <safe-ctype.h>. 2010-11-29 14:09:41 +00:00
sreal.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
sreal.h
ssaexpand.h
stab.def
stack-ptr-mod.c
statistics.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
statistics.h
stmt.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
stor-layout.c hwint.c: New. 2010-11-30 16:36:19 +00:00
store-motion.c toplev.h: Do not include diagnostic-core.h. 2010-07-08 04:22:54 +00:00
stringpool.c bitmap.c: Delete unnecessary includes. 2010-11-16 13:57:21 +00:00
sync-builtins.def Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
system.h re PR c/46902 (gcc.dg/plugin/plugindir*.c gives ICEs on powerpc-apple-darwin9) 2011-01-09 12:41:33 +00:00
target-def.h re PR other/44034 (target hooks are hard to maintain) 2010-06-29 19:22:00 +01:00
target-globals.c reginfo.c (init_reg_sets): Don't zero globals here. 2010-07-12 19:04:21 +00:00
target-globals.h Makefile.in (bb-reorder.o, [...]): Depend on bb-reorder.h 2010-07-12 19:04:11 +00:00
target.def New -fcompare-elim pass. 2011-01-22 11:35:10 -08:00
target.h re PR tree-optimization/47179 (SPU: errno misoptimization around malloc call) 2011-01-14 15:02:20 +00:00
targhooks.c re PR tree-optimization/47179 (SPU: errno misoptimization around malloc call) 2011-01-14 15:02:20 +00:00
targhooks.h re PR tree-optimization/47179 (SPU: errno misoptimization around malloc call) 2011-01-14 15:02:20 +00:00
timevar.c system.h: Include "safe-ctype.h" instead of <safe-ctype.h>. 2010-11-29 14:09:41 +00:00
timevar.def timevar.def (TV_IPA_OPT, [...]): New. 2010-11-17 15:18:08 +00:00
timevar.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
tlink.c system.h: Include "safe-ctype.h" instead of <safe-ctype.h>. 2010-11-29 14:09:41 +00:00
toplev.c Fix PR47561: print the Graphite flags. 2011-02-01 18:38:31 +00:00
toplev.h common.opt (main_input_filename, [...]): New Variable entries. 2010-12-01 13:46:36 +00:00
tracer.c
tree-affine.c re PR lto/46664 (Failed to build 481.wrf in SPEC CPU 2006 with LTO) 2010-11-26 12:42:41 +00:00
tree-affine.h
tree-browser.c Do not include unnecessary .h files. 2010-12-28 17:09:16 +00:00
tree-browser.def
tree-call-cdce.c basic-block.h (single_succ_edge): Use gcc_checking_assert. 2010-10-21 13:08:28 +00:00
tree-cfg.c Fixup formatting. 2011-01-19 23:52:57 +00:00
tree-cfgcleanup.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
tree-chrec.c Do not include unnecessary .h files. 2010-12-28 17:09:16 +00:00
tree-chrec.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
tree-complex.c basic-block.h (find_fallthru_edge): Define. 2010-10-21 02:33:33 +00:00
tree-data-ref.c Remove the lambda framework and make -ftree-loop-linear an alias of -floop-interchange. 2011-01-25 21:24:23 +00:00
tree-data-ref.h Remove the lambda framework and make -ftree-loop-linear an alias of -floop-interchange. 2011-01-25 21:24:23 +00:00
tree-dfa.c re PR bootstrap/47402 (Bootstrap comparison failure) 2011-01-21 22:11:24 +00:00
tree-diagnostic.c diagnostic.c: Don't include flags.h. 2010-05-24 19:55:44 +01:00
tree-diagnostic.h diagnostic.c: Don't include tm.h, tree.h, tm_p.h, langhooks.h or langhooks-def.h. 2010-05-21 23:34:26 +01:00
tree-dump.c tree-dump.c (dump_option_value_info): Add entry for TDF_CSELIB. 2011-02-01 15:12:26 +00:00
tree-dump.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
tree-eh.c re PR tree-optimization/47355 (ICE: verify_ssa failed with -O2 -fipa-cp-clone) 2011-01-21 16:15:40 +01:00
tree-emutls.c re PR middle-end/46510 (r166812 breaks bootstrap on x86_64-apple-darwin10) 2010-11-21 23:02:15 +00:00
tree-flow-inline.h re PR debug/47106 (-fcompare-debug failure (length) with -fpartial-inlining -flto -fconserve-stack) 2011-02-02 06:18:01 +00:00
tree-flow.h Remove the lambda framework and make -ftree-loop-linear an alias of -floop-interchange. 2011-01-25 21:24:23 +00:00
tree-if-conv.c Fix PR47271: only if-convert full writes. 2011-01-25 14:51:23 +00:00
tree-inline.c re PR debug/47106 (-fcompare-debug failure (length) with -fpartial-inlining -flto -fconserve-stack) 2011-02-02 06:28:22 +00:00
tree-inline.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
tree-into-ssa.c re PR debug/46240 (ice in maybe_register_def) 2011-01-19 22:07:14 +00:00
tree-iterator.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
tree-iterator.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
tree-loop-distribution.c tree-loop-distribution.c (tree_loop_distribution): Do not use freed memory. 2011-01-01 13:25:17 +00:00
tree-mudflap.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
tree-mudflap.h
tree-nested.c bootstrap-lto.mk (BOOT_ADAFLAGS): Delete. 2010-11-27 15:53:23 +00:00
tree-nomudflap.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
tree-nrv.c re PR debug/47106 (-fcompare-debug failure (length) with -fpartial-inlining -flto -fconserve-stack) 2011-02-02 06:18:01 +00:00
tree-object-size.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
tree-optimize.c timevar.def (TV_IPA_OPT, [...]): New. 2010-11-17 15:18:08 +00:00
tree-outof-ssa.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
tree-parloops.c Remove the lambda framework and make -ftree-loop-linear an alias of -floop-interchange. 2011-01-25 21:24:23 +00:00
tree-pass.h tree-dump.c (dump_option_value_info): Add entry for TDF_CSELIB. 2011-02-01 15:12:26 +00:00
tree-phinodes.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
tree-predcom.c Fix PR47002: memory leaks. 2010-12-23 16:25:52 +00:00
tree-pretty-print.c re PR debug/46307 (ICE with FMA_EXPR in DEBUG stmts) 2010-11-05 10:00:50 +01:00
tree-pretty-print.h gimplify.c: Do not include except.h and optabs.h. 2010-06-01 22:00:56 +00:00
tree-profile.c value-prof.c (value_prof_hooks): Remove. 2010-12-21 22:58:57 +00:00
tree-scalar-evolution.c Fix PR47576 and PR47555: add PARAM_SCEV_MAX_EXPR_COMPLEXITY. 2011-02-02 15:52:08 +00:00
tree-scalar-evolution.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
tree-sra.c re PR tree-optimization/47228 (wrong code with loop) 2011-01-27 14:41:51 +01:00
tree-ssa-address.c re PR middle-end/45534 (ICE in refs_may_alias_p_1, at tree-ssa-alias.c:1031) 2010-09-06 12:14:02 +00:00
tree-ssa-alias.c re PR rtl-optimization/47414 (wrong code with -O -freorder-blocks -fschedule-insns2 -fno-early-inlining -fstrict-aliasing -ftracer) 2011-01-25 09:55:54 +00:00
tree-ssa-alias.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
tree-ssa-ccp.c re PR tree-optimization/47538 (GNU Scientific Library miscompiled by gcc 4.6) 2011-01-31 17:52:22 +01:00
tree-ssa-coalesce.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
tree-ssa-copy.c Fix PR45230, PR45231, and PR45370: fold_stmt_inplace after replace_exp. 2010-12-08 23:01:40 +00:00
tree-ssa-copyrename.c re PR tree-optimization/47427 (ICE in process_constraint, at tree-ssa-structalias.c:2901) 2011-01-25 13:01:54 +01:00
tree-ssa-dce.c re PR tree-optimization/46498 (ICE: in eliminate_unnecessary_stmts, at tree-ssa-dce.c:1112 with -O -funsafe-math-optimizations -fno-tree-dominator-opts -fno-tree-reassoc) 2010-11-17 10:43:21 +00:00
tree-ssa-dom.c basic-block.h (single_succ_edge): Use gcc_checking_assert. 2010-10-21 13:08:28 +00:00
tree-ssa-dse.c re PR tree-optimization/47053 (ICE: verify_flow_info failed: BB 2 can not throw but has an EH edge with -O -fnon-call-exceptions) 2011-01-21 21:09:44 -07:00
tree-ssa-forwprop.c re PR tree-optimization/47265 (Error: SSA name in freelist but still referenced) 2011-01-25 20:50:56 +01:00
tree-ssa-ifcombine.c re PR tree-optimization/39874 (missing VRP (submission)) 2010-06-08 14:15:53 -04:00
tree-ssa-live.c re PR debug/47106 (-fcompare-debug failure (length) with -fpartial-inlining -flto -fconserve-stack) 2011-02-02 06:18:01 +00:00
tree-ssa-live.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
tree-ssa-loop-ch.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
tree-ssa-loop-im.c re PR tree-optimization/47559 (ICE: verify_stmts failed: statement marked for throw, but doesn't with -fnon-call-exceptions and noexcept) 2011-02-01 16:15:56 +00:00
tree-ssa-loop-ivcanon.c re PR tree-optimization/45605 (Missed devirtualization) 2010-09-20 15:48:42 +00:00
tree-ssa-loop-ivopts.c re PR tree-optimization/47086 (ICE: verify_flow_info failed: BB 3 can not throw but has an EH edge with -O -fexceptions -fnon-call-exceptions -ftrapv) 2011-01-11 07:10:54 -07:00
tree-ssa-loop-manip.c re PR middle-end/46885 (ICE: in gsi_insert_seq_nodes_after, at gimple-iterator.c:251 with -ftree-parallelize-loops -g) 2010-12-14 15:11:16 +01:00
tree-ssa-loop-niter.c re PR tree-optimization/45122 (-funsafe-loop-optimizations causes FAIL: gcc.c-torture/execute/pr27285.c execution) 2011-02-03 06:01:40 +00:00
tree-ssa-loop-prefetch.c Pass to dr_analyze_indices the analysis loop for subscripts. 2011-01-25 06:48:32 +00:00
tree-ssa-loop-unswitch.c re PR middle-end/43866 (wrong code with -fbounds-check -funswitch-loops) 2010-06-25 14:10:42 +02:00
tree-ssa-loop.c Fix PR40979 and PR47044: after LIM call copy_prop and DCE to clean up. 2011-02-02 15:52:21 +00:00
tree-ssa-math-opts.c re PR tree-optimization/46832 (internal compiler error: Segmentation fault) 2010-12-07 12:36:40 +00:00
tree-ssa-operands.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
tree-ssa-operands.h utils.c (init_gnat_to_gnu): Use typed GC allocation. 2010-06-08 07:25:24 +00:00
tree-ssa-phiopt.c re PR tree-optimization/46009 (?: vectorized, very similar if is not) 2010-11-03 16:18:50 +01:00
tree-ssa-phiprop.c re PR middle-end/45310 (ICE: verify_stmts failed: Dead STMT in EH table with -O1 -fnon-call-exceptions) 2010-12-21 15:02:02 +00:00
tree-ssa-pre.c re PR tree-optimization/47365 (wrong code with -O -ftree-pre) 2011-01-21 14:02:41 +00:00
tree-ssa-propagate.c re PR middle-end/46360 (ICE in release_defs, at tree-ssanames.c:313) 2010-11-09 12:54:32 +01:00
tree-ssa-propagate.h tree-ssa-propagate.h (struct prop_value_d, [...]): Move ... 2010-08-04 12:29:48 +00:00
tree-ssa-reassoc.c re PR tree-optimization/44545 (internal compiler error: in remove_unreachable_handlers, at tree-eh) 2010-11-16 14:15:55 +00:00
tree-ssa-sccvn.c re PR tree-optimization/47365 (wrong code with -O -ftree-pre) 2011-01-21 14:02:41 +00:00
tree-ssa-sccvn.h re PR tree-optimization/47365 (wrong code with -O -ftree-pre) 2011-01-21 14:02:41 +00:00
tree-ssa-sink.c re PR tree-optimization/33244 (Missed opportunities for vectorization) 2010-09-08 12:34:52 +00:00
tree-ssa-structalias.c re PR tree-optimization/47541 (For integer pointers, the value of ++*p is not written back to memory) 2011-02-01 09:47:21 +00:00
tree-ssa-ter.c re PR tree-optimization/43655 (-ftree-ter causes FAIL: g++.old-deja/g++.law/temps5.C execution test) 2010-12-16 22:44:02 +01:00
tree-ssa-threadedge.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
tree-ssa-threadupdate.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
tree-ssa-uncprop.c gimplify.c: Do not include except.h and optabs.h. 2010-06-01 22:00:56 +00:00
tree-ssa-uninit.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
tree-ssa.c re PR middle-end/47281 (error: non-trivial conversion at assignment) 2011-01-14 12:39:09 +00:00
tree-ssanames.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
tree-stdarg.c builtins.def (BUILT_IN_ARGS_INFO): Remove. 2010-07-23 14:31:20 +00:00
tree-stdarg.h
tree-switch-conversion.c system.h: Include "safe-ctype.h" instead of <safe-ctype.h>. 2010-11-29 14:09:41 +00:00
tree-tailcall.c target.def (supports_split_stack, [...]): Take gcc_options parameters. 2010-11-25 13:16:03 +00:00
tree-vect-data-refs.c Fix PR47002: memory leaks. 2010-12-23 16:25:52 +00:00
tree-vect-generic.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
tree-vect-loop-manip.c re PR debug/46931 (Subversion id 167184 breaks building perlbench on power7 with debug) 2010-12-28 20:20:29 +00:00
tree-vect-loop.c re PR tree-optimization/47139 (ice in process_use, at tree-vect-stmts.c:290) 2011-01-06 07:34:24 +00:00
tree-vect-patterns.c re PR tree-optimization/46663 (ICE: SIGSEGV in vect_recog_pow_pattern (gimple.h:2055) with -O -fexceptions -ftree-vectorize) 2010-12-02 11:47:12 +00:00
tree-vect-slp.c Fix PR47002: memory leaks. 2010-12-23 16:25:52 +00:00
tree-vect-stmts.c re PR tree-optimization/46723 (internal compiler error: in get_initial_def_for_induction, at tree-vect-loop.c:2431) 2010-12-02 16:23:20 +00:00
tree-vectorizer.c common.opt (user_vect_verbosity_level): New Variable entry. 2010-11-24 13:28:38 +00:00
tree-vectorizer.h Fix PR47002: memory leaks. 2010-12-23 16:25:52 +00:00
tree-vrp.c hwint.c: New. 2010-11-30 16:36:19 +00:00
tree.c c.opt (-fkeep-inline-dllexport): New switch. 2011-01-26 01:41:23 +00:00
tree.def re PR other/47395 (the tree code WIDEN_MULT_MINUS_EXPR has a mismatching name) 2011-01-21 14:14:12 +00:00
tree.h re PR lto/45721 (ICE: in function_and_variable_visibility, at ipa.c:673 with -flto) 2011-01-11 17:29:52 +00:00
treestruct.def Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
tsystem.h
typeclass.h
unwind-c.c
unwind-compat.c
unwind-compat.h
unwind-dw2-fde-compat.c
unwind-dw2-fde-darwin.c only use _darwin10_Unwind_FindEnclosingFunction on darwin >= 10 2010-08-17 14:54:10 +00:00
unwind-dw2-fde-glibc.c configure.ac (gcc_cv_ld_eh_frame_hdr): Only check GNU ld for --eh-frame-hdr. 2010-12-23 12:08:21 +00:00
unwind-dw2-fde.c dwarf2out.c (output_call_frame_info): For dw_cie_version >= 4 add also address size and segment size fields into CIE... 2010-04-21 08:57:37 +02:00
unwind-dw2-fde.h
unwind-dw2.c * unwind-dw2.c (_Unwind_DebugHook): Add used and noclone attributes. 2010-04-27 11:40:46 +02:00
unwind-dw2.h
unwind-generic.h
unwind-pe.h
unwind-sjlj.c
unwind.inc
value-prof.c * value-prof.c (check_counter): Corrected error message. 2011-01-29 03:54:56 +00:00
value-prof.h Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
var-tracking.c re PR debug/43092 (Wrong debuginfo with VTA and -fomit-frame-pointer/-mno-accumulate-outgoing-args) 2011-02-03 06:04:04 +00:00
varasm.c re PR target/42894 (Invalid rtl sharing in Thumb1.) 2011-01-28 20:36:44 +01:00
varpool.c re PR tree-optimization/47391 (read from const volatile incorrectly eliminated) 2011-01-21 13:57:52 +01:00
vec.c Update Copyright years for files modified in 2010. 2011-01-03 21:52:22 +01:00
vec.h vec.h (VEC_qsort): Define. 2010-10-11 15:08:28 +00:00
vecir.h vecir.h: New file with VEC primitives for tree, gimple, and rtl. 2010-05-15 20:02:11 +00:00
vecprim.h
version.c
version.h
vmsdbg.h Committed as obvious. 2010-06-29 19:04:12 +00:00
vmsdbgout.c re PR target/47101 (ia64-hp-vms: main_input_filename clash) 2010-12-30 14:19:06 +00:00
web.c diagnostic-core.h: Include bversion.h. 2010-11-30 11:41:24 +00:00
xcoff.h
xcoffout.c re PR target/46655 (invalid '.line 0' directive emitted with -g) 2011-01-17 12:35:21 +00:00
xcoffout.h

README.Portability

Copyright (C) 2000, 2003 Free Software Foundation, Inc.

This file is intended to contain a few notes about writing C code
within GCC so that it compiles without error on the full range of
compilers GCC needs to be able to compile on.

The problem is that many ISO-standard constructs are not accepted by
either old or buggy compilers, and we keep getting bitten by them.
This knowledge until know has been sparsely spread around, so I
thought I'd collect it in one useful place.  Please add and correct
any problems as you come across them.

I'm going to start from a base of the ISO C90 standard, since that is
probably what most people code to naturally.  Obviously using
constructs introduced after that is not a good idea.

For the complete coding style conventions used in GCC, please read
http://gcc.gnu.org/codingconventions.html


String literals
---------------

Irix6 "cc -n32" and OSF4 "cc" have problems with constant string
initializers with parens around it, e.g.

const char string[] = ("A string");

This is unfortunate since this is what the GNU gettext macro N_
produces.  You need to find a different way to code it.

Some compilers like MSVC++ have fairly low limits on the maximum
length of a string literal; 509 is the lowest we've come across.  You
may need to break up a long printf statement into many smaller ones.


Empty macro arguments
---------------------

ISO C (6.8.3 in the 1990 standard) specifies the following:

If (before argument substitution) any argument consists of no
preprocessing tokens, the behavior is undefined.

This was relaxed by ISO C99, but some older compilers emit an error,
so code like

#define foo(x, y) x y
foo (bar, )

needs to be coded in some other way.


free and realloc
----------------

Some implementations crash upon attempts to free or realloc the null
pointer.  Thus if mem might be null, you need to write

  if (mem)
    free (mem);


Trigraphs
---------

You weren't going to use them anyway, but some otherwise ISO C
compliant compilers do not accept trigraphs.


Suffixes on Integer Constants
-----------------------------

You should never use a 'l' suffix on integer constants ('L' is fine),
since it can easily be confused with the number '1'.


			Common Coding Pitfalls
			======================

errno
-----

errno might be declared as a macro.


Implicit int
------------

In C, the 'int' keyword can often be omitted from type declarations.
For instance, you can write

  unsigned variable;

as shorthand for

  unsigned int variable;

There are several places where this can cause trouble.  First, suppose
'variable' is a long; then you might think

  (unsigned) variable

would convert it to unsigned long.  It does not.  It converts to
unsigned int.  This mostly causes problems on 64-bit platforms, where
long and int are not the same size.

Second, if you write a function definition with no return type at
all:

  operate (int a, int b)
  {
    ...
  }

that function is expected to return int, *not* void.  GCC will warn
about this.

Implicit function declarations always have return type int.  So if you
correct the above definition to

  void
  operate (int a, int b)
  ...

but operate() is called above its definition, you will get an error
about a "type mismatch with previous implicit declaration".  The cure
is to prototype all functions at the top of the file, or in an
appropriate header.

Char vs unsigned char vs int
----------------------------

In C, unqualified 'char' may be either signed or unsigned; it is the
implementation's choice.  When you are processing 7-bit ASCII, it does
not matter.  But when your program must handle arbitrary binary data,
or fully 8-bit character sets, you have a problem.  The most obvious
issue is if you have a look-up table indexed by characters.

For instance, the character '\341' in ISO Latin 1 is SMALL LETTER A
WITH ACUTE ACCENT.  In the proper locale, isalpha('\341') will be
true.  But if you read '\341' from a file and store it in a plain
char, isalpha(c) may look up character 225, or it may look up
character -31.  And the ctype table has no entry at offset -31, so
your program will crash.  (If you're lucky.)

It is wise to use unsigned char everywhere you possibly can.  This
avoids all these problems.  Unfortunately, the routines in <string.h>
take plain char arguments, so you have to remember to cast them back
and forth - or avoid the use of strxxx() functions, which is probably
a good idea anyway.

Another common mistake is to use either char or unsigned char to
receive the result of getc() or related stdio functions.  They may
return EOF, which is outside the range of values representable by
char.  If you use char, some legal character value may be confused
with EOF, such as '\377' (SMALL LETTER Y WITH UMLAUT, in Latin-1).
The correct choice is int.

A more subtle version of the same mistake might look like this:

  unsigned char pushback[NPUSHBACK];
  int pbidx;
  #define unget(c) (assert(pbidx < NPUSHBACK), pushback[pbidx++] = (c))
  #define get(c) (pbidx ? pushback[--pbidx] : getchar())
  ...
  unget(EOF);

which will mysteriously turn a pushed-back EOF into a SMALL LETTER Y
WITH UMLAUT.


Other common pitfalls
---------------------

o Expecting 'plain' char to be either sign or unsigned extending.

o Shifting an item by a negative amount or by greater than or equal to
  the number of bits in a type (expecting shifts by 32 to be sensible
  has caused quite a number of bugs at least in the early days).

o Expecting ints shifted right to be sign extended.

o Modifying the same value twice within one sequence point.

o Host vs. target floating point representation, including emitting NaNs
  and Infinities in a form that the assembler handles.

o qsort being an unstable sort function (unstable in the sense that
  multiple items that sort the same may be sorted in different orders
  by different qsort functions).

o Passing incorrect types to fprintf and friends.

o Adding a function declaration for a module declared in another file to
  a .c file instead of to a .h file.