gcc/gcc
Trevor Saunders 2059d0e97d make add_int_reg_note take rtx_insn *
gcc/ChangeLog:

2016-11-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* rtl.h: Adjust prototype.
	* rtlanal.c (add_int_reg_note): Change argument type to rtx_insn *.

From-SVN: r242656
2016-11-21 06:16:13 +00:00
..
ada Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
c Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
c-family re PR c/78285 (error on duplicate switch label where a note should be) 2016-11-17 01:23:19 +00:00
common [ARM] Optional -mthumb for Thumb only targets 2016-11-18 16:45:37 +00:00
config make recog () take a rtx_insn * 2016-11-21 06:15:08 +00:00
cp PR objc++/78418 - ICE in string tests on darwin 2016-11-20 23:41:21 -05:00
doc re PR rtl-optimization/78355 (LRA generates unaligned accesses when SLOW_UNALIGNED_ACCESS is 1) 2016-11-17 16:16:38 +00:00
fortran re PR fortran/69741 (Bad error in forall with array loop counters) 2016-11-20 18:43:16 +00:00
ginclude Define TS 18661-1 CR_DECIMAL_DIG in <float.h>. 2016-09-19 22:53:30 +01:00
go runtime: move schedt type and sched var from C to Go 2016-11-18 17:48:29 +00:00
jit jit: implement gcc_jit_rvalue_set_bool_require_tail_call 2016-05-20 19:12:49 +00:00
lto Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
objc Make-lang.in (C_AND_OBJC_OBJS): Add gimple-parser.o. 2016-11-14 13:51:48 +00:00
objcp ChangeLog formatting fixes. 2016-09-05 21:42:42 +02:00
po * es.po: Update. 2016-11-12 18:51:17 +00:00
testsuite re PR target/48551 (Following source code crashes the c++ compiler on coldfire platform.) 2016-11-20 22:29:36 -07:00
ABOUT-GCC-NLS
BASE-VER
COPYING
COPYING.LIB
COPYING3
COPYING3.LIB
ChangeLog make add_int_reg_note take rtx_insn * 2016-11-21 06:16:13 +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
ChangeLog-2011
ChangeLog-2012
ChangeLog-2013
ChangeLog-2014
ChangeLog-2015
ChangeLog.dataflow
ChangeLog.gimple-classes
ChangeLog.graphite
ChangeLog.jit
ChangeLog.lib
ChangeLog.ptr
ChangeLog.tree-ssa
ChangeLog.tuples
DATESTAMP Daily bump. 2016-11-21 00:16:15 +00:00
DEV-PHASE
FSFChangeLog
FSFChangeLog.10
FSFChangeLog.11
LANGUAGES
Makefile.in Fix the Windows native x86-64 build. 2016-11-07 09:17:55 +00:00
ONEWS
README.Portability
acinclude.m4 remove conditional compilation of HAVE_AS_LEB128 code 2016-11-14 10:58:48 +00:00
aclocal.m4
addresses.h
alias.c Use simplify_gen_binary in canon_rtx 2016-11-15 18:16:59 +00:00
alias.h
alloc-pool.c
alloc-pool.h
asan.c asan.h (ASAN_STACK_MAGIC_PARTIAL): Remove. 2016-11-09 00:15:35 +02:00
asan.h asan.h (asan_intercepted_p): Handle BUILT_IN_STRCSPN, BUILT_IN_STRPBRK, BUILT_IN_STRSPN and BUILT_IN_STRSTR. 2016-11-09 00:16:58 +02:00
attribs.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
attribs.h
auto-inc-dec.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
auto-profile.c Print indirect call changes in afdo dump file 2016-07-14 02:13:48 +00:00
auto-profile.h
backend.h
basic-block.h
bb-reorder.c bb-reorder: Improve compgotos pass (PR71785) 2016-11-18 10:14:52 +01:00
bb-reorder.h
bitmap.c bitmap.c (bitmap_elem_to_freelist): Set indx to -1. 2016-10-07 10:06:24 +00:00
bitmap.h bitmap.h: Document constraints on bitmap modification while iterating over it. 2016-10-07 11:26:15 +00:00
bt-load.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
builtin-attrs.def 016-07-21 Bernd Edlinger <bernd.edlinger@hotmail.de> 2016-07-21 19:11:26 +00:00
builtin-types.def Add minimal _FloatN, _FloatNx built-in functions. 2016-08-22 12:57:39 +01:00
builtins.c i386.md (cmpstrnsi): New test to bail out if neither string input is a string constant. 2016-11-17 12:58:16 -06:00
builtins.def re PR ada/37139 (DEP prevents using Ada tasking) 2016-10-16 20:13:32 +00:00
builtins.h Fold __builtin_memchr function 2016-10-14 12:09:51 +00:00
caller-save.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
calls.c re PR ada/37139 (DEP prevents using Ada tasking) 2016-10-16 20:13:32 +00:00
calls.h 016-07-21 Bernd Edlinger <bernd.edlinger@hotmail.de> 2016-07-21 19:06:02 +00:00
ccmp.c make targetm.gen_ccmp{first,next} take rtx_insn ** 2016-11-03 09:27:55 +00:00
ccmp.h
cfg-flags.def
cfg.c Use FOR_ALL_BB_FN in a few more places 2016-10-18 21:36:45 +02:00
cfg.h cfg.c (reset_original_copy_tables): New func. 2016-10-13 10:52:00 +00:00
cfganal.c use auto_sbitmap in various places 2016-07-26 10:44:08 +00:00
cfganal.h re PR tree-optimization/71253 (ICE during loop distribution w/ -O2 -ftree-loop-distribution) 2016-05-24 12:40:01 +00:00
cfgbuild.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
cfgbuild.h
cfgcleanup.c make tablejump_p return the label as a rtx_insn * 2016-10-21 12:33:01 +00:00
cfgcleanup.h
cfgexpand.c Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
cfgexpand.h
cfghooks.c tree-cfgcleanup.c (tree_forwarder_block_p): Use bb_loop_header_p. 2016-08-05 07:41:45 +00:00
cfghooks.h
cfgloop.c cfgloop.h (struct loop): New field constraints. 2016-07-29 15:44:00 +00:00
cfgloop.h make next/prev nondebug_insn take rtx_insn * 2016-09-22 13:16:23 +00:00
cfgloopanal.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
cfgloopmanip.c re PR rtl-optimization/68212 (Loop unroller breaks basic block frequencies) 2016-10-14 17:10:18 +00:00
cfgloopmanip.h
cfgrtl.c make delete_insn () take a rtx_insn * 2016-11-21 06:15:58 +00:00
cfgrtl.h make delete_insn () take a rtx_insn * 2016-11-21 06:15:58 +00:00
cgraph.c Add IPA VRP 2016-09-20 23:29:05 +00:00
cgraph.h Replace NULL with false as a return value 2016-10-19 10:30:36 +00:00
cgraphbuild.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
cgraphclones.c ipa-inline-transform.c (preserve_function_body_p): Look for first non-thunk clone. 2016-05-18 07:12:46 +00:00
cgraphunit.c cgraphunit.c (analyze_functions): Set node->definition to false to signal symbol removal to... 2016-10-20 08:49:48 +00:00
chkp-builtins.def
cif-code.def ipa-inline-analysis.c (compute_inline_parameters): Disable inlinig into instrumentation thunks. 2016-05-16 19:33:02 +00:00
cilk-builtins.def
cilk-common.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
cilk.h
cilkplus.def
collect-utils.c
collect-utils.h
collect2-aix.c
collect2-aix.h
collect2.c
collect2.h
combine-stack-adj.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
combine.c Use rtx_mode_t instead of std::make_pair 2016-11-18 10:04:53 +00:00
common.md
common.opt common.opt (ftree-loop-if-convert-stores): Mark as preserved for backward compatibility. 2016-11-17 12:38:47 +00:00
compare-elim.c use rtx_insn * in various places where it is obvious 2016-11-02 03:44:50 +00:00
conditions.h
config.build
config.gcc config.gcc (*-*-netbsd): Set use_gcc_stdint=wrap. 2016-11-19 10:49:16 +00:00
config.host configure.ac: Add aarch64-*-freebsd*. 2016-10-10 23:31:17 +02:00
config.in configure.ac: Split CHECKING_P into CHECKING_P and ENABLE_EXTRA_CHECKING. 2016-09-30 18:57:49 +00:00
configure remove conditional compilation of HAVE_AS_LEB128 code 2016-11-14 10:58:48 +00:00
configure.ac remove conditional compilation of HAVE_AS_LEB128 code 2016-11-14 10:58:48 +00:00
context.c
context.h
convert.c Implement -Wimplicit-fallthrough. 2016-09-26 09:42:50 +00:00
convert.h
coretypes.h Introduce -fprofile-update=prefer-atomic 2016-11-14 12:09:48 +00:00
coverage.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
coverage.h
cppbuiltin.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
cppbuiltin.h
cppdefault.c
cppdefault.h
cprop.c Use df_read_modify_subreg_p in cprop.c 2016-11-16 13:07:08 +00:00
cse.c Add a load_extend_op wrapper 2016-11-15 18:13:56 +00:00
cselib.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
cselib.h
cstamp-h.in
data-streamer-in.c data-streamer-in.c (streamer_read_wide_int): New. 2016-08-06 21:11:26 +00:00
data-streamer-out.c data-streamer-in.c (streamer_read_wide_int): New. 2016-08-06 21:11:26 +00:00
data-streamer.c
data-streamer.h data-streamer-in.c (streamer_read_wide_int): New. 2016-08-06 21:11:26 +00:00
dbgcnt.c
dbgcnt.def use-after-scope fallout 2016-11-08 12:28:33 +00:00
dbgcnt.h
dbxout.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
dbxout.h
dce.c Use MEM_SIZE rather than GET_MODE_SIZE in dce.c 2016-11-15 18:18:08 +00:00
dce.h
ddg.c use auto_sbitmap in various places 2016-07-26 10:44:08 +00:00
ddg.h
debug.c debug.h (gcc_debug_hooks): Add filename parameter to early_finish hook. 2016-09-20 07:37:53 +00:00
debug.h debug.h (gcc_debug_hooks): Add filename parameter to early_finish hook. 2016-09-20 07:37:53 +00:00
defaults.h defaults.h (LOAD_EXTEND_OP): Define if not already defined. 2016-11-04 17:42:32 +00:00
df-core.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
df-problems.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
df-scan.c df: Change defs in entry and uses in exit block during separate shrink-wrapping 2016-11-16 16:23:36 +01:00
df.h df: Change defs in entry and uses in exit block during separate shrink-wrapping 2016-11-16 16:23:36 +01:00
dfp.c
dfp.h
diagnostic-color.c Introduce class edit_context 2016-09-02 18:00:57 +00:00
diagnostic-color.h
diagnostic-core.h diagnostic-core.h (warning_at_rich_loc_n): Declare. 2016-10-08 17:04:35 +00:00
diagnostic-show-locus.c fix-it hints can't contain newlines 2016-09-15 23:57:01 +00:00
diagnostic.c revert: diagnostic.c (diagnostic_action_after_output): Remove max error handling here .... 2016-10-15 11:08:10 +00:00
diagnostic.def
diagnostic.h Add -fdiagnostics-generate-patch 2016-09-02 19:41:17 +00:00
dojump.c dojump.c (do_jump_by_parts_greater_rtx): Invert probability when swapping the arms of the branch. 2016-10-28 18:10:14 +00:00
dojump.h
dominance.c Update dom_info 2016-10-17 11:05:12 -07:00
dominance.h Update dom_info 2016-10-17 11:05:12 -07:00
domwalk.c domwalk.c (dom_walker::walk): Use RPO order. 2016-10-19 08:39:55 +00:00
domwalk.h
double-int.c hwint.h (HOST_WIDE_INT_0): New define. 2016-07-20 23:59:44 +02:00
double-int.h cse.c: Use HOST_WIDE_INT_M1 instead of ~(HOST_WIDE_INT) 0. 2016-07-20 17:47:33 +02:00
dse.c re PR target/77834 (ICE: in make_decl_rtl, at varasm.c:1311 with -O -ftree-pre -mstringop-strategy=libcall) 2016-11-07 18:35:16 +01:00
dumpfile.c Make-lang.in (C_AND_OBJC_OBJS): Add gimple-parser.o. 2016-11-14 13:51:48 +00:00
dumpfile.h Make-lang.in (C_AND_OBJC_OBJS): Add gimple-parser.o. 2016-11-14 13:51:48 +00:00
dwarf2asm.c remove conditional compilation of HAVE_AS_LEB128 code 2016-11-14 10:58:48 +00:00
dwarf2asm.h dwarf2asm.h (dw2_asm_output_offset): Add overload with extra offset argument. 2016-09-15 10:22:32 +00:00
dwarf2cfi.c dwarf2cfi: Dump row differences before asserting 2016-11-10 18:43:02 +01:00
dwarf2out.c re PR debug/78191 (ICE in calc_die_sizes) 2016-11-18 22:55:46 +01:00
dwarf2out.h dwarf2out.h (struct dw_loc_descr_node): Adjust comment for frame_offset_rel bit. 2016-10-31 20:35:47 +01:00
edit-context.c fix-it hints: insert_before vs insert_after 2016-09-13 16:08:59 +00:00
edit-context.h Introduce class edit_context 2016-09-02 18:00:57 +00:00
emit-rtl.c emit-rtl.c (emit_copy_of_insn_after): Duplicate notes in order. 2016-11-07 17:03:55 +00:00
emit-rtl.h separate shrink-wrap: New command-line flag, status flag, hooks, and doc 2016-10-12 17:19:46 +02:00
errors.c
errors.h
et-forest.c Selftest framework 2016-06-06 17:11:30 +00:00
et-forest.h
except.c remove conditional compilation of HAVE_AS_LEB128 code 2016-11-14 10:58:48 +00:00
except.h
exec-tool.in
explow.c Re-apply: Drop excess size used for run time allocated stack variables. 2016-11-18 14:44:54 +00:00
explow.h Allocate constant size dynamic stack space in the prologue 2016-07-18 13:10:27 +00:00
expmed.c Use rtx_mode_t instead of std::make_pair 2016-11-18 10:04:53 +00:00
expmed.h Fix warnings for make profiledbootstrap (PR bootstrap/77788) 2016-10-06 07:33:49 +00:00
expr.c make recog () take a rtx_insn * 2016-11-21 06:15:08 +00:00
expr.h expr.h (copy_blkmode_from_reg): Delete. 2016-11-04 17:44:48 +00:00
fibonacci_heap.c Add selftests for fibonacci_heap 2016-07-20 07:01:48 +00:00
fibonacci_heap.h Add selftests for fibonacci_heap 2016-07-20 07:01:48 +00:00
file-find.c Prevent LTO wrappers to process a recursive execution 2016-07-07 12:03:39 +00:00
file-find.h Prevent LTO wrappers to process a recursive execution 2016-07-07 12:03:39 +00:00
final.c gcc: remove unneeded global related to hot/cold partitioning 2016-11-16 22:10:52 +00:00
fixed-value.c auto-inc-dec.c (try_merge): Remove break after return. 2016-09-27 20:14:10 +02:00
fixed-value.h
flag-types.h flag-types.h (enum sanitize_code): Add SANITIZE_SHIFT_BASE and SANITIZE_SHIFT_EXPONENT... 2016-11-09 16:37:28 +01:00
flags.h
fold-const-call.c * fold-const-call.c (fold_const_call): Fix up type of s0 and s1. 2016-11-09 18:55:12 +01:00
fold-const-call.h Fold __builtin_str{n}{case}cmp functions 2016-10-14 12:08:27 +00:00
fold-const.c Simplify X /[ex] 8 == 0 2016-11-20 15:32:37 +00:00
fold-const.h fold-const.c (tree_swap_operands_p): Remove unused arg. 2016-11-09 15:15:28 +00:00
fp-test.c
function-tests.c Add a "compact" mode to print_rtx_function 2016-10-13 13:17:59 +00:00
function.c make prologue_epilogue_contains take a rtx_insn * 2016-11-21 06:16:08 +00:00
function.h make prologue_epilogue_contains take a rtx_insn * 2016-11-21 06:16:08 +00:00
fwprop.c Add a load_extend_op wrapper 2016-11-15 18:13:56 +00:00
gcc-ar.c Prevent LTO wrappers to process a recursive execution 2016-07-07 12:03:39 +00:00
gcc-main.c
gcc-plugin.h
gcc-rich-location.c rich_location: add convenience overloads for adding fix-it hints 2016-08-30 13:54:48 +00:00
gcc-rich-location.h rich_location: add convenience overloads for adding fix-it hints 2016-08-30 13:54:48 +00:00
gcc-symtab.h
gcc.c Introduce -fprofile-update=prefer-atomic 2016-11-14 12:09:48 +00:00
gcc.h
gcov-counter.def Remove __gcov_merge_delta (PR bootstrap/77749) 2016-09-27 10:04:39 +00:00
gcov-dump.c
gcov-io.c * gcov-io.c (gcov_open): Deconstify 'mode'. 2016-10-14 10:51:58 +00:00
gcov-io.h Do not use LONG_LONG_TYPE_SIZE in #if macro condition 2016-08-17 06:55:35 +00:00
gcov-iov.c Adapt the numbering scheme (PR gcov-profile/64874) 2016-07-25 08:42:42 +00:00
gcov-tool.c re PR c/7652 (-Wswitch-break : Warn if a switch case falls through) 2016-08-12 10:30:47 +00:00
gcov.c gcov: add new option (--hash-filenames) (PR 2016-08-16 14:14:18 +00:00
gcse-common.c
gcse-common.h
gcse.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
gcse.h
gdbasan.in
gdbhooks.py
gdbinit.in
gen-pass-instances.awk gen-pass-instances.awk (adjust_linenos): INcrement pass_lines[p] by increment rather than double it. 2016-10-26 18:20:54 +02:00
genattr-common.c
genattr.c
genattrtab.c genattrtab.c (attr_rtx_1): Avoid allocating new rtx objects. 2016-11-15 22:10:37 +00:00
genautomata.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
gencfn-macros.c
gencheck.c
genchecksum.c
gencodes.c
genconditions.c read-md.c: Move various state to within class rtx_reader 2016-10-18 00:19:17 +00:00
genconfig.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
genconstants.c read-md.c: Move various state to within class rtx_reader 2016-10-18 00:19:17 +00:00
genemit.c read-md.c: Move various state to within class rtx_reader 2016-10-18 00:19:17 +00:00
genenums.c read-md.c: Move various state to within class rtx_reader 2016-10-18 00:19:17 +00:00
generic-match-head.c
generic-match.h
genextract.c genextract.c: add [cd]tors to accum_extract 2016-07-13 02:43:23 +00:00
genflags.c
gengenrtl.c
gengtype-lex.l
gengtype-parse.c
gengtype-state.c
gengtype.c gengtype.c (new_structure): Append to structures list. 2016-11-10 11:49:08 -05:00
gengtype.h
genhooks.c
genmatch.c fold-const.c (tree_swap_operands_p): Remove unused arg. 2016-11-09 15:15:28 +00:00
genmddeps.c read-md.c: Move various state to within class rtx_reader 2016-10-18 00:19:17 +00:00
genmddump.c
genmodes.c Enable AVX512_4FMAPS and AVX512_4VNNIW instructions 2016-11-17 14:11:21 -08:00
genmultilib fragments.texi (MULTILIB_REUSE): Mention that only options in MULTILIB_OPTIONS should be used. 2016-08-24 09:51:35 +00:00
genopinit.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
genoutput.c read-md.c: Move various state to within class rtx_reader 2016-10-18 00:19:17 +00:00
genpeep.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
genpreds.c read-md.c: Move various state to within class rtx_reader 2016-10-18 00:19:17 +00:00
genrecog.c make recog () take a rtx_insn * 2016-11-21 06:15:08 +00:00
gensupport.c read-md.c: Move various state to within class rtx_reader 2016-10-18 00:19:17 +00:00
gensupport.h Introduce class rtx_reader 2016-09-21 20:55:06 +00:00
gentarget-def.c read-md.c: Move various state to within class rtx_reader 2016-10-18 00:19:17 +00:00
ggc-common.c
ggc-internal.h
ggc-none.c
ggc-page.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
ggc-tests.c Expose forcibly_ggc_collect and run it after all selftests 2016-10-25 16:46:54 +00:00
ggc.h
gimple-builder.c Makefile.in: Add tree-vrp.h to GTFILES. 2016-08-20 05:43:01 +00:00
gimple-builder.h
gimple-expr.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
gimple-expr.h
gimple-fold.c fold-const.c (tree_swap_operands_p): Remove unused arg. 2016-11-09 15:15:28 +00:00
gimple-fold.h PR middle-end/49905 - Better sanity checking on sprintf src & dest to 2016-09-20 19:39:27 -06:00
gimple-iterator.c
gimple-iterator.h
gimple-laddress.c Makefile.in: Add tree-vrp.h to GTFILES. 2016-08-20 05:43:01 +00:00
gimple-low.c re PR debug/77931 (PASS->FAIL: gdb.cp/namespace.exp: print ina) 2016-10-11 12:52:44 +00:00
gimple-low.h
gimple-match-head.c fold-const.c (tree_swap_operands_p): Remove unused arg. 2016-11-09 15:15:28 +00:00
gimple-match.h
gimple-predict.h
gimple-pretty-print.c Make-lang.in (C_AND_OBJC_OBJS): Add gimple-parser.o. 2016-11-14 13:51:48 +00:00
gimple-pretty-print.h
gimple-ssa-backprop.c re PR tree-optimization/78312 (wrong code due to ssa-backprop) 2016-11-14 10:33:15 +00:00
gimple-ssa-isolate-paths.c gimple-ssa-isolate-paths.c (is_divmod_with_given_divisor): New function. 2016-11-11 09:00:47 -07:00
gimple-ssa-nonnull-compare.c
gimple-ssa-split-paths.c gimple-ssa-split-paths.c (find_block_to_duplicate_for_splitting_pa): Handle empty else block. 2016-07-05 13:25:47 +00:00
gimple-ssa-sprintf.c PR middle-end/77735 - FAIL: gcc.dg/tree-ssa/builtin-sprintf-warn-1.c 2016-10-24 10:53:20 -06:00
gimple-ssa-store-merging.c [2/2] Add store merging unit tests 2016-11-08 16:04:20 +00:00
gimple-ssa-strength-reduction.c re PR tree-optimization/71915 (A missed opportunity for SLSR) 2016-10-31 03:04:59 +00:00
gimple-ssa-warn-alloca.c Makefile.in (OBJS): Add gimple-ssa-warn-alloca.o. 2016-10-18 21:40:58 +00:00
gimple-ssa.h
gimple-streamer-in.c
gimple-streamer-out.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
gimple-streamer.h
gimple-walk.c
gimple-walk.h
gimple.c Introduce -fsanitize-address-use-after-scope 2016-11-07 10:23:38 +00:00
gimple.def
gimple.h re PR ada/37139 (DEP prevents using Ada tasking) 2016-10-16 20:13:32 +00:00
gimplify-me.c
gimplify-me.h
gimplify.c re PR middle-end/78333 (always-inline gnu-inline functions break -finstrument-functions) 2016-11-16 12:55:02 +00:00
gimplify.h
glimits.h Define TS 18661-1 type width macros in <limits.h> and <stdint.h>. 2016-09-09 17:59:43 +01:00
godump.c Implement -Wimplicit-fallthrough. 2016-09-26 09:42:50 +00:00
graph.c use auto_sbitmap in various places 2016-07-26 10:44:08 +00:00
graph.h
graphds.c
graphds.h
graphite-dependences.c
graphite-isl-ast-to-gimple.c re PR tree-optimization/71575 ([graphite] internal compiler error: in copy_cond_phi_nodes, at graphite-isl-ast-to-gimple.c:2500) 2016-11-11 12:54:25 +00:00
graphite-optimize-isl.c
graphite-poly.c
graphite-scop-detection.c
graphite-sese-to-poly.c
graphite.c
graphite.h
gsstruct.def
gstab.h
gsyms.h
gsyslimits.h
gtm-builtins.def
haifa-sched.c haifa-sched.c (call_used_regs_num): Rename to... 2016-10-26 17:07:55 +00:00
hard-reg-set.h
hash-map-tests.c Selftest framework 2016-06-06 17:11:30 +00:00
hash-map-traits.h
hash-map.h
hash-set-tests.c Selftest framework 2016-06-06 17:11:30 +00:00
hash-set.h
hash-table.c
hash-table.h
hash-traits.h
highlev-plugin-common.h
hooks.c target.def (additional_allocno_class_p): New. 2016-11-10 17:04:31 +00:00
hooks.h target.def (additional_allocno_class_p): New. 2016-11-10 17:04:31 +00:00
host-default.c
hosthooks-def.h
hosthooks.h
hsa-brig-format.h
hsa-brig.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
hsa-dump.c
hsa-gen.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
hsa-regalloc.c
hsa.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
hsa.h
hw-doloop.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
hw-doloop.h
hwint.c Add inline functions for various bitwise operations. 2016-09-16 15:20:44 -04:00
hwint.h Add inline functions for various bitwise operations. 2016-09-16 15:20:44 -04:00
ifcvt.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
ifcvt.h
inchash.c
inchash.h
incpath.c re PR driver/78206 (bootstrap failure under Apple sandbox that blacklists reads in /usr/local) 2016-11-07 18:33:49 +00:00
incpath.h
init-regs.c Enable AVX512_4FMAPS and AVX512_4VNNIW instructions 2016-11-17 14:11:21 -08:00
input.c Fix locations within raw strings 2016-11-17 15:55:26 +00:00
input.h re PR gcov-profile/46266 (gcov generates data for non-existing file <built-in>) 2016-09-27 13:22:04 +00:00
insn-addr.h
insn-notes.def
internal-fn.c re PR sanitizer/77823 (ICE: in ubsan_encode_value, at ubsan.c:137 with -fsanitize=undefined and vector types) 2016-11-16 09:28:50 +01:00
internal-fn.def Make-lang.in (C_AND_OBJC_OBJS): Add gimple-parser.o. 2016-11-14 13:51:48 +00:00
internal-fn.h Make-lang.in (C_AND_OBJC_OBJS): Add gimple-parser.o. 2016-11-14 13:51:48 +00:00
intl.c
intl.h
ipa-chkp.c re PR middle-end/71529 ([CHKP] ICE in expand_expr_real_1) 2016-06-15 15:49:40 +00:00
ipa-chkp.h
ipa-comdats.c re PR ipa/78188 (AIX Bootstrap broken by tree-vrp.c change) 2016-11-04 19:20:50 -04:00
ipa-cp.c pr78268.C: New test. 2016-11-13 22:04:36 +00:00
ipa-devirt.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
ipa-hsa.c
ipa-icf-gimple.c * hsa-gen.c (hsa_op_immed::hsa_op_immed Use CONSTRUCTOR_NELTS (...) 2016-09-23 09:34:43 +02:00
ipa-icf-gimple.h
ipa-icf.c ipa-icf.c (sem_function::merge): Do not create a wrapper also if the original function needs a static chain. 2016-11-13 17:23:13 +00:00
ipa-icf.h
ipa-inline-analysis.c re PR middle-end/78306 ([CilkPlus] "inlining failed in call to always_inline ‘memset’: function not inlinable" with -fcilkplus) 2016-11-17 08:42:50 +00:00
ipa-inline-transform.c Add IPA VRP 2016-09-20 23:29:05 +00:00
ipa-inline.c re PR middle-end/78306 ([CilkPlus] "inlining failed in call to always_inline ‘memset’: function not inlinable" with -fcilkplus) 2016-11-17 08:42:50 +00:00
ipa-inline.h [PR 70646] Store size to inlining predicate conditions 2016-05-18 15:04:23 +02:00
ipa-polymorphic-call.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
ipa-profile.c Add IPA VRP 2016-09-20 23:29:05 +00:00
ipa-prop.c Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
ipa-prop.h Fix ice in set_value_range 2016-11-09 01:41:26 +00:00
ipa-pure-const.c re PR sanitizer/77396 (address sanitizer crashes if all static global variables are optimized) 2016-09-02 19:11:42 +02:00
ipa-ref.c
ipa-ref.h
ipa-reference.c
ipa-reference.h
ipa-split.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
ipa-utils.c Add IPA VRP 2016-09-20 23:29:05 +00:00
ipa-utils.h
ipa-visibility.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
ipa.c cgraphunit.c (analyze_functions): Set node->definition to false to signal symbol removal to... 2016-10-20 08:49:48 +00:00
ira-build.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
ira-color.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
ira-conflicts.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
ira-costs.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
ira-emit.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
ira-int.h
ira-lives.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
ira.c R_MIPS_JALR failures 2016-11-17 09:40:55 +10:30
ira.h
is-a.h
jump.c use rtx_insn * in various places where it is obvious 2016-11-02 03:44:50 +00:00
langhooks-def.h omp-low.c (lower_omp_target): Fix up argument to is_reference. 2016-11-10 12:38:05 +01:00
langhooks.c omp-low.c (lower_omp_target): Fix up argument to is_reference. 2016-11-10 12:38:05 +01:00
langhooks.h omp-low.c (lower_omp_target): Fix up argument to is_reference. 2016-11-10 12:38:05 +01:00
lcm.c use auto_sbitmap in various places 2016-07-26 10:44:08 +00:00
lcm.h
libfuncs.h builtins.c (expand_builtin_memcmp): Do not emit the call here. 2016-05-13 08:49:20 +00:00
limitx.h
limity.h
lists.c
lock-and-run.sh
loop-doloop.c Use rtx_mode_t instead of std::make_pair 2016-11-18 10:04:53 +00:00
loop-init.c loop-init.c (gate): Do not enale RTL loop unroller with -fpeel-loops. 2016-05-31 10:42:59 +00:00
loop-invariant.c re PR tree-optimization/78185 (Wrong branch optimization with -O1 on x86/x86_64) 2016-11-04 08:54:42 +00:00
loop-iv.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
loop-unroll.c re PR rtl-optimization/78241 (wrong code with -funroll-loops) 2016-11-10 18:55:57 +00:00
loop-unroll.h
lower-subreg.c use rtx_insn * more places where it is obvious 2016-11-21 06:14:52 +00:00
lower-subreg.h Fix typo in copyright boilerplate 2016-06-14 13:53:50 +00:00
lra-assigns.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
lra-coalesce.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
lra-constraints.c re PR rtl-optimization/78355 (LRA generates unaligned accesses when SLOW_UNALIGNED_ACCESS is 1) 2016-11-17 16:16:38 +00:00
lra-eliminations.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
lra-int.h re PR rtl-optimization/69847 (Spec 2006 403.gcc slows down with -mlra vs. reload on PowerPC) 2016-08-02 16:07:36 +00:00
lra-lives.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
lra-remat.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
lra-spills.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
lra.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
lra.h
lto-cgraph.c Don't call get_working_sets w/ LTO and -fauto-profile (PR 2016-07-25 11:28:52 +00:00
lto-compress.c
lto-compress.h
lto-opts.c
lto-section-in.c LTO: display file name if LTO version check fails 2016-05-19 15:02:30 +00:00
lto-section-names.h
lto-section-out.c
lto-streamer-in.c Do not fixup edges for a thunk in LTRANS (PR lto/78049) 2016-10-20 15:30:17 +00:00
lto-streamer-out.c tree-vrp.c (evrp_dom_walker::before_dom_children): Ignore backedges when identifying the single predecessor to take conditional... 2016-10-24 11:22:42 +00:00
lto-streamer.c Fix LTO_STREAMER_DEBUG build 2016-10-12 15:18:36 +02:00
lto-streamer.h cgraph.c (cgraph_node::verify_node): Compare against builtin by using DECL_BUILT_IN_CLASS and DECL_FUNCTION_CODE. 2016-07-25 12:35:08 +00:00
lto-wrapper.c
machmode.def
machmode.h Enable AVX512_4FMAPS and AVX512_4VNNIW instructions 2016-11-17 14:11:21 -08:00
main.c
match.pd Simplify X /[ex] 8 == 0 2016-11-20 15:32:37 +00:00
mcf.c
mem-stats-traits.h
mem-stats.h
memmodel.h Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
memory-block.cc
memory-block.h
mkconfig.sh
mode-classes.def
mode-switching.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
modulo-sched.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
multiple_target.c re PR middle-end/78419 (ICE with target_clone on invalid target) 2016-11-18 23:21:31 +01:00
omp-builtins.def
omp-low.c re PR fortran/78299 (ICE in expand_omp_for_static_nochunk, at omp-low.c:9622) 2016-11-16 19:19:09 +01:00
omp-low.h
omp-simd-clone.c Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
opt-functions.awk
opt-gather.awk
opt-include.awk
opt-read.awk
optabs-libfuncs.c builtins.c (expand_builtin_memcmp): Do not emit the call here. 2016-05-13 08:49:20 +00:00
optabs-libfuncs.h
optabs-query.c
optabs-query.h re PR target/78102 (GCC refuses to generate PCMPEQQ instruction for SSE4.1) 2016-10-25 18:26:12 +02:00
optabs-tree.c re PR target/78102 (GCC refuses to generate PCMPEQQ instruction for SSE4.1) 2016-10-25 18:26:12 +02:00
optabs-tree.h re PR target/78102 (GCC refuses to generate PCMPEQQ instruction for SSE4.1) 2016-10-25 18:26:12 +02:00
optabs.c remove cast from emit_libcall_block 2016-11-21 06:16:03 +00:00
optabs.def re PR target/78102 (GCC refuses to generate PCMPEQQ instruction for SSE4.1) 2016-10-25 18:26:12 +02:00
optabs.h remove cast from emit_libcall_block 2016-11-21 06:16:03 +00:00
optc-gen.awk
optc-save-gen.awk
opth-gen.awk
opts-common.c re PR middle-end/77475 (unnecessary or misleading context in reporting command line problems) 2016-09-13 10:45:36 +02:00
opts-diagnostic.h
opts-global.c
opts.c flag-types.h (enum sanitize_code): Add SANITIZE_SHIFT_BASE and SANITIZE_SHIFT_EXPONENT... 2016-11-09 16:37:28 +01:00
opts.h Fix handling of -fsanitize-recover* options. 2016-09-26 10:55:34 +00:00
output.h
params-enum.h
params-list.h
params-options.h Add tests that test boundary values of params 2016-07-12 15:03:07 +00:00
params.c Offer suggestions for misspelled --param names. 2016-06-30 00:05:39 +00:00
params.def Support non-masked epilogue vectoriziation 2016-11-16 08:22:39 -08:00
params.h Introduce -fsanitize-address-use-after-scope 2016-11-07 10:23:38 +00:00
pass_manager.h
passes.c Make-lang.in (C_AND_OBJC_OBJS): Add gimple-parser.o. 2016-11-14 13:51:48 +00:00
passes.def GIMPLE store merging pass 2016-10-28 14:18:50 +00:00
plugin.c plugin.c (register_plugin_info): Produce an error message if the plugin is not found in the hash table. 2016-10-27 08:38:07 +00:00
plugin.def
plugin.h
postreload-gcse.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
postreload.c Use rtx_mode_t instead of std::make_pair 2016-11-18 10:04:53 +00:00
predict.c re PR middle-end/65950 (exit in main is causing the path to it to become unlikely.) 2016-10-18 08:42:21 -07:00
predict.def predict-12.c: New testcase. 2016-06-26 20:03:35 +00:00
predict.h predict.h (force_edge_cold): Declare. 2016-05-30 10:40:33 +00:00
prefix.c
prefix.h
pretty-print.c re PR tree-optimization/35503 (Warning about restricted pointers?) 2016-11-13 19:38:36 +00:00
pretty-print.h
print-rtl-function.c print-rtl-function.c: add (param) directive to dump 2016-11-09 20:55:03 +00:00
print-rtl.c print-rtl-function.c: add (param) directive to dump 2016-11-09 20:55:03 +00:00
print-rtl.h print-rtl-function.c: add (param) directive to dump 2016-11-09 20:55:03 +00:00
print-tree.c * hsa-gen.c (hsa_op_immed::hsa_op_immed Use CONSTRUCTOR_NELTS (...) 2016-09-23 09:34:43 +02:00
print-tree.h
profile.c Make direct emission of time profiler counter 2016-11-03 15:24:22 +00:00
profile.h
read-md.c read-md.c: Move various state to within class rtx_reader 2016-10-18 00:19:17 +00:00
read-md.h read-md.c: Move various state to within class rtx_reader 2016-10-18 00:19:17 +00:00
read-rtl.c read-md.c: Move various state to within class rtx_reader 2016-10-18 00:19:17 +00:00
real.c Implement C _FloatN, _FloatNx types. 2016-08-19 18:43:26 +01:00
real.h Implement C _FloatN, _FloatNx types. 2016-08-19 18:43:26 +01:00
realmpfr.c
realmpfr.h
recog.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
recog.h make recog () take a rtx_insn * 2016-11-21 06:15:08 +00:00
ree.c re PR rtl-optimization/78132 (GCC produces invalid instruction (kmovd and kmovq) for KNL.) 2016-10-28 09:12:52 +02:00
reg-notes.def [DWARF] Enable DW_CFA_VAL_EXPRESSION support 2016-11-03 17:32:03 +00:00
reg-stack.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
regcprop.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
regcprop.h
reginfo.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
regrename.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
regrename.h
regs.h
regset.h
regstat.c
reload.c re PR target/48551 (Following source code crashes the c++ compiler on coldfire platform.) 2016-11-20 22:29:36 -07:00
reload.h re PR target/48551 (Following source code crashes the c++ compiler on coldfire platform.) 2016-11-20 22:29:36 -07:00
reload1.c re PR target/48551 (Following source code crashes the c++ compiler on coldfire platform.) 2016-11-20 22:29:36 -07:00
reorg.c remove cast to rtx_insn * in remove_note 2016-11-02 03:45:59 +00:00
resource.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
resource.h
rtl-chkp.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
rtl-chkp.h
rtl-error.c
rtl-error.h
rtl-iter.h
rtl-tests.c rtx_writer: avoid printing trailing default values 2016-11-07 15:19:17 +00:00
rtl.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
rtl.def
rtl.h make add_int_reg_note take rtx_insn * 2016-11-21 06:16:13 +00:00
rtlanal.c make add_int_reg_note take rtx_insn * 2016-11-21 06:16:13 +00:00
rtlhash.c
rtlhash.h
rtlhooks-def.h
rtlhooks.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
sancov.c
sanitizer.def asan.h (ASAN_STACK_MAGIC_PARTIAL): Remove. 2016-11-09 00:15:35 +02:00
sanopt.c Introduce -fsanitize-address-use-after-scope 2016-11-07 10:23:38 +00:00
sbitmap.c
sbitmap.h add auto_sbitmap class 2016-07-26 10:43:58 +00:00
sched-deps.c sched: Do not mix prologue and epilogue insns 2016-10-28 16:39:28 +02:00
sched-ebb.c
sched-int.h sched: Do not mix prologue and epilogue insns 2016-10-28 16:39:28 +02:00
sched-rgn.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
sdbout.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
sdbout.h
sel-sched-dump.c
sel-sched-dump.h
sel-sched-ir.c emit-rtl.c (emit_copy_of_insn_after): Duplicate notes in order. 2016-11-07 17:03:55 +00:00
sel-sched-ir.h
sel-sched.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
sel-sched.h
selftest-rtl.h Start adding target-specific selftests 2016-11-04 17:05:38 +00:00
selftest-run-tests.c [2/2] Add store merging unit tests 2016-11-08 16:04:20 +00:00
selftest.c Add selftest::read_file 2016-10-12 14:55:47 +00:00
selftest.h [2/2] Add store merging unit tests 2016-11-08 16:04:20 +00:00
sese.c
sese.h
shrink-wrap.c df: Change defs in entry and uses in exit block during separate shrink-wrapping 2016-11-16 16:23:36 +01:00
shrink-wrap.h shrink-wrap: Shrink-wrapping for separate components 2016-10-12 17:32:23 +02:00
signop.h
simplify-rtx.c Use rtx_mode_t instead of std::make_pair 2016-11-18 10:04:53 +00:00
sparseset.c
sparseset.h
spellcheck-tree.c Fix build of spellcheck-tree.c with older gccs 2016-07-21 17:21:12 +00:00
spellcheck-tree.h Enabling work for C++ handling of misspelled identifiers and typenames 2016-07-20 14:03:03 +00:00
spellcheck.c Offer suggestions for misspelled --param names. 2016-06-30 00:05:39 +00:00
spellcheck.h Offer suggestions for misspelled --param names. 2016-06-30 00:05:39 +00:00
sreal.c Add sreal to selftests 2016-07-20 07:00:50 +00:00
sreal.h ipa-cp.c (ipcp_store_vr_results): Avoid static local var zero. 2016-09-23 11:43:09 +02:00
ssa-iterators.h ssa-iterators.h (ssa_vuse_operand): New inline. 2016-08-18 07:21:11 +00:00
ssa.h Makefile.in: Add tree-vrp.h to GTFILES. 2016-08-20 05:43:01 +00:00
stab.def
stack-ptr-mod.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
statistics.c re PR lto/77305 (-fdump-tree-all and -flto causes ICE) 2016-08-23 07:21:36 +00:00
statistics.h
stmt.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
stmt.h
stor-layout.c Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
stor-layout.h
store-motion.c make pattern_regs a vec 2016-07-28 11:01:34 +00:00
streamer-hooks.c
streamer-hooks.h
stringpool.c
stringpool.h
substring-locations.c Move class substring_loc from c-family into gcc 2016-09-07 16:56:23 +00:00
substring-locations.h Move class substring_loc from c-family into gcc 2016-09-07 16:56:23 +00:00
symbol-summary.h
symtab.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
sync-builtins.def
system.h defaults.h (JCR_SECTION_NAME, [...]): Remove. 2016-10-04 09:49:44 +02:00
target-def.h
target-globals.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
target-globals.h
target-hooks-macros.h
target-insns.def nvptx backend prerequisites for OpenMP offloading 2016-11-16 20:17:00 +03:00
target.def nvptx backend prerequisites for OpenMP offloading 2016-11-16 20:17:00 +03:00
target.h re PR tree-optimization/52171 (memcmp/strcmp/strncmp can be optimized when the result is tested for [in]equality with 0) 2016-06-03 14:20:53 +00:00
targhooks.c target.def (min_arithmetic_precision): New hook. 2016-10-28 21:04:51 +00:00
targhooks.h target.def (min_arithmetic_precision): New hook. 2016-10-28 21:04:51 +00:00
timevar.c passes.c (execute_todo): Do not push/pop TV_TODO. 2016-08-12 07:38:24 +00:00
timevar.def GIMPLE store merging pass 2016-10-28 14:18:50 +00:00
timevar.h passes.c (execute_todo): Do not push/pop TV_TODO. 2016-08-12 07:38:24 +00:00
tlink.c
toplev.c gcc: remove unneeded global related to hot/cold partitioning 2016-11-16 22:10:52 +00:00
toplev.h gcc: remove unneeded global related to hot/cold partitioning 2016-11-16 22:10:52 +00:00
tracer.c
tracer.h
trans-mem.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
trans-mem.h
tree-affine.c Convert TYPE_ALIGN_OK to a TYPE_LANG_FLAG. 2016-07-11 15:02:12 +00:00
tree-affine.h
tree-call-cdce.c re PR tree-optimization/78224 (g++ ICE at -O2(-O1 on gcc6) and above in verify_loop_structure, at cfgloop.c:1646) 2016-11-08 08:03:54 +00:00
tree-cfg.c Make-lang.in (C_AND_OBJC_OBJS): Add gimple-parser.o. 2016-11-14 13:51:48 +00:00
tree-cfg.h tree-cfg.h (should_remove_lhs_p): New predicate. 2016-05-24 13:34:37 +00:00
tree-cfgcleanup.c re PR c++/78383 (label as values ICE with C++ lambda) 2016-11-17 12:39:24 +00:00
tree-cfgcleanup.h
tree-chkp-opt.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
tree-chkp.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
tree-chkp.h
tree-chrec.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
tree-chrec.h tree-chrec.c (convert_affine_scev): New parameter. 2016-07-21 10:52:13 +00:00
tree-complex.c re PR c/7652 (-Wswitch-break : Warn if a switch case falls through) 2016-08-12 10:15:57 +00:00
tree-core.h [PR lto/77458] Avoid ICE in offloading with differing _FloatN, _FloatNx types 2016-10-19 12:48:46 +02:00
tree-data-ref.c re PR tree-optimization/77605 (wrong code at -O3 on x86_64-linux-gnu) 2016-09-19 06:55:17 +00:00
tree-data-ref.h
tree-dfa.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
tree-dfa.h To... 2016-05-18 14:01:31 +00:00
tree-diagnostic.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
tree-diagnostic.h
tree-dump.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
tree-dump.h
tree-eh.c
tree-eh.h
tree-emutls.c
tree-hash-traits.h
tree-hasher.h
tree-if-conv.c re PR tree-optimization/77848 (Gimple if-conversion results in redundant comparisons) 2016-11-17 14:22:17 +00:00
tree-if-conv.h Support non-masked epilogue vectoriziation 2016-11-16 08:22:39 -08:00
tree-inline.c Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
tree-inline.h
tree-into-ssa.c Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
tree-into-ssa.h
tree-iterator.c
tree-iterator.h
tree-loop-distribution.c re PR tree-optimization/78348 ([7 REGRESSION] 15% performance drop for coremark-pro/nnet-test after r242038) 2016-11-16 08:42:20 +00:00
tree-nested.c re PR ada/37139 (DEP prevents using Ada tasking) 2016-10-16 20:13:32 +00:00
tree-nested.h
tree-nrv.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
tree-object-size.c PR tree-optimization/71831 - __builtin_object_size poor results with no 2016-09-01 20:14:50 -06:00
tree-object-size.h PR tree-optimization/71831 - __builtin_object_size poor results with no 2016-09-01 20:14:50 -06:00
tree-outof-ssa.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
tree-outof-ssa.h
tree-parloops.c ipa-inline-analysis.c (find_foldable_builtin_expect): Use gimple_call_internal_p. 2016-09-26 15:50:13 +00:00
tree-parloops.h
tree-pass.h GIMPLE store merging pass 2016-10-28 14:18:50 +00:00
tree-phinodes.c ssa-iterators.h (ssa_vuse_operand): New inline. 2016-08-18 07:21:11 +00:00
tree-phinodes.h ssa-iterators.h (ssa_vuse_operand): New inline. 2016-08-18 07:21:11 +00:00
tree-predcom.c tree-predcom.c (tree_predictive_commoning_loop): Skip loop that only iterates 1 time. 2016-10-13 11:05:53 +00:00
tree-pretty-print.c Make-lang.in (C_AND_OBJC_OBJS): Add gimple-parser.o. 2016-11-14 13:51:48 +00:00
tree-pretty-print.h
tree-profile.c Introduce -fprofile-update=prefer-atomic 2016-11-14 12:09:48 +00:00
tree-scalar-evolution.c re PR tree-optimization/72772 (Missed SCEV after pass reordering@236440) 2016-08-09 15:01:49 +00:00
tree-scalar-evolution.h tree-scalar-evolution.c (simple_iv_with_niters): New funcion. 2016-07-15 09:04:57 +00:00
tree-sra.c Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
tree-ssa-address.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
tree-ssa-address.h
tree-ssa-alias.c re PR tree-optimization/78035 (Inconsistency between address comparison and alias analysis) 2016-11-02 08:29:48 +00:00
tree-ssa-alias.h re PR tree-optimization/78035 (Inconsistency between address comparison and alias analysis) 2016-11-02 08:29:48 +00:00
tree-ssa-ccp.c Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
tree-ssa-ccp.h Patch for performing interprocedural bitwise constant propagation. 2016-08-26 08:05:39 +00:00
tree-ssa-coalesce.c tree-ssa-coalesce.c (register_default_def): Remove register_ssa_partition. 2016-11-15 22:40:11 +00:00
tree-ssa-coalesce.h
tree-ssa-copy.c tree-ssa-propagate.h (substitute_and_fold): Adjust prototype. 2016-10-18 07:49:32 +00:00
tree-ssa-dce.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
tree-ssa-dom.c fold-const.c (tree_swap_operands_p): Remove unused arg. 2016-11-09 15:15:28 +00:00
tree-ssa-dom.h
tree-ssa-dse.c Fix dump output in dse_optimize_stmt 2016-11-14 14:22:10 +00:00
tree-ssa-forwprop.c re PR tree-optimization/77399 (Poor code generation for vector casts and loads) 2016-10-04 13:40:54 +00:00
tree-ssa-ifcombine.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
tree-ssa-live.c tree-ssa-coalesce.c (register_default_def): Remove register_ssa_partition. 2016-11-15 22:40:11 +00:00
tree-ssa-live.h tree-ssa-coalesce.c (register_default_def): Remove register_ssa_partition. 2016-11-15 22:40:11 +00:00
tree-ssa-loop-ch.c invoke.texi (max-loop-headers-insns): Document. 2016-06-08 14:11:51 +00:00
tree-ssa-loop-im.c re PR tree-optimization/78185 (Wrong branch optimization with -O1 on x86/x86_64) 2016-11-04 08:54:42 +00:00
tree-ssa-loop-ivcanon.c use auto_sbitmap in various places 2016-07-26 10:44:08 +00:00
tree-ssa-loop-ivopts.c Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
tree-ssa-loop-ivopts.h
tree-ssa-loop-manip.c use auto_sbitmap in various places 2016-07-26 10:44:08 +00:00
tree-ssa-loop-manip.h loop splitting 2016-10-20 12:18:32 +00:00
tree-ssa-loop-niter.c re PR tree-optimization/72817 (wrong code at -O3 on x86_64-linux-gnu (in both 32-bit and 64-bit modes)) 2016-08-16 09:13:50 +00:00
tree-ssa-loop-niter.h re PR tree-optimization/72772 (Missed SCEV after pass reordering@236440) 2016-08-09 15:01:49 +00:00
tree-ssa-loop-prefetch.c re PR tree-optimization/77808 (ICE in duplicate_ssa_name_ptr_info, at tree-ssanames.c:630 starting with r240439) 2016-10-04 15:28:23 +00:00
tree-ssa-loop-split.c fix pr78060 pr78061 pr78088 2016-10-26 12:54:30 +00:00
tree-ssa-loop-unswitch.c re PR tree-optimization/23855 (loop header should also be pulled out of the inner loop too) 2016-08-17 08:11:32 +00:00
tree-ssa-loop.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
tree-ssa-loop.h
tree-ssa-math-opts.c Looking at PR77308, one of the issues is that the bswap optimization phase doesn't work on ARM. 2016-11-16 18:10:34 +00:00
tree-ssa-operands.c Iterator to visit SSA 2016-09-15 02:03:51 +00:00
tree-ssa-operands.h
tree-ssa-phionlycprop.c
tree-ssa-phiopt.c re PR middle-end/78228 (fstrict-overflow breaks code without overflow?) 2016-11-07 12:25:09 +00:00
tree-ssa-phiprop.c
tree-ssa-pre.c re PR tree-optimization/77855 (wrong code at -O3 on x86_64-linux-gnu (in both 32-bit and 64-bit modes)) 2016-10-06 12:17:53 +00:00
tree-ssa-propagate.c tree-ssa-propagate.h (substitute_and_fold): Adjust prototype. 2016-10-18 07:49:32 +00:00
tree-ssa-propagate.h tree-ssa-propagate.h (substitute_and_fold): Adjust prototype. 2016-10-18 07:49:32 +00:00
tree-ssa-reassoc.c fold-const.c (tree_swap_operands_p): Remove unused arg. 2016-11-09 15:15:28 +00:00
tree-ssa-sccvn.c fold-const.c (tree_swap_operands_p): Remove unused arg. 2016-11-09 15:15:28 +00:00
tree-ssa-sccvn.h re PR tree-optimization/71901 (ice in find_or_generate_expression) 2016-07-19 10:19:46 +00:00
tree-ssa-scopedtables.c
tree-ssa-scopedtables.h
tree-ssa-sink.c
tree-ssa-strlen.c Add inline functions for various bitwise operations. 2016-09-16 15:20:44 -04:00
tree-ssa-structalias.c re PR tree-optimization/78035 (Inconsistency between address comparison and alias analysis) 2016-11-02 08:29:48 +00:00
tree-ssa-tail-merge.c Do not merge BBs with a different EH landing pads (PR 2016-10-13 10:06:35 +00:00
tree-ssa-ter.c Iterator to visit SSA 2016-09-15 02:03:51 +00:00
tree-ssa-ter.h
tree-ssa-threadbackward.c tree-ssa-threadbackward.c (fsm_find_thread_path): Remove unneeded parameter. 2016-11-15 09:16:49 -07:00
tree-ssa-threadbackward.h
tree-ssa-threadedge.c fold-const.c (tree_swap_operands_p): Remove unused arg. 2016-11-09 15:15:28 +00:00
tree-ssa-threadedge.h
tree-ssa-threadupdate.c re PR tree-optimization/77424 (Identical statements in if-else branches) 2016-10-11 15:41:51 -06:00
tree-ssa-threadupdate.h
tree-ssa-uncprop.c
tree-ssa-uninit.c re PR middle-end/61409 (-Wmaybe-uninitialized false-positive with -O2) 2016-11-20 18:34:06 +00:00
tree-ssa.c Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
tree-ssa.h
tree-ssanames.c Make-lang.in (C_AND_OBJC_OBJS): Add gimple-parser.o. 2016-11-14 13:51:48 +00:00
tree-ssanames.h Make-lang.in (C_AND_OBJC_OBJS): Add gimple-parser.o. 2016-11-14 13:51:48 +00:00
tree-stdarg.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
tree-stdarg.h
tree-streamer-in.c Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
tree-streamer-out.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
tree-streamer.c [PR lto/77458] Avoid ICE in offloading with differing _FloatN, _FloatNx types 2016-10-19 12:48:46 +02:00
tree-streamer.h cgraph.c (cgraph_node::verify_node): Compare against builtin by using DECL_BUILT_IN_CLASS and DECL_FUNCTION_CODE. 2016-07-25 12:35:08 +00:00
tree-switch-conversion.c
tree-tailcall.c
tree-vect-data-refs.c Support non-masked epilogue vectoriziation 2016-11-16 08:22:39 -08:00
tree-vect-generic.c re PR target/78102 (GCC refuses to generate PCMPEQQ instruction for SSE4.1) 2016-10-25 18:26:12 +02:00
tree-vect-loop-manip.c Support non-masked epilogue vectoriziation 2016-11-16 08:22:39 -08:00
tree-vect-loop.c Support non-masked epilogue vectoriziation 2016-11-16 08:22:39 -08:00
tree-vect-patterns.c re PR target/78102 (GCC refuses to generate PCMPEQQ instruction for SSE4.1) 2016-10-25 18:26:12 +02:00
tree-vect-slp.c re PR tree-optimization/78205 (BB vectorization confused by too large load groups) 2016-11-08 08:06:42 +00:00
tree-vect-stmts.c re PR target/78007 (Important loop from 482.sphinx3 is not vectorized) 2016-11-09 08:19:05 +00:00
tree-vectorizer.c Support non-masked epilogue vectoriziation 2016-11-16 08:22:39 -08:00
tree-vectorizer.h Support non-masked epilogue vectoriziation 2016-11-16 08:22:39 -08:00
tree-vrp.c re PR sanitizer/77823 (ICE: in ubsan_encode_value, at ubsan.c:137 with -fsanitize=undefined and vector types) 2016-11-16 09:28:50 +01:00
tree-vrp.h Fix ipa-vrp convert value_range 2016-09-27 03:41:14 +00:00
tree.c Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
tree.def Fix CASE_CHAIN typos 2016-06-13 18:10:35 +02:00
tree.h Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
treestruct.def
tsan.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
tsan.h
tsystem.h
typeclass.h
typed-splay-tree.c Improvements to typed_splay_tree 2016-09-02 15:22:21 +00:00
typed-splay-tree.h Improvements to typed_splay_tree 2016-09-02 15:22:21 +00:00
ubsan.c re PR sanitizer/77823 (ICE: in ubsan_encode_value, at ubsan.c:137 with -fsanitize=undefined and vector types) 2016-11-16 09:28:50 +01:00
ubsan.h re PR sanitizer/77823 (ICE: in ubsan_encode_value, at ubsan.c:137 with -fsanitize=undefined and vector types) 2016-11-16 09:28:50 +01:00
valtrack.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
valtrack.h
value-prof.c c-common.c (c_common_truthvalue_conversion): Warn for multiplications in boolean context. 2016-10-24 17:14:41 +00:00
value-prof.h Make direct emission of time profiler counter 2016-11-03 15:24:22 +00:00
var-tracking.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
varasm.c Add SET_DECL_MODE 2016-11-18 10:03:12 +00:00
varasm.h
varpool.c omp-low.c (lower_omp_target): Fix up argument to is_reference. 2016-11-10 12:38:05 +01:00
vec.c Selftest framework 2016-06-06 17:11:30 +00:00
vec.h vec.h (vNULL): Extend comment to say = vNULL initialization isn't needed for static vars. 2016-09-23 18:59:14 +02:00
version.c
version.h
vmsdbg.h
vmsdbgout.c Fix gcc/vmsdbgout.c:vmsdbg_debug_hooks for "More trivial bits from early LTO debug merge" 2016-10-12 15:08:53 +02:00
vtable-verify.c tree-ssa.c (target_for_debug_bind, [...]): Use VAR_P and/or VAR_OR_FUNCTION_DECL_P macros. 2016-10-09 13:19:48 +02:00
vtable-verify.h
web.c
wide-int-print.cc builtins.c: Use HOST_WIDE_INT_1 instead of (HOST_WIDE_INT) 1... 2016-07-19 18:40:55 +02:00
wide-int-print.h
wide-int.cc builtins.c: Use HOST_WIDE_INT_1 instead of (HOST_WIDE_INT) 1... 2016-07-19 18:40:55 +02:00
wide-int.h Use rtx_mode_t instead of std::make_pair 2016-11-18 10:04:53 +00:00
xcoff.h
xcoffout.c
xcoffout.h

README.Portability

Copyright (C) 2000-2016 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 now 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.


Avoid unnecessary test before free
----------------------------------

Since SunOS 4 stopped being a reasonable portability target,
(which happened around 2007) there has been no need to guard
against "free (NULL)".  Thus, any guard like the following
constitutes a redundant test:

  if (P)
    free (P);

It is better to avoid the test.[*]
Instead, simply free P, regardless of whether it is NULL.

[*] However, if your profiling exposes a test like this in a
performance-critical loop, say where P is nearly always NULL, and
the cost of calling free on a NULL pointer would be prohibitively
high, consider using __builtin_expect, e.g., like this:

  if (__builtin_expect (ptr != NULL, 0))
    free (ptr);



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.