gcc/gcc
Jakub Jelinek d168c883c5 trans-intrinsic.c (gfc_conv_intrinsic_minmax): Use VAR_P (x) instead of TREE_CODE (x) == VAR_DECL.
* trans-intrinsic.c (gfc_conv_intrinsic_minmax): Use VAR_P (x)
	instead of TREE_CODE (x) == VAR_DECL.
	* trans-expr.c (gfc_class_vptr_get, gfc_class_len_get,
	gfc_class_len_or_zero_get, gfc_get_vptr_from_expr,
	gfc_conv_string_length, conv_base_obj_fcn_val,
	gfc_conv_procedure_call, gfc_trans_assignment_1): Likewise.
	* trans-openmp.c (gfc_omp_predetermined_sharing,
	gfc_omp_disregard_value_expr, gfc_omp_private_debug_clause,
	gfc_trans_omp_atomic, gfc_trans_omp_do): Likewise.
	* trans-io.c (nml_get_addr_expr): Likewise.
	* trans-decl.c (gfc_finish_decl, gfc_build_qualified_array,
	gfc_get_symbol_decl, gfc_get_fake_result_decl,
	gfc_trans_deferred_vars, gfc_trans_use_stmts,
	generate_local_decl): Likewise.
	* trans-array.c (trans_array_constructor, trans_array_bound_check,
	build_class_array_ref, gfc_array_init_size,
	gfc_trans_auto_array_allocation, gfc_trans_g77_array,
	gfc_trans_dummy_array_bias, gfc_alloc_allocatable_for_assignment,
	gfc_trans_deferred_array): Likewise.
	* trans.c (gfc_build_array_ref): Likewise.  Use
	VAR_OR_FUNCTION_DECL_P (x) instead of TREE_CODE (x) == VAR_DECL
	|| TREE_CODE (x) == FUNCTION_DECL.

From-SVN: r241482
2016-10-24 18:05:09 +02:00
..
ada Parallelize check-gnat 2016-10-24 11:18:21 +00:00
c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
c-family c-common.c (c_common_truthvalue_conversion): Fix the comment. 2016-10-20 14:00:46 +00:00
common Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
config i386.c (ix86_in_large_data_p, [...]): Use VAR_P (x) instead of TREE_CODE (x) == VAR_DECL. 2016-10-24 18:04:37 +02:00
cp cxx-pretty-print.c (pp_cxx_check_constraint): Use VAR_P (x) instead of TREE_CODE (x) == VAR_DECL. 2016-10-24 18:04:01 +02:00
doc re PR debug/77985 (DW_AT_comp_dir is omitted when filename is absolute and the file does not contain a specific typedef) 2016-10-24 11:57:27 +00:00
fortran trans-intrinsic.c (gfc_conv_intrinsic_minmax): Use VAR_P (x) instead of TREE_CODE (x) == VAR_DECL. 2016-10-24 18:05:09 +02:00
ginclude Define TS 18661-1 CR_DECIMAL_DIG in <float.h>. 2016-09-19 22:53:30 +01:00
go libgo: keep c0 and c1 out of runtime.inc 2016-10-21 21:01:04 +00:00
jit jit: implement gcc_jit_rvalue_set_bool_require_tail_call 2016-05-20 19:12:49 +00:00
lto Add IPA VRP 2016-09-20 23:29:05 +00:00
objc auto-inc-dec.c (try_merge): Remove break after return. 2016-09-27 20:14:10 +02:00
objcp ChangeLog formatting fixes. 2016-09-05 21:42:42 +02:00
po * sv.po: Update. 2016-10-10 23:38:22 +01:00
testsuite re PR testsuite/71491 (gcc.dg/vect/slp-43.c FAILs) 2016-10-24 12:58:20 +00:00
ABOUT-GCC-NLS
BASE-VER * BASE-VER: Set to 7.0.0. 2016-04-15 16:55:57 +02:00
COPYING
COPYING.LIB
COPYING3
COPYING3.LIB
ChangeLog i386.c (ix86_in_large_data_p, [...]): Use VAR_P (x) instead of TREE_CODE (x) == VAR_DECL. 2016-10-24 18:04:37 +02: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-10-24 00:16:14 +00:00
DEV-PHASE
FSFChangeLog
FSFChangeLog.10
FSFChangeLog.11
LANGUAGES
Makefile.in loop splitting 2016-10-20 12:18:32 +00:00
ONEWS
README.Portability
acinclude.m4
aclocal.m4
addresses.h
alias.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
alias.h
alloc-pool.c
alloc-pool.h
asan.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
asan.h
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 Implement C++17 [[maybe_unused]] attribute. 2016-04-25 13:21:49 -04:00
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.c (reorder_basic_blocks_simple): Clear BB_VISITED before using it. 2016-10-17 12:27:48 +00: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 re PR ada/37139 (DEP prevents using Ada tasking) 2016-10-16 20:13:32 +00: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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +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 make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +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 tablejump_p return the label as a rtx_insn * 2016-10-21 12:33:01 +00:00
cfgrtl.h re PR middle-end/70807 (fwprop pass ICE with incoming CDI_DOMINATORS) 2016-05-11 09:33:13 +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 make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
common.md
common.opt loop splitting 2016-10-20 12:18:32 +00:00
compare-elim.c compare-elim.c (conforming_compare): Accept UNSPECs. 2016-10-20 14:38:43 +00:00
conditions.h
config.build
config.gcc alpha-passes.def: New file. 2016-10-11 18:30:45 +02: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 configure.ac (strict_warn): Merge -Wmissing-format-attribute and -Woverloaded-virtual checks for warning... 2016-10-03 17:51:33 +02:00
configure.ac configure.ac (strict_warn): Merge -Wmissing-format-attribute and -Woverloaded-virtual checks for warning... 2016-10-03 17:51:33 +02:00
context.c
context.h
convert.c Implement -Wimplicit-fallthrough. 2016-09-26 09:42:50 +00:00
convert.h
coretypes.h Move OVERRIDE/FINAL from gcc/coretypes.h to include/ansidecl.h 2016-10-14 15:24:58 +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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
cse.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
cselib.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
cselib.h re PR rtl-optimization/70886 (-frename-registers causes boostrap comparison failures on ia64) 2016-05-02 10:08:59 +00:00
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
dbgcnt.h
dbxout.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
dbxout.h
dce.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +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 re PR ada/37139 (DEP prevents using Ada tasking) 2016-10-16 20:13: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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
df.h df: make df_problem instances "const" 2016-04-27 18:18:45 +00: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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
dumpfile.c Only finalize dot files that have been initialized 2016-04-17 05:22:33 +00:00
dumpfile.h Only finalize dot files that have been initialized 2016-04-17 05:22:33 +00:00
dwarf2asm.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
dwarf2out.c re PR debug/77985 (DW_AT_comp_dir is omitted when filename is absolute and the file does not contain a specific typedef) 2016-10-24 11:57:27 +00:00
dwarf2out.h DWARF: turn dw_loc_descr_node field into hash map for frame offset check 2016-04-27 15:03:40 +00: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 make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
except.h
exec-tool.in
explow.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
explow.h Allocate constant size dynamic stack space in the prologue 2016-07-18 13:10:27 +00:00
expmed.c expmed.c (expand_shift_1): Add MAY_FAIL parameter and do not assert that the result is non-zero if it is true. 2016-10-17 22:15:02 +00:00
expmed.h Fix warnings for make profiledbootstrap (PR bootstrap/77788) 2016-10-06 07:33:49 +00:00
expr.c re PR middle-end/77959 (ICE in ix86_decompose_address, at i386/i386.c:14954) 2016-10-14 21:36:58 +02:00
expr.h re PR middle-end/71310 (Bitfields cause load hit store with smaller store and larger load) 2016-06-14 07:26:52 +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 make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +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 Fix handling of -fsanitize-recover* options. 2016-09-26 10:55:34 +00:00
flags.h
fold-const-call.c Fold __builtin_memchr function 2016-10-14 12:09:51 +00:00
fold-const-call.h Fold __builtin_str{n}{case}cmp functions 2016-10-14 12:08:27 +00:00
fold-const.c Support only \0-terminated string in c_getstr and return 2016-10-14 09:54:32 +00:00
fold-const.h Support only \0-terminated string in c_getstr and return 2016-10-14 09:54:32 +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 Create the *logue in the same order as before (PR77962) 2016-10-13 20:25:15 +02:00
function.h make forced labels a vec 2016-08-28 00:03:59 +00:00
fwprop.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +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 Add -fprofile-update option juggling 2016-10-06 07:34:23 +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 * gdbinit.in: Skip line-map.h. 2016-04-28 15:04:23 -04:00
gen-pass-instances.awk * gen-pass-instances.awk: Remove GNUism. 2016-10-09 20:50:52 +00:00
genattr-common.c Make argv const char ** in read_md_files etc 2016-05-06 15:14:05 +00:00
genattr.c genautomata.c cleanup 2016-05-11 21:13:11 +03:00
genattrtab.c read-md.c: Move various state to within class rtx_reader 2016-10-18 00:19:17 +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 Make argv const char ** in read_md_files etc 2016-05-06 15:14:05 +00:00
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 Make argv const char ** in read_md_files etc 2016-05-06 15:14:05 +00:00
gengenrtl.c
gengtype-lex.l
gengtype-parse.c
gengtype-state.c
gengtype.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
gengtype.h
genhooks.c
genmatch.c genmatch.c (dt_operand::gen_gimple_expr): Use get_name to get at the operand to look at with TREE_OPERAND for generic... 2016-10-18 07:25:40 +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 * genmddump.c (main): Convert argv from char ** to const char **. 2016-05-06 22:42:10 +02:00
genmodes.c c-ada-spec.c (dump_ada_function_declaration): Increase buffer size to guarantee it fits the output of the formatted function... 2016-09-01 16:47:49 -06: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 LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +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 ggc-tests.c (test_finalization): Only test need_finalization_p for GCC_VERSION >= 4003. 2016-06-13 16:27:01 +02: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 __builtin_memchr function 2016-10-14 12:09:51 +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 re PR tree-optimization/77677 (ICE at -O1 and above in both 32-bit and 64-bit modes on x86_64-linux-gnu (internal compiler error: in set_value_range, at tree-vrp.c:361)) 2016-09-22 12:16:12 +00:00
gimple-match.h gimple-match.h (maybe_build_generic_op): Adjust prototype. 2016-04-20 12:49:58 +00:00
gimple-predict.h
gimple-pretty-print.c gimple-pretty-print.c (dump_gimple_call_args): Simplify "' " printing. 2016-09-28 11:26:16 +00:00
gimple-pretty-print.h
gimple-ssa-backprop.c use auto_sbitmap in various places 2016-07-26 10:44:08 +00:00
gimple-ssa-isolate-paths.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-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 gimple-ssa-sprintf.c (pass_sprintf_length::gate): Use x > 0 instead of 0 < x. 2016-09-28 23:52:53 +02:00
gimple-ssa-strength-reduction.c re PR tree-optimization/77916 (ICE in verify_gimple_in_cfg: invalid (pointer) operands to plus/minus) 2016-10-19 13:35:14 +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 (struct walk_stmt_info): Add stmt member. 2016-04-19 12:13:04 +00:00
gimple-walk.h gimple-walk.h (struct walk_stmt_info): Add stmt member. 2016-04-19 12:13:04 +00:00
gimple.c re PR ada/37139 (DEP prevents using Ada tasking) 2016-10-16 20:13:32 +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 re PR middle-end/70499 (internal compiler error: in make_ssa_name_fn, at tree-ssanames.c:266) 2016-04-05 08:05:06 +00:00
gimplify-me.h
gimplify.c gimplify.c (gimplify_bind_expr): Handle oacc_declare_returns even for -fstack-reuse=none, or for volatile vars etc. 2016-10-21 17:09:49 +02:00
gimplify.h gimplify.h (get_initialized_tmp_var): Add allow_ssa parameter default true. 2016-05-03 12:06:19 +00:00
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 c/7652 (-Wswitch-break : Warn if a switch case falls through) 2016-08-12 10:30:47 +00:00
graphite-optimize-isl.c
graphite-poly.c
graphite-scop-detection.c Handle NULL def in build_cross_bb_scalars_def 2016-05-07 06:47:07 +00:00
graphite-sese-to-poly.c Fix pdr accesses order 2016-04-09 15:28:24 +00:00
graphite.c re PR bootstrap/70706 (r235082 caused bootstrap failure) 2016-04-17 18:04:51 +00:00
graphite.h
gsstruct.def
gstab.h
gsyms.h
gsyslimits.h
gtm-builtins.def
haifa-sched.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
hard-reg-set.h Fix PR44281, bad RA with global regs. 2016-05-03 09:35:42 +00:00
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 re PR target/77957 (Undefined .LCTOC0 with -fstack-protector-strong -mminimal-toc -O0 on ppc64) 2016-10-13 10:29:03 +02:00
hooks.h re PR target/77957 (Undefined .LCTOC0 with -fstack-protector-strong -mminimal-toc -O0 on ppc64) 2016-10-13 10:29:03 +02: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 re PR hsa/70402 (HSA: SBR instruction can be undefined) 2016-04-04 08:46:51 +00:00
hsa-gen.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
hsa-regalloc.c HSA: handle alignment of string builtins (PR hsa/70391) 2016-03-31 17:10:48 +00:00
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 re PR hsa/70402 (HSA: SBR instruction can be undefined) 2016-04-04 08:46:51 +00:00
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
incpath.h
init-regs.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
input.c Fix warnings for make profiledbootstrap (PR bootstrap/77788) 2016-10-06 07:33:49 +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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
internal-fn.def Implement -Wimplicit-fallthrough. 2016-09-26 09:42:50 +00:00
internal-fn.h internal-fn.h (IFN_UNIQUE_CODES, [...]): New. 2016-09-27 16:46:21 +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
ipa-cp.c ipa-cp.c (ipcp_alignment_lattice): Remove. 2016-10-09 04:48:50 +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 Fix typo in IPA ICF 2016-09-23 08:49:41 +00:00
ipa-icf.h
ipa-inline-analysis.c ipa-inline-analysis.c (find_foldable_builtin_expect): Use gimple_call_internal_p. 2016-09-26 15:50:13 +00:00
ipa-inline-transform.c Add IPA VRP 2016-09-20 23:29:05 +00:00
ipa-inline.c Add IPA VRP 2016-09-20 23:29:05 +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 ADDR_EXPR and nonnull 2016-10-21 20:13:55 +00:00
ipa-prop.h ipa-cp.c (ipcp_alignment_lattice): Remove. 2016-10-09 04:48:50 +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 re PR c++/70594 (-fcompare-debug failure) 2016-04-14 21:21:31 +02:00
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 tree-ssa-propagate.h (substitute_and_fold): Adjust prototype. 2016-10-18 07:49:32 +00:00
ira.h
is-a.h
jump.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
langhooks-def.h langhooks.h (struct lang_hooks_for_decls): Remove function_decl_explicit_p... 2016-10-17 08:53:00 +02:00
langhooks.c langhooks.h (struct lang_hooks_for_decls): Remove function_decl_explicit_p... 2016-10-17 08:53:00 +02:00
langhooks.h langhooks.h (struct lang_hooks_for_decls): Remove function_decl_explicit_p... 2016-10-17 08:53:00 +02: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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
loop-iv.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
loop-unroll.c loop-unroll.c (unroll_loop_runtime_iterations): Condition initial loop peel to loops with exit test at the beginning. 2016-10-14 17:21:19 +00:00
loop-unroll.h
lower-subreg.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17: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 make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +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 machmode.h (mode_complex): Add support to give the complex mode for a given mode. 2016-05-02 23:23:45 +00:00
main.c
match.pd tree-ssa-loop-split.c: Remove trailing spaces. 2016-10-21 09:17:47 +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 * multiple_target.c (pass_data_dispatcher_calls): Fix typo. 2016-08-25 08:07:10 -04:00
omp-builtins.def
omp-low.c omp-low.c (pass_oacc_device_lower::gate): New method. 2016-10-19 13:38:24 +00:00
omp-low.h
omp-simd-clone.c Iterator to visit SSA 2016-09-15 02:03:51 +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
optabs-tree.c
optabs-tree.h
optabs.c optabs.c (expand_parity): Fix mode mismatch, add final conversion and keep looping on failure. 2016-10-15 18:46:02 +00:00
optabs.def optabs.def: Remove optab function gen_int_libfunc for sdivmod_optab and udivmod_optab. 2016-10-14 05:57:33 +00:00
optabs.h
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 Do not disable aggressive loop opts for 2016-10-24 07:00:53 +00: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 Teach VRP to register assertions along default switch labels (PR18046) 2016-07-26 15:19:58 +00:00
params.h Offer suggestions for misspelled --param names. 2016-06-30 00:05:39 +00:00
pass_manager.h Move name_to_pass_map into class pass_manager 2016-05-06 15:18:59 +00:00
passes.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
passes.def loop splitting 2016-10-20 12:18:32 +00:00
plugin.c
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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +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 PR c/77520 - wrong value for extended ASCII characters in -Wformat message 2016-09-09 17:12:10 -06:00
pretty-print.h
print-rtl-function.c Start adding selftests for print_rtx 2016-10-21 13:52:53 +00:00
print-rtl.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
print-rtl.h Start adding selftests for print_rtx 2016-10-21 13:52:53 +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 re PR gcov-profile/46266 (gcov generates data for non-existing file <built-in>) 2016-09-27 13:22:04 +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
ree.c [ree] PR rtl-optimization/78038: Handle global register dataflow definitions in ree 2016-10-21 07:55:30 +00:00
reg-notes.def
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 Goodbye REG_FREQ_CALLS_CROSSED and REG_N_THROWING_CALLS_CROSSED 2016-04-30 09:31:52 +09:30
regset.h
regstat.c Goodbye REG_FREQ_CALLS_CROSSED and REG_N_THROWING_CALLS_CROSSED 2016-04-30 09:31:52 +09:30
reload.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
reload.h
reload1.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
reorg.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +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 Start adding selftests for print_rtx 2016-10-21 13:52:53 +00:00
rtl.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
rtl.def Fix comment in rtl.def 2016-04-27 17:54:42 +00:00
rtl.h make tablejump_p return the label as a rtx_insn * 2016-10-21 12:33:01 +00:00
rtlanal.c make tablejump_p return the label as a rtx_insn * 2016-10-21 12:33:01 +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
sanopt.c ipa-inline-analysis.c (find_foldable_builtin_expect): Use gimple_call_internal_p. 2016-09-26 15:50:13 +00:00
sbitmap.c sbitmap: Remove popcount 2016-04-28 20:43:12 +02:00
sbitmap.h add auto_sbitmap class 2016-07-26 10:43:58 +00:00
sched-deps.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
sched-ebb.c
sched-int.h re PR rtl-optimization/77425 (Pointer test follows dereference in sched-int.h) 2016-09-15 14:27:35 +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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +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-run-tests.c Introduce class edit_context 2016-09-02 18:00:57 +00:00
selftest.c Add selftest::read_file 2016-10-12 14:55:47 +00:00
selftest.h Add selftest::read_file 2016-10-12 14:55:47 +00:00
sese.c
sese.h
shrink-wrap.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
shrink-wrap.h shrink-wrap: Shrink-wrapping for separate components 2016-10-12 17:32:23 +02:00
signop.h
simplify-rtx.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
stor-layout.h re PR ada/70759 (Ada rts fails to build with -mabi=ilp32) 2016-04-27 07:49:49 +00:00
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 Symbol summary: refactor usage of gcc_checking_asserts 2016-05-02 09:20:01 +00:00
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
target.def re PR debug/77985 (DW_AT_comp_dir is omitted when filename is absolute and the file does not contain a specific typedef) 2016-10-24 11:57:27 +00: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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
targhooks.h PR bootstrap/77819 - undefined reference to gnu_libc_printf_pointer_format with uClibc 2016-10-05 09:21:40 -06:00
timevar.c passes.c (execute_todo): Do not push/pop TV_TODO. 2016-08-12 07:38:24 +00:00
timevar.def loop splitting 2016-10-20 12:18:32 +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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
toplev.h Selftest framework 2016-06-06 17:11:30 +00:00
tracer.c tracer: Make bb_seen static 2016-04-28 19:08:39 +02:00
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 To... 2016-05-18 14:01:31 +00:00
tree-cfg.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-cfg.h tree-cfg.h (should_remove_lhs_p): New predicate. 2016-05-24 13:34:37 +00:00
tree-cfgcleanup.c re PR tree-optimization/71661 (wrong code at -O3) 2016-10-06 10:23:22 -06: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 re PR tree-optimization/56625 (After if-conversion vectorizer doesn't recognize similar loads) 2016-04-20 15:41:45 +00:00
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 Update dom_info 2016-10-17 11:05:12 -07:00
tree-inline.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-inline.h
tree-into-ssa.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-into-ssa.h
tree-iterator.c
tree-iterator.h
tree-loop-distribution.c re PR tree-optimization/72824 (Signed floating point zero semantics broken at optimization level -O3 (tree-loop-distribute-patterns)) 2016-08-15 10:31:05 +02: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 loop splitting 2016-10-20 12:18:32 +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 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-pretty-print.h
tree-profile.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +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 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.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 tree-ssa-alias.c (ptrs_compare_unequal): Remove code duplication. 2016-10-20 14:14:47 +00:00
tree-ssa-alias.h Set nonnull attribute to ptr_info_def based on VRP 2016-10-17 23:35:48 +00:00
tree-ssa-ccp.c tree-ssa-propagate.h (substitute_and_fold): Adjust prototype. 2016-10-18 07:49:32 +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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +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 re PR tree-optimization/71947 (x ^ y not folded to 0 if x == y by DOM) 2016-10-10 14:40:59 -06:00
tree-ssa-dom.h
tree-ssa-dse.c
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.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-live.h
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 middle-end/71734 (FAIL: libgomp.fortran/simd4.f90 -O3 -g execution test) 2016-08-10 08:03:02 -07: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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +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 re PR tree-optimization/78076 (Conditional jump or move depends on uninitialised value @ tree-vect-loop.c:2307) 2016-10-24 10:31:03 +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 Add inline functions for various bitwise operations. 2016-09-16 15:20:44 -04: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/55152 (MAX_EXPR(a,-a) is really ABS_EXPR(a)) 2016-09-29 12:27:19 +00:00
tree-ssa-phiprop.c re PR tree-optimization/71039 (ICE: verify_ssa failed (error: definition in block 4 does not dominate use in block 5) w/ -O1 and above) 2016-05-10 13:13:59 +00:00
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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
tree-ssa-sccvn.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +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 tree-ssa-alias.c (ptrs_compare_unequal): Remove code duplication. 2016-10-20 14:14:47 +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 re PR tree-optimization/71550 (wrong code at -O3 on x86_64-linux-gnu) 2016-10-03 13:28:24 -06:00
tree-ssa-threadbackward.h
tree-ssa-threadedge.c Improve forward jump threading of switch statements (PR18046) 2016-08-05 23:29:53 +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 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.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.h
tree-ssanames.c Set nonnull attribute to ptr_info_def based on VRP 2016-10-17 23:35:48 +00:00
tree-ssanames.h Set nonnull attribute to ptr_info_def based on VRP 2016-10-17 23:35: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 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-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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
tree-vect-generic.c Add inline functions for various bitwise operations. 2016-09-16 15:20:44 -04:00
tree-vect-loop-manip.c re PR tree-optimization/78005 (172.mgrid and 450.soplex miscompare) 2016-10-19 11:02:23 +00:00
tree-vect-loop.c tree-vect-loop.c (loop_niters_no_overflow): New func. 2016-10-13 11:09:23 +00:00
tree-vect-patterns.c Add inline functions for various bitwise operations. 2016-09-16 15:20:44 -04:00
tree-vect-slp.c re PR tree-optimization/71752 (ICE in compute_live_loop_exits, at tree-ssa-loop-manip.c:229 w/ -O1 -ftree-vectorize) 2016-08-17 15:31:44 +00:00
tree-vect-stmts.c tree-vect-stmts.c (vectorizable_load): Avoid emitting vector constructors with vector elements. 2016-09-29 07:16:10 +00:00
tree-vectorizer.c ipa-inline-analysis.c (find_foldable_builtin_expect): Use gimple_call_internal_p. 2016-09-26 15:50:13 +00:00
tree-vectorizer.h tree-vect-loop-manip.c (adjust_vec_debug_stmts): Don't release adjust_vec automatically. 2016-10-13 11:03:31 +00:00
tree-vrp.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
tree-vrp.h Fix ipa-vrp convert value_range 2016-09-27 03:41:14 +00:00
tree.c re PR ada/37139 (DEP prevents using Ada tasking) 2016-10-16 20:13:32 +00:00
tree.def Fix CASE_CHAIN typos 2016-06-13 18:10:35 +02:00
tree.h re PR ada/37139 (DEP prevents using Ada tasking) 2016-10-16 20:13:32 +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 Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
ubsan.h
valtrack.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
valtrack.h
value-prof.c Remove HIST_TYPE_CONST_DELTA counter type (PR gcov-profile/23332) 2016-09-26 11:04:18 +00:00
value-prof.h Remove HIST_TYPE_CONST_DELTA counter type (PR gcov-profile/23332) 2016-09-26 11:04:18 +00:00
var-tracking.c Move MEMMODEL_* from coretypes.h to memmodel.h 2016-10-13 14:17:52 +00:00
varasm.c make LABEL_REF_LABEL a rtx_insn * 2016-10-21 12:32:56 +00:00
varasm.h
varpool.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
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 builtins.c: Use HOST_WIDE_INT_1 instead of (HOST_WIDE_INT) 1... 2016-07-19 18:40:55 +02: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.