My tester has been complaining regularly for a little while WRT the riscv port failing to build due minor header file goof's.
While just reordering the headers is sufficient to fix one of the two problems, I took the opportunity to remove > 50 unnecessary includes from riscv.c. The second problem was just a missed #include which is trivially fixed. My tester has verified that riscv32 and riscv64 ports build through libgcc with this change. Installed on the trunk. * config/riscv/riscv.c: Remove unnecessary includes. Reorder remaining includes slightly. * config/riscv/riscv-builtins.c: Include profile-count.h.
diff --git a/gcc/config/riscv/riscv-builtins.c b/gcc/config/riscv/riscv-builtins.c index 626a6a33f99..1311fee6f70 100644 --- a/gcc/config/riscv/riscv-builtins.c +++ b/gcc/config/riscv/riscv-builtins.c @@ -27,6 +27,7 @@ along with GCC; see the file COPYING3. If not see #include "gimple-expr.h" #include "memmodel.h" #include "expmed.h" +#include "profile-count.h" #include "optabs.h" #include "recog.h" #include "diagnostic-core.h" diff --git a/gcc/config/riscv/riscv.c b/gcc/config/riscv/riscv.c index 220de4b2cba..57b2edbcb43 100644 --- a/gcc/config/riscv/riscv.c +++ b/gcc/config/riscv/riscv.c @@ -25,86 +25,30 @@ along with GCC; see the file COPYING3. If not see #include "tm.h" #include "rtl.h" #include "regs.h" -#include "hard-reg-set.h" #include "insn-config.h" -#include "conditions.h" #include "insn-attr.h" #include "recog.h" #include "output.h" -#include "hash-set.h" -#include "machmode.h" -#include "vec.h" -#include "double-int.h" -#include "input.h" #include "alias.h" -#include "symtab.h" -#include "wide-int.h" -#include "inchash.h" #include "tree.h" -#include "fold-const.h" #include "varasm.h" -#include "stringpool.h" #include "stor-layout.h" #include "calls.h" #include "function.h" -#include "hashtab.h" -#include "flags.h" -#include "statistics.h" -#include "real.h" -#include "fixed-value.h" -#include "expmed.h" -#include "dojump.h" #include "explow.h" #include "memmodel.h" #include "emit-rtl.h" -#include "stmt.h" -#include "expr.h" -#include "insn-codes.h" -#include "optabs.h" -#include "libfuncs.h" #include "reload.h" #include "tm_p.h" -#include "ggc.h" -#include "gstab.h" -#include "hash-table.h" -#include "debug.h" #include "target.h" #include "target-def.h" -#include "common/common-target.h" -#include "langhooks.h" -#include "dominance.h" -#include "profile-count.h" -#include "cfg.h" -#include "cfgrtl.h" -#include "cfganal.h" -#include "lcm.h" -#include "cfgbuild.h" -#include "cfgcleanup.h" -#include "predict.h" #include "basic-block.h" +#include "expr.h" +#include "optabs.h" #include "bitmap.h" -#include "regset.h" #include "df.h" -#include "sched-int.h" -#include "tree-ssa-alias.h" -#include "internal-fn.h" -#include "gimple-fold.h" -#include "tree-eh.h" -#include "gimple-expr.h" -#include "is-a.h" -#include "gimple.h" -#include "gimplify.h" #include "diagnostic.h" -#include "target-globals.h" -#include "opts.h" -#include "tree-pass.h" -#include "context.h" -#include "hash-map.h" -#include "plugin-api.h" -#include "ipa-ref.h" -#include "cgraph.h" #include "builtins.h" -#include "rtl-iter.h" /* True if X is an UNSPEC wrapper around a SYMBOL_REF or LABEL_REF. */ #define UNSPEC_ADDRESS_P(X) \