On Tue, 19 Dec 2017, Jakub Jelinek wrote:

> Hi!
> 
> Segher's comment in one of the PRs
> ('-- We don't use "yoda conditions" in GCC ("0 == x");')
> I was looking at led me discover we have more Yoda conditions in the source
> than healthy.
> 
> This patch fixes the comparison order to the usual style.
> 
> If some port maintainer used 1 <= x && x <= 24 style and doesn't like
> x >= 1 && x <= 24 for some reason, there is always IN_RANGE macro and
> IN_RANGE (x, 1, 24) can be used instead (though, such a change requires
> double checking the type of x, it shouldn't be wider than HOST_WIDE_INT).
> 
> In various spots the changes not only improve readability of the comparison
> itself, but also by moving the often much more complex comparison operand
> to left more stuff fits on lines and we need fewer line breaks.
> 
> Ok for trunk if it passes bootstrap/regtest on x86_64-linux and i686-linux?

Ok.

Richard.

> 2017-12-19  Jakub Jelinek  <ja...@redhat.com>
> 
>       * read-rtl.c (parse_reg_note_name): Replace Yoda conditions with
>       typical order conditions.
>       * sel-sched.c (extract_new_fences_from): Likewise.
>       * config/visium/constraints.md (J, K, L): Likewise.
>       * config/visium/predicates.md (const_shift_operand): Likewise.
>       * config/visium/visium.c (visium_legitimize_address,
>       visium_legitimize_reload_address): Likewise.
>       * config/m68k/m68k.c (output_reg_adjust, emit_reg_adjust): Likewise.
>       * config/arm/arm.c (arm_block_move_unaligned_straight): Likewise.
>       * config/avr/constraints.md (Y01, Ym1, Y02, Ym2): Likewise.
>       * config/avr/avr-log.c (avr_vdump, avr_log_set_avr_log,
>       SET_DUMP_DETAIL): Likewise.
>       * config/avr/predicates.md (const_8_16_24_operand): Likewise.
>       * config/avr/avr.c (STR_PREFIX_P, avr_popcount_each_byte,
>       avr_is_casesi_sequence, avr_casei_sequence_check_operands,
>       avr_set_core_architecture, avr_set_current_function,
>       avr_legitimize_reload_address, avr_asm_len, avr_print_operand,
>       output_movqi, output_movsisf, avr_out_plus, avr_out_bitop,
>       avr_out_fract, avr_adjust_insn_length, avr_encode_section_info,
>       avr_2word_insn_p, output_reload_in_const, avr_has_nibble_0xf,
>       avr_map_decompose, avr_fold_builtin): Likewise.
>       * config/avr/driver-avr.c (avr_devicespecs_file): Likewise.
>       * config/avr/gen-avr-mmcu-specs.c (str_prefix_p, print_mcu): Likewise.
>       * config/i386/i386.c (ix86_parse_stringop_strategy_string): Likewise.
>       * config/m32c/m32c-pragma.c (m32c_pragma_memregs): Likewise.
>       * config/m32c/m32c.c (m32c_conditional_register_usage,
>       m32c_address_cost): Likewise.
>       * config/m32c/predicates.md (shiftcount_operand,
>       longshiftcount_operand): Likewise.
>       * config/iq2000/iq2000.c (iq2000_expand_prologue): Likewise.
>       * config/nios2/nios2.c (nios2_handle_custom_fpu_insn_option,
>       can_use_cdx_ldstw): Likewise.
>       * config/nios2/nios2.h (CDX_REG_P): Likewise.
>       * config/cr16/cr16.h (RETURN_ADDR_RTX, REGNO_MODE_OK_FOR_BASE_P):
>       Likewise.
>       * config/cr16/cr16.md (*mov<mode>_double): Likewise.
>       * config/cr16/cr16.c (cr16_create_dwarf_for_multi_push): Likewise.
>       * config/h8300/h8300.c (h8300_rtx_costs, get_shift_alg): Likewise.
>       * config/vax/constraints.md (U06, U08, U16, CN6, S08, S16): Likewise.
>       * config/vax/vax.c (adjacent_operands_p): Likewise.
>       * config/ft32/constraints.md (L, b, KA): Likewise.
>       * config/ft32/ft32.c (ft32_load_immediate, ft32_expand_prologue):
>       Likewise.
>       * cfgexpand.c (expand_stack_alignment): Likewise.
>       * gcse.c (insert_expr_in_table): Likewise.
>       * print-rtl.c (rtx_writer::print_rtx_operand_codes_E_and_V): Likewise.
>       * cgraphunit.c (cgraph_node::expand): Likewise.
>       * ira-build.c (setup_min_max_allocno_live_range_point): Likewise.
>       * emit-rtl.c (add_insn): Likewise.
>       * input.c (dump_location_info): Likewise.
>       * passes.c (NEXT_PASS): Likewise.
>       * read-rtl-function.c (parse_note_insn_name,
>       function_reader::read_rtx_operand_r, function_reader::parse_mem_expr):
>       Likewise.
>       * sched-rgn.c (sched_rgn_init): Likewise.
>       * diagnostic-show-locus.c (layout::show_ruler): Likewise.
>       * combine.c (find_split_point, simplify_if_then_else, force_to_mode,
>       if_then_else_cond, simplify_shift_const_1, simplify_comparison): 
> Likewise.
>       * explow.c (eliminate_constant_term): Likewise.
>       * final.c (leaf_renumber_regs_insn): Likewise.
>       * cfgrtl.c (print_rtl_with_bb): Likewise.
>       * genhooks.c (emit_init_macros): Likewise.
>       * poly-int.h (maybe_ne, maybe_le, maybe_lt): Likewise.
>       * tree-data-ref.c (conflict_fn): Likewise.
>       * selftest.c (assert_streq): Likewise.
>       * expr.c (store_constructor_field, expand_expr_real_1): Likewise.
>       * fold-const.c (fold_range_test, extract_muldiv_1, fold_truth_andor,
>       fold_binary_loc, multiple_of_p): Likewise.
>       * reload.c (push_reload, find_equiv_reg): Likewise.
>       * et-forest.c (et_nca, et_below): Likewise.
>       * dbxout.c (dbxout_symbol_location): Likewise.
>       * reorg.c (relax_delay_slots): Likewise.
>       * dojump.c (do_compare_rtx_and_jump): Likewise.
>       * gengtype-parse.c (type): Likewise.
>       * simplify-rtx.c (simplify_gen_ternary, simplify_gen_relational,
>       simplify_const_relational_operation): Likewise.
>       * reload1.c (do_output_reload): Likewise.
>       * dumpfile.c (get_dump_file_info_by_switch): Likewise.
>       * gengtype.c (type_for_name): Likewise.
>       * gimple-ssa-sprintf.c (format_directive): Likewise.
> ada/
>       * gcc-interface/trans.c (Loop_Statement_to_gnu): Replace Yoda
>       conditions with typical order conditions.
>       * gcc-interface/misc.c (gnat_get_array_descr_info,
>       default_pass_by_ref): Likewise.
>       * gcc-interface/decl.c (gnat_to_gnu_entity): Likewise.
>       * adaint.c (__gnat_tmp_name): Likewise.
> c-family/
>       * known-headers.cc (get_stdlib_header_for_name): Replace Yoda
>       conditions with typical order conditions.
> c/
>       * c-typeck.c (comptypes_internal, function_types_compatible_p,
>       perform_integral_promotions, digest_init): Replace Yoda conditions
>       with typical order conditions.
>       * c-decl.c (check_bitfield_type_and_width): Likewise.
> cp/
>       * name-lookup.c (get_std_name_hint): Replace Yoda conditions with
>       typical order conditions.
>       * class.c (check_bitfield_decl): Likewise.
>       * pt.c (convert_template_argument): Likewise.
>       * decl.c (duplicate_decls): Likewise.
>       * typeck.c (commonparms): Likewise.
> fortran/
>       * scanner.c (preprocessor_line): Replace Yoda conditions with typical
>       order conditions.
>       * dependency.c (check_section_vs_section): Likewise.
>       * trans-array.c (gfc_conv_expr_descriptor): Likewise.
> jit/
>       * jit-playback.c (get_type, playback::compile_to_file::copy_file,
>       playback::context::acquire_mutex): Replace Yoda conditions with
>       typical order conditions.
>       * libgccjit.c (gcc_jit_context_new_struct_type,
>       gcc_jit_struct_set_fields, gcc_jit_context_new_union_type,
>       gcc_jit_context_new_function, gcc_jit_timer_pop): Likewise.
>       * jit-builtins.c (matches_builtin): Likewise.
>       * jit-recording.c (recording::compound_type::set_fields,
>       recording::fields::write_reproducer, recording::rvalue::set_scope,
>       recording::function::validate): Likewise.
>       * jit-logging.c (logger::decref): Likewise.
> 
> --- gcc/read-rtl.c.jj 2017-09-01 09:26:37.000000000 +0200
> +++ gcc/read-rtl.c    2017-12-19 13:27:32.464594040 +0100
> @@ -1229,7 +1229,7 @@ static int
>  parse_reg_note_name (const char *string)
>  {
>    for (int i = 0; i < REG_NOTE_MAX; i++)
> -    if (0 == strcmp (string, GET_REG_NOTE_NAME (i)))
> +    if (strcmp (string, GET_REG_NOTE_NAME (i)) == 0)
>        return i;
>    fatal_with_file_and_line ("unrecognized REG_NOTE name: `%s'", string);
>  }
> --- gcc/sel-sched.c.jj        2017-12-13 19:44:59.000000000 +0100
> +++ gcc/sel-sched.c   2017-12-19 13:31:25.891621738 +0100
> @@ -672,7 +672,7 @@ extract_new_fences_from (flist_t old_fen
>      {
>        int seqno = INSN_SEQNO (succ);
>  
> -      if (0 < seqno && seqno <= orig_max_seqno
> +      if (seqno > 0 && seqno <= orig_max_seqno
>            && (pipelining_p || INSN_SCHED_TIMES (succ) <= 0))
>          {
>            bool b = (in_same_ebb_p (insn, succ)
> --- gcc/config/visium/constraints.md.jj       2017-01-01 12:45:40.000000000 
> +0100
> +++ gcc/config/visium/constraints.md  2017-12-19 14:30:11.925859534 +0100
> @@ -48,17 +48,17 @@ (define_register_constraint "v" "R3"
>  (define_constraint "J"
>    "Integer constant in the range 0 .. 65535 (16-bit immediate)"
>    (and (match_code "const_int")
> -       (match_test "0 <= ival && ival <= 65535")))
> +       (match_test "ival >= 0 && ival <= 65535")))
>  
>  (define_constraint "K"
>    "Integer constant in the range 1 .. 31 (5-bit immediate)"
>    (and (match_code "const_int")
> -       (match_test "1 <= ival && ival <= 31")))
> +       (match_test "ival >= 1 && ival <= 31")))
>  
>  (define_constraint "L"
>    "Integer constant in the range -65535 .. -1 (16-bit negative immediate)"
>    (and (match_code "const_int")
> -       (match_test "-65535 <= ival && ival <= -1")))
> +       (match_test "ival >= -65535 && ival <= -1")))
>  
>  (define_constraint "M"
>    "Integer constant -1"
> --- gcc/config/visium/predicates.md.jj        2017-09-01 09:26:56.000000000 
> +0200
> +++ gcc/config/visium/predicates.md   2017-12-19 14:30:40.714495341 +0100
> @@ -25,7 +25,7 @@ (define_predicate "const0_operand"
>  ;; Return true if OP is a constant in the range 1 .. 31.
>  (define_predicate "const_shift_operand"
>    (and (match_code "const_int")
> -       (match_test "1 <= INTVAL (op) && INTVAL (op) <= 31")))
> +       (match_test "INTVAL (op) >= 1 && INTVAL (op) <= 31")))
>  
>  ;; Return true if OP is either a register or the constant 0.
>  (define_predicate "reg_or_0_operand"
> --- gcc/config/visium/visium.c.jj     2017-12-18 14:57:34.000000000 +0100
> +++ gcc/config/visium/visium.c        2017-12-19 14:31:13.663078523 +0100
> @@ -1922,7 +1922,7 @@ visium_legitimize_address (rtx x, rtx ol
>        int offset_base = offset & ~mask;
>  
>        /* Check that all of the words can be accessed.  */
> -      if (4 < size && 0x80 < size + offset - offset_base)
> +      if (size > 4 && 0x80 < size + offset - offset_base)
>       offset_base = offset & ~0x3f;
>        if (offset_base != 0 && offset_base != offset && (offset & mask1) == 0)
>       {
> @@ -1968,7 +1968,7 @@ visium_legitimize_reload_address (rtx x,
>        int offset_base = offset & ~mask;
>  
>        /* Check that all of the words can be accessed.  */
> -      if (4 < size && 0x80 < size + offset - offset_base)
> +      if (size > 4 && 0x80 < size + offset - offset_base)
>       offset_base = offset & ~0x3f;
>  
>        if (offset_base && (offset & mask1) == 0)
> --- gcc/config/m68k/m68k.c.jj 2017-12-18 14:57:31.000000000 +0100
> +++ gcc/config/m68k/m68k.c    2017-12-19 14:24:12.230409888 +0100
> @@ -3523,8 +3523,7 @@ output_reg_adjust (rtx reg, int n)
>  {
>    const char *s;
>  
> -  gcc_assert (GET_MODE (reg) == SImode
> -           && -12 <= n && n != 0 && n <= 12);
> +  gcc_assert (GET_MODE (reg) == SImode && n >= -12 && n != 0 && n <= 12);
>  
>    switch (n)
>      {
> @@ -3566,8 +3565,7 @@ emit_reg_adjust (rtx reg1, int n)
>  {
>    rtx reg2;
>  
> -  gcc_assert (GET_MODE (reg1) == SImode
> -           && -12 <= n && n != 0 && n <= 12);
> +  gcc_assert (GET_MODE (reg1) == SImode && n >= -12 && n != 0 && n <= 12);
>  
>    reg1 = copy_rtx (reg1);
>    reg2 = copy_rtx (reg1);
> --- gcc/config/arm/arm.c.jj   2017-12-18 14:57:34.000000000 +0100
> +++ gcc/config/arm/arm.c      2017-12-19 14:02:20.070050866 +0100
> @@ -13987,7 +13987,7 @@ arm_block_move_unaligned_straight (rtx d
>    HOST_WIDE_INT src_autoinc, dst_autoinc;
>    rtx mem, addr;
>    
> -  gcc_assert (1 <= interleave_factor && interleave_factor <= 4);
> +  gcc_assert (interleave_factor >= 1 && interleave_factor <= 4);
>    
>    /* Use hard registers if we have aligned source or destination so we can 
> use
>       load/store multiple with contiguous registers.  */
> --- gcc/config/avr/constraints.md.jj  2017-01-01 12:45:41.000000000 +0100
> +++ gcc/config/avr/constraints.md     2017-12-19 14:08:26.664395701 +0100
> @@ -224,25 +224,25 @@ (define_constraint "Y00"
>  (define_constraint "Y01"
>    "Fixed-point or integer constant with bit representation 0x1"
>    (ior (and (match_code "const_fixed")
> -            (match_test "1 == INTVAL (avr_to_int_mode (op))"))
> +         (match_test "INTVAL (avr_to_int_mode (op)) == 1"))
>         (match_test "satisfies_constraint_P (op)")))
>  
>  (define_constraint "Ym1"
>    "Fixed-point or integer constant with bit representation -0x1"
>    (ior (and (match_code "const_fixed")
> -            (match_test "-1 == INTVAL (avr_to_int_mode (op))"))
> +         (match_test "INTVAL (avr_to_int_mode (op)) == -1"))
>         (match_test "satisfies_constraint_N (op)")))
>  
>  (define_constraint "Y02"
>    "Fixed-point or integer constant with bit representation 0x2"
>    (ior (and (match_code "const_fixed")
> -            (match_test "2 == INTVAL (avr_to_int_mode (op))"))
> +         (match_test "INTVAL (avr_to_int_mode (op)) == 2"))
>         (match_test "satisfies_constraint_K (op)")))
>  
>  (define_constraint "Ym2"
>    "Fixed-point or integer constant with bit representation -0x2"
>    (ior (and (match_code "const_fixed")
> -            (match_test "-2 == INTVAL (avr_to_int_mode (op))"))
> +         (match_test "INTVAL (avr_to_int_mode (op)) == -2"))
>         (match_test "satisfies_constraint_Cm2 (op)")))
>  
>  (define_constraint "Yx2"
> --- gcc/config/avr/avr-log.c.jj       2017-12-18 14:57:29.000000000 +0100
> +++ gcc/config/avr/avr-log.c  2017-12-19 14:39:17.372941421 +0100
> @@ -86,7 +86,7 @@ avr_vdump (FILE *stream, const char *cal
>  {
>    va_list ap;
>          
> -  if (NULL == stream && dump_file)
> +  if (stream == NULL && dump_file)
>      stream = dump_file;
>  
>    va_start (ap, caller);
> @@ -294,15 +294,15 @@ avr_log_set_avr_log (void)
>        str[0] = ',';
>        strcat (stpcpy (str+1, avr_log_details), ",");
>  
> -      all |= NULL != strstr (str, ",all,");
> -      info = NULL != strstr (str, ",?,");
> +      all |= strstr (str, ",all,") != NULL;
> +      info = strstr (str, ",?,") != NULL;
>  
>        if (info)
>          fprintf (stderr, "\n-mlog=");
>  
>  #define SET_DUMP_DETAIL(S)                                       \
>        do {                                                       \
> -        avr_log.S = (all || NULL != strstr (str, "," #S ","));   \
> +     avr_log.S = (all || strstr (str, "," #S ",") != NULL);   \
>          if (info)                                                \
>            fprintf (stderr, #S ",");                              \
>        } while (0)
> --- gcc/config/avr/predicates.md.jj   2017-01-01 12:45:41.000000000 +0100
> +++ gcc/config/avr/predicates.md      2017-12-19 14:10:40.638694770 +0100
> @@ -221,7 +221,7 @@ (define_predicate "combine_pseudo_regist
>  ;; 8 or 16 or 24.
>  (define_predicate "const_8_16_24_operand"
>    (and (match_code "const_int")
> -       (match_test "8 == INTVAL(op) || 16 == INTVAL(op) || 24 == 
> INTVAL(op)")))
> +       (match_test "INTVAL(op) == 8 || INTVAL(op) == 16 || INTVAL(op) == 
> 24")))
>  
>  ;; Unsigned CONST_INT that fits in 8 bits, i.e. 0..255.
>  (define_predicate "u8_operand"
> --- gcc/config/avr/avr.c.jj   2017-12-18 14:57:29.000000000 +0100
> +++ gcc/config/avr/avr.c      2017-12-19 14:38:38.542434284 +0100
> @@ -65,7 +65,7 @@
>  #define MAX_LD_OFFSET(MODE) (64 - (signed)GET_MODE_SIZE (MODE))
>  
>  /* Return true if STR starts with PREFIX and false, otherwise.  */
> -#define STR_PREFIX_P(STR,PREFIX) (0 == strncmp (STR, PREFIX, strlen 
> (PREFIX)))
> +#define STR_PREFIX_P(STR,PREFIX) (strncmp (STR, PREFIX, strlen (PREFIX)) == 
> 0)
>  
>  /* The 4 bits starting at SECTION_MACH_DEP are reserved to store the
>     address space where data is to be located.
> @@ -269,7 +269,7 @@ avr_popcount_each_byte (rtx xval, int n_
>        rtx xval8 = simplify_gen_subreg (QImode, xval, mode, i);
>        unsigned int val8 = UINTVAL (xval8) & GET_MODE_MASK (QImode);
>  
> -      if (0 == (pop_mask & (1 << popcount_hwi (val8))))
> +      if ((pop_mask & (1 << popcount_hwi (val8))) == 0)
>          return false;
>      }
>  
> @@ -461,8 +461,8 @@ avr_is_casesi_sequence (basic_block bb,
>  
>    // Assert on the anatomy of xinsn's operands we are going to work with.
>  
> -  gcc_assert (11 == recog_data.n_operands);
> -  gcc_assert (4 == recog_data.n_dups);
> +  gcc_assert (recog_data.n_operands == 11);
> +  gcc_assert (recog_data.n_dups == 4);
>  
>    if (dump_file)
>      {
> @@ -509,7 +509,7 @@ avr_casei_sequence_check_operands (rtx *
>  
>    if (sub_5
>        && SUBREG_P (sub_5)
> -      && 0 == SUBREG_BYTE (sub_5)
> +      && SUBREG_BYTE (sub_5) == 0
>        && rtx_equal_p (xop[5], SUBREG_REG (sub_5)))
>      return true;
>  
> @@ -697,7 +697,7 @@ avr_set_core_architecture (void)
>  
>    for (const avr_mcu_t *mcu = avr_mcu_types; ; mcu++)
>      {
> -      if (NULL == mcu->name)
> +      if (mcu->name == NULL)
>          {
>            /* Reached the end of `avr_mcu_types'.  This should actually never
>               happen as options are provided by device-specs.  It could be a
> @@ -709,9 +709,9 @@ avr_set_core_architecture (void)
>            avr_inform_core_architectures ();
>            break;
>          }
> -      else if (0 == strcmp (mcu->name, avr_mmcu)
> +      else if (strcmp (mcu->name, avr_mmcu) == 0
>                 // Is this a proper architecture ?
> -               && NULL == mcu->macro)
> +            && mcu->macro == NULL)
>          {
>            avr_arch = &avr_arch_types[mcu->arch_id];
>            if (avr_n_flash < 0)
> @@ -1109,9 +1109,9 @@ avr_set_current_function (tree decl)
>    // Common problem is using "ISR" without first including avr/interrupt.h.
>    const char *name = IDENTIFIER_POINTER (DECL_NAME (decl));
>    name = default_strip_name_encoding (name);
> -  if (0 == strcmp ("ISR", name)
> -      || 0 == strcmp ("INTERRUPT", name)
> -      || 0 == strcmp ("SIGNAL", name))
> +  if (strcmp ("ISR", name) == 0
> +      || strcmp ("INTERRUPT", name) == 0
> +      || strcmp ("SIGNAL", name) == 0)
>      {
>        warning_at (loc, OPT_Wmisspelled_isr, "%qs is a reserved identifier"
>                    " in AVR-LibC.  Consider %<#include <avr/interrupt.h>%>"
> @@ -2572,7 +2572,7 @@ avr_legitimize_reload_address (rtx *px,
>  
>    if (GET_CODE (x) == PLUS
>        && REG_P (XEXP (x, 0))
> -      && 0 == reg_equiv_constant (REGNO (XEXP (x, 0)))
> +      && reg_equiv_constant (REGNO (XEXP (x, 0))) == 0
>        && CONST_INT_P (XEXP (x, 1))
>        && INTVAL (XEXP (x, 1)) >= 1)
>      {
> @@ -2639,10 +2639,8 @@ avr_legitimize_reload_address (rtx *px,
>  static const char*
>  avr_asm_len (const char* tpl, rtx* operands, int* plen, int n_words)
>  {
> -  if (NULL == plen)
> -    {
> -      output_asm_insn (tpl, operands);
> -    }
> +  if (plen == NULL)
> +    output_asm_insn (tpl, operands);
>    else
>      {
>        if (n_words < 0)
> @@ -2969,7 +2967,7 @@ avr_print_operand (FILE *file, rtx x, in
>    else if (code == 'x')
>      {
>        /* Constant progmem address - like used in jmp or call */
> -      if (0 == text_segment_operand (x, VOIDmode))
> +      if (text_segment_operand (x, VOIDmode) == 0)
>          if (warning (0, "accessing program memory"
>                       " with data memory address"))
>            {
> @@ -3930,7 +3928,7 @@ output_movqi (rtx_insn *insn, rtx operan
>        return avr_out_lpm (insn, operands, plen);
>      }
>  
> -  gcc_assert (1 == GET_MODE_SIZE (GET_MODE (dest)));
> +  gcc_assert (GET_MODE_SIZE (GET_MODE (dest)) == 1);
>  
>    if (REG_P (dest))
>      {
> @@ -4925,7 +4923,7 @@ output_movsisf (rtx_insn *insn, rtx oper
>    if (!l)
>      l = &dummy;
>  
> -  gcc_assert (4 == GET_MODE_SIZE (GET_MODE (dest)));
> +  gcc_assert (GET_MODE_SIZE (GET_MODE (dest)) == 4);
>  
>    if (REG_P (dest))
>      {
> @@ -8265,7 +8263,7 @@ avr_out_plus (rtx insn, rtx *xop, int *p
>        return "";
>      }
>  
> -  if (8 == n_bytes)
> +  if (n_bytes == 8)
>      {
>        op[0] = gen_rtx_REG (DImode, ACC_A);
>        op[1] = gen_rtx_REG (DImode, ACC_A);
> @@ -8383,11 +8381,11 @@ avr_out_bitop (rtx insn, rtx *xop, int *
>          {
>          case IOR:
>  
> -          if (0 == pop8)
> +       if (pop8 == 0)
>              continue;
>            else if (ld_reg_p)
>              avr_asm_len ("ori %0,%1", op, plen, 1);
> -          else if (1 == pop8)
> +       else if (pop8 == 1)
>              {
>                if (set_t != 1)
>                  avr_asm_len ("set", op, plen, 1);
> @@ -8396,7 +8394,7 @@ avr_out_bitop (rtx insn, rtx *xop, int *
>                op[1] = GEN_INT (exact_log2 (val8));
>                avr_asm_len ("bld %0,%1", op, plen, 1);
>              }
> -          else if (8 == pop8)
> +       else if (pop8 == 8)
>              {
>                if (op[3] != NULL_RTX)
>                  avr_asm_len ("mov %0,%3", op, plen, 1);
> @@ -8419,13 +8417,13 @@ avr_out_bitop (rtx insn, rtx *xop, int *
>  
>          case AND:
>  
> -          if (8 == pop8)
> +       if (pop8 == 8)
>              continue;
> -          else if (0 == pop8)
> +       else if (pop8 == 0)
>              avr_asm_len ("clr %0", op, plen, 1);
>            else if (ld_reg_p)
>              avr_asm_len ("andi %0,%1", op, plen, 1);
> -          else if (7 == pop8)
> +       else if (pop8 == 7)
>              {
>                if (set_t != 0)
>                  avr_asm_len ("clt", op, plen, 1);
> @@ -8447,9 +8445,9 @@ avr_out_bitop (rtx insn, rtx *xop, int *
>  
>          case XOR:
>  
> -          if (0 == pop8)
> +       if (pop8 == 0)
>              continue;
> -          else if (8 == pop8)
> +       else if (pop8 == 8)
>              avr_asm_len ("com %0", op, plen, 1);
>            else if (ld_reg_p && val8 == (1 << 7))
>              avr_asm_len ("subi %0,%1", op, plen, 1);
> @@ -8727,9 +8725,9 @@ avr_out_fract (rtx_insn *insn, rtx opera
>  
>    bool sign_extend = src.sbit && sign_bytes;
>  
> -  if (0 == dest.fbit % 8 && 7 == src.fbit % 8)
> +  if (dest.fbit % 8 == 0 && src.fbit % 8 == 7)
>      shift = ASHIFT;
> -  else if (7 == dest.fbit % 8 && 0 == src.fbit % 8)
> +  else if (dest.fbit % 8 == 7 && src.fbit % 8 == 0)
>      shift = ASHIFTRT;
>    else if (dest.fbit % 8 == src.fbit % 8)
>      shift = UNKNOWN;
> @@ -9401,8 +9399,7 @@ avr_adjust_insn_length (rtx_insn *insn,
>       It is easier to state this in an insn attribute "adjust_len" than
>       to clutter up code here...  */
>  
> -  if (!NONDEBUG_INSN_P (insn)
> -      || -1 == recog_memoized (insn))
> +  if (!NONDEBUG_INSN_P (insn) || recog_memoized (insn) == -1)
>      {
>        return len;
>      }
> @@ -10265,7 +10262,7 @@ avr_asm_init_sections (void)
>       we have also to track .rodata because it is located in RAM then.  */
>  
>  #if defined HAVE_LD_AVR_AVRXMEGA3_RODATA_IN_FLASH
> -  if (0 == avr_arch->flash_pm_offset)
> +  if (avr_arch->flash_pm_offset == 0)
>  #endif
>      readonly_data_section->unnamed.callback = avr_output_data_section_asm_op;
>    data_section->unnamed.callback = avr_output_data_section_asm_op;
> @@ -10303,7 +10300,7 @@ avr_asm_named_section (const char *name,
>  
>    if (!avr_need_copy_data_p
>  #if defined HAVE_LD_AVR_AVRXMEGA3_RODATA_IN_FLASH
> -      && 0 == avr_arch->flash_pm_offset
> +      && avr_arch->flash_pm_offset == 0
>  #endif
>        )
>      avr_need_copy_data_p = (STR_PREFIX_P (name, ".rodata")
> @@ -10439,8 +10436,7 @@ avr_encode_section_info (tree decl, rtx
>        /* PSTR strings are in generic space but located in flash:
>           patch address space.  */
>  
> -      if (!AVR_TINY
> -          && -1 == avr_progmem_p (decl, attr))
> +      if (!AVR_TINY && avr_progmem_p (decl, attr) == -1)
>          as = ADDR_SPACE_FLASH;
>  
>        AVR_SYMBOL_SET_ADDR_SPACE (sym, as);
> @@ -10479,7 +10475,7 @@ avr_encode_section_info (tree decl, rtx
>        && SYMBOL_REF_P (XEXP (rtl, 0)))
>      {
>        rtx sym = XEXP (rtl, 0);
> -      bool progmem_p = -1 == avr_progmem_p (decl, DECL_ATTRIBUTES (decl));
> +      bool progmem_p = avr_progmem_p (decl, DECL_ATTRIBUTES (decl)) == -1;
>  
>        if (progmem_p)
>          {
> @@ -12091,9 +12087,7 @@ test_hard_reg_class (enum reg_class rcla
>  static bool
>  avr_2word_insn_p (rtx_insn *insn)
>  {
> -  if (TARGET_SKIP_BUG
> -      || !insn
> -      || 2 != get_attr_length (insn))
> +  if (TARGET_SKIP_BUG || !insn || get_attr_length (insn) != 2)
>      {
>        return false;
>      }
> @@ -12402,11 +12396,8 @@ output_reload_in_const (rtx *op, rtx clo
>  
>            if (INTVAL (lo16) == INTVAL (hi16))
>              {
> -              if (0 != INTVAL (lo16)
> -                  || !clear_p)
> -                {
> -                  avr_asm_len ("movw %C0,%A0", &op[0], len, 1);
> -                }
> +           if (INTVAL (lo16) != 0 || !clear_p)
> +             avr_asm_len ("movw %C0,%A0", &op[0], len, 1);
>  
>                break;
>              }
> @@ -12458,7 +12449,7 @@ output_reload_in_const (rtx *op, rtx clo
>  
>        /* Need no clobber reg for -1: Use CLR/DEC */
>  
> -      if (-1 == ival[n])
> +      if (ival[n] == -1)
>          {
>            if (!clear_p)
>              avr_asm_len ("clr %0", &xdest[n], len, 1);
> @@ -12466,7 +12457,7 @@ output_reload_in_const (rtx *op, rtx clo
>            avr_asm_len ("dec %0", &xdest[n], len, 1);
>            continue;
>          }
> -      else if (1 == ival[n])
> +      else if (ival[n] == 1)
>          {
>            if (!clear_p)
>              avr_asm_len ("clr %0", &xdest[n], len, 1);
> @@ -13690,7 +13681,7 @@ bool
>  avr_has_nibble_0xf (rtx ival)
>  {
>    unsigned int map = UINTVAL (ival) & GET_MODE_MASK (SImode);
> -  return 0 != avr_map_metric (map, MAP_MASK_PREIMAGE_F);
> +  return avr_map_metric (map, MAP_MASK_PREIMAGE_F) != 0;
>  }
>  
>  
> @@ -13757,7 +13748,7 @@ static const avr_map_op_t avr_map_op[] =
>  static avr_map_op_t
>  avr_map_decompose (unsigned int f, const avr_map_op_t *g, bool val_const_p)
>  {
> -  bool val_used_p = 0 != avr_map_metric (f, MAP_MASK_PREIMAGE_F);
> +  bool val_used_p = avr_map_metric (f, MAP_MASK_PREIMAGE_F) != 0;
>    avr_map_op_t f_ginv = *g;
>    unsigned int ginv = g->ginv;
>  
> @@ -13788,13 +13779,10 @@ avr_map_decompose (unsigned int f, const
>  
>    /* Step 2a:  Compute cost of F o G^-1  */
>  
> -  if (0 == avr_map_metric (f_ginv.map, MAP_NONFIXED_0_7))
> -    {
> -      /* The mapping consists only of fixed points and can be folded
> -         to AND/OR logic in the remainder.  Reasonable cost is 3. */
> -
> -      f_ginv.cost = 2 + (val_used_p && !val_const_p);
> -    }
> +  if (avr_map_metric (f_ginv.map, MAP_NONFIXED_0_7) == 0)
> +    /* The mapping consists only of fixed points and can be folded
> +       to AND/OR logic in the remainder.  Reasonable cost is 3. */
> +    f_ginv.cost = 2 + (val_used_p && !val_const_p);
>    else
>      {
>        rtx xop[4];
> @@ -14500,7 +14488,7 @@ avr_fold_builtin (tree fndecl, int n_arg
>          map = TREE_INT_CST_LOW (tmap);
>  
>          if (TREE_CODE (tval) != INTEGER_CST
> -            && 0 == avr_map_metric (map, MAP_MASK_PREIMAGE_F))
> +         && avr_map_metric (map, MAP_MASK_PREIMAGE_F) == 0)
>            {
>              /* There are no F in the map, i.e. 3rd operand is unused.
>                 Replace that argument with some constant to render
> @@ -14511,7 +14499,7 @@ avr_fold_builtin (tree fndecl, int n_arg
>            }
>  
>          if (TREE_CODE (tbits) != INTEGER_CST
> -            && 0 == avr_map_metric (map, MAP_PREIMAGE_0_7))
> +         && avr_map_metric (map, MAP_PREIMAGE_0_7) == 0)
>            {
>              /* Similar for the bits to be inserted. If they are unused,
>                 we can just as well pass 0.  */
> @@ -14550,7 +14538,7 @@ avr_fold_builtin (tree fndecl, int n_arg
>          /* If bits don't change their position we can use vanilla logic
>             to merge the two arguments.  */
>  
> -        if (0 == avr_map_metric (map, MAP_NONFIXED_0_7))
> +     if (avr_map_metric (map, MAP_NONFIXED_0_7) == 0)
>            {
>              int mask_f = avr_map_metric (map, MAP_MASK_PREIMAGE_F);
>              tree tres, tmask = build_int_cst (val_type, mask_f ^ 0xff);
> --- gcc/config/avr/driver-avr.c.jj    2017-12-18 14:57:29.000000000 +0100
> +++ gcc/config/avr/driver-avr.c       2017-12-19 14:09:08.134869194 +0100
> @@ -59,7 +59,7 @@ avr_devicespecs_file (int argc, const ch
>        return X_NODEVLIB;
>  
>      case 1:
> -      if (0 == strcmp ("device-specs", argv[0]))
> +      if (strcmp ("device-specs", argv[0]) == 0)
>          {
>            /* FIXME:  This means "device-specs%s" from avr.h:DRIVER_SELF_SPECS
>               has not been resolved to a path.  That case can occur when the
> @@ -81,7 +81,7 @@ avr_devicespecs_file (int argc, const ch
>        // Allow specifying the same MCU more than once.
>  
>        for (int i = 2; i < argc; i++)
> -        if (0 != strcmp (mmcu, argv[i]))
> +     if (strcmp (mmcu, argv[i]) != 0)
>            {
>              error ("specified option %qs more than once", "-mmcu");
>              return X_NODEVLIB;
> --- gcc/config/avr/gen-avr-mmcu-specs.c.jj    2017-12-18 14:57:29.000000000 
> +0100
> +++ gcc/config/avr/gen-avr-mmcu-specs.c       2017-12-19 14:09:53.510293110 
> +0100
> @@ -55,7 +55,7 @@
>  static bool
>  str_prefix_p (const char *str, const char *prefix)
>  {
> -  return 0 == strncmp (str, prefix, strlen (prefix));
> +  return strncmp (str, prefix, strlen (prefix)) == 0;
>  }
>  
>  
> @@ -133,12 +133,12 @@ print_mcu (const avr_mcu_t *mcu)
>  
>    FILE *f = fopen (name ,"w");
>  
> -  bool absdata = 0 != (mcu->dev_attribute & AVR_ISA_LDS);
> -  bool errata_skip = 0 != (mcu->dev_attribute & AVR_ERRATA_SKIP);
> -  bool rmw = 0 != (mcu->dev_attribute & AVR_ISA_RMW);
> -  bool sp8 = 0 != (mcu->dev_attribute & AVR_SHORT_SP);
> +  bool absdata = (mcu->dev_attribute & AVR_ISA_LDS) != 0;
> +  bool errata_skip = (mcu->dev_attribute & AVR_ERRATA_SKIP) != 0;
> +  bool rmw = (mcu->dev_attribute & AVR_ISA_RMW) != 0;
> +  bool sp8 = (mcu->dev_attribute & AVR_SHORT_SP) != 0;
>    bool rcall = (mcu->dev_attribute & AVR_ISA_RCALL);
> -  bool is_arch = NULL == mcu->macro;
> +  bool is_arch = mcu->macro == NULL;
>    bool is_device = ! is_arch;
>  
>    if (is_arch
> --- gcc/config/i386/i386.c.jj 2017-12-18 14:57:27.000000000 +0100
> +++ gcc/config/i386/i386.c    2017-12-19 14:20:22.819314384 +0100
> @@ -3160,8 +3160,8 @@ ix86_parse_stringop_strategy_string (cha
>        if (next_range_str)
>          *next_range_str++ = '\0';
>  
> -      if (3 != sscanf (curr_range_str, "%20[^:]:%d:%10s",
> -                       alg_name, &maxs, align))
> +      if (sscanf (curr_range_str, "%20[^:]:%d:%10s", alg_name, &maxs,
> +               align) != 3)
>          {
>         error ("wrong argument %qs to option %qs", curr_range_str, opt);
>            return;
> --- gcc/config/m32c/m32c-pragma.c.jj  2017-12-18 14:57:25.000000000 +0100
> +++ gcc/config/m32c/m32c-pragma.c     2017-12-19 14:22:35.910629071 +0100
> @@ -53,7 +53,7 @@ m32c_pragma_memregs (cpp_reader * reader
>         if (type != CPP_EOF)
>           warning (0, "junk at end of #pragma GCC memregs [0..16]");
>  
> -       if (0 <= i && i <= 16)
> +       if (i >= 0 && i <= 16)
>           {
>             if (!ok_to_change_target_memregs)
>               {
> --- gcc/config/m32c/m32c.c.jj 2017-12-18 14:57:25.000000000 +0100
> +++ gcc/config/m32c/m32c.c    2017-12-19 14:22:19.452837474 +0100
> @@ -517,7 +517,7 @@ m32c_conditional_register_usage (void)
>  {
>    int i;
>  
> -  if (0 <= target_memregs && target_memregs <= 16)
> +  if (target_memregs >= 0 && target_memregs <= 16)
>      {
>        /* The command line option is bytes, but our "registers" are
>        16-bit words.  */
> @@ -2308,9 +2308,9 @@ m32c_address_cost (rtx addr, machine_mod
>        i = INTVAL (addr);
>        if (i == 0)
>       return COSTS_N_INSNS(1);
> -      if (0 < i && i <= 255)
> +      if (i > 0 && i <= 255)
>       return COSTS_N_INSNS(2);
> -      if (0 < i && i <= 65535)
> +      if (i > 0 && i <= 65535)
>       return COSTS_N_INSNS(3);
>        return COSTS_N_INSNS(4);
>      case SYMBOL_REF:
> @@ -2323,9 +2323,9 @@ m32c_address_cost (rtx addr, machine_mod
>         i = INTVAL (XEXP (addr, 1));
>         if (i == 0)
>           return COSTS_N_INSNS(1);
> -       if (0 < i && i <= 255)
> +       if (i > 0 && i <= 255)
>           return COSTS_N_INSNS(2);
> -       if (0 < i && i <= 65535)
> +       if (i > 0 && i <= 65535)
>           return COSTS_N_INSNS(3);
>       }
>        return COSTS_N_INSNS(4);
> --- gcc/config/m32c/predicates.md.jj  2017-01-01 12:45:42.000000000 +0100
> +++ gcc/config/m32c/predicates.md     2017-12-19 14:23:07.918223765 +0100
> @@ -210,11 +210,11 @@ (define_predicate "r1h_operand"
>  (define_predicate "shiftcount_operand"
>    (ior (match_operand 0 "mra_operand" "")
>         (and (match_operand 2 "const_int_operand" "")
> -         (match_test "-8 <= INTVAL (op) && INTVAL (op) && INTVAL (op) <= 
> 8"))))
> +         (match_test "INTVAL (op) >= -8 && INTVAL (op) && INTVAL (op) <= 
> 8"))))
>  (define_predicate "longshiftcount_operand"
>    (ior (match_operand 0 "mra_operand" "")
>         (and (match_operand 2 "const_int_operand" "")
> -         (match_test "-32 <= INTVAL (op) && INTVAL (op) && INTVAL (op) <= 
> 32"))))
> +         (match_test "INTVAL (op) >= -32 && INTVAL (op) && INTVAL (op) <= 
> 32"))))
>  
>  ; TRUE for r0..r3, a0..a1, or sp.
>  (define_predicate "mra_or_sp_operand"
> --- gcc/config/iq2000/iq2000.c.jj     2017-12-18 14:57:31.000000000 +0100
> +++ gcc/config/iq2000/iq2000.c        2017-12-19 14:21:34.479406964 +0100
> @@ -1982,10 +1982,10 @@ iq2000_expand_prologue (void)
>       {
>         if (next_arg == 0
>             && DECL_NAME (cur_arg)
> -           && ((0 == strcmp (IDENTIFIER_POINTER (DECL_NAME (cur_arg)),
> -                             "__builtin_va_alist"))
> -               || (0 == strcmp (IDENTIFIER_POINTER (DECL_NAME (cur_arg)),
> -                                "va_alist"))))
> +           && (strcmp (IDENTIFIER_POINTER (DECL_NAME (cur_arg)),
> +                       "__builtin_va_alist") == 0
> +               || strcmp (IDENTIFIER_POINTER (DECL_NAME (cur_arg)),
> +                          "va_alist") == 0))
>           {
>             last_arg_is_vararg_marker = 1;
>             break;
> --- gcc/config/nios2/nios2.c.jj       2017-12-18 14:57:30.000000000 +0100
> +++ gcc/config/nios2/nios2.c  2017-12-19 14:26:08.867934356 +0100
> @@ -1330,7 +1330,7 @@ nios2_handle_custom_fpu_insn_option (int
>  {
>    int param = N2FPU_N (fpu_insn_index);
>  
> -  if (0 <= param && param <= 255)
> +  if (param >= 0 && param <= 255)
>      nios2_register_custom_code (param, CCS_FPU, fpu_insn_index);
>  
>    /* Valid values are 0-255, but also allow -1 so that the
> @@ -5131,7 +5131,7 @@ static bool
>  can_use_cdx_ldstw (int regno, int basereg, int offset)
>  {
>    if (CDX_REG_P (regno) && CDX_REG_P (basereg)
> -      && (offset & 0x3) == 0 && 0 <= offset && offset < 0x40)
> +      && (offset & 0x3) == 0 && offset >= 0 && offset < 0x40)
>      return true;
>    else if (basereg == SP_REGNO
>          && offset >= 0 && offset < 0x80 && (offset & 0x3) == 0)
> --- gcc/config/nios2/nios2.h.jj       2017-10-30 12:02:36.000000000 +0100
> +++ gcc/config/nios2/nios2.h  2017-12-19 14:26:31.779644510 +0100
> @@ -221,7 +221,7 @@ enum reg_class
>    ((GET_MODE_SIZE (MODE) + UNITS_PER_WORD - 1) / UNITS_PER_WORD)
>  
>  #define CDX_REG_P(REGNO)                                             \
> -  ((REGNO) == 16 || (REGNO) == 17 || (2 <= (REGNO) && (REGNO) <= 7))
> +  ((REGNO) == 16 || (REGNO) == 17 || ((REGNO) >= 2 && (REGNO) <= 7))
>  
>  /* Tests for various kinds of constants used in the Nios II port.  */
>  
> --- gcc/config/cr16/cr16.h.jj 2017-11-13 09:31:34.000000000 +0100
> +++ gcc/config/cr16/cr16.h    2017-12-19 14:11:59.820689479 +0100
> @@ -233,7 +233,7 @@ while (0)
>  /* A C expression whose value is RTL representing the value of the return
>     address for the frame COUNT steps up from the current frame.  */
>  #define RETURN_ADDR_RTX(COUNT, FRAME)                                        
> \
> -  (0 == COUNT)       ?  gen_rtx_PLUS (Pmode, gen_rtx_RA, gen_rtx_RA)         
> \
> +  (COUNT == 0)       ?  gen_rtx_PLUS (Pmode, gen_rtx_RA, gen_rtx_RA)         
> \
>               :  const0_rtx
>  
>  enum reg_class
> @@ -293,7 +293,7 @@ enum reg_class
>       (CR16_REGNO_OK_FOR_BASE_P(REGNO)  &&      \
>         ((GET_MODE_SIZE (MODE) > 4  &&          \
>            (REGNO) < CR16_FIRST_DWORD_REGISTER) \
> -          ? (0 == ((REGNO) & 1))               \
> +          ? (((REGNO) & 1) == 0)               \
>            : 1))
>  
>  /* TODO: For now lets not support index addressing mode.  */
> --- gcc/config/cr16/cr16.md.jj        2017-01-01 12:45:42.000000000 +0100
> +++ gcc/config/cr16/cr16.md   2017-12-19 14:13:47.569321507 +0100
> @@ -655,8 +655,8 @@ (define_insn "*mov<mode>_double"
>     || register_operand (operands[1], DImode)
>     || register_operand (operands[1], DFmode)"
>    {
> -    if (0 == which_alternative) {
> -      rtx xoperands[2] ;
> +    if (which_alternative == 0) {
> +      rtx xoperands[2];
>        int reg0 = REGNO (operands[0]);
>        int reg1 = REGNO (operands[1]);
>  
> @@ -673,9 +673,9 @@ (define_insn "*mov<mode>_double"
>         output_asm_insn ("movd\t%1, %0", operands);
>       }}
>  
> -    else if (1 == which_alternative) {
> -      rtx lo_operands[2] ;
> -      rtx hi_operands[2] ;
> +    else if (which_alternative == 1) {
> +      rtx lo_operands[2];
> +      rtx hi_operands[2];
>  
>        lo_operands[0] = gen_rtx_REG (SImode, REGNO (operands[0]));
>        hi_operands[0] = gen_rtx_REG (SImode, REGNO (operands[0]) + 2);
> @@ -688,40 +688,40 @@ (define_insn "*mov<mode>_double"
>        output_asm_insn ("movd\t%1, %0", lo_operands);
>        output_asm_insn ("movd\t%1, %0", hi_operands);}
>  
> -    else if (2 == which_alternative) {
> -      rtx xoperands[2] ;
> -      int reg0 = REGNO (operands[0]), reg1 = -2 ;
> -      rtx addr ;
> +    else if (which_alternative == 2) {
> +      rtx xoperands[2];
> +      int reg0 = REGNO (operands[0]), reg1 = -2;
> +      rtx addr;
>  
>       if (MEM_P (operands[1]))
>         addr = XEXP (operands[1], 0);
>       else
> -       addr = NULL_RTX ;
> +       addr = NULL_RTX;
>       switch (GET_CODE (addr))
>         {
>           case REG:
>           case SUBREG:
>             reg1 = REGNO (addr);
> -           break ;
> +           break;
>           case PLUS:
>             switch (GET_CODE (XEXP (addr, 0))) {
>               case REG:
>               case SUBREG:
>                 reg1 = REGNO (XEXP (addr, 0));
> -               break ;
> +               break;
>               case PLUS:
>                 reg1 = REGNO (XEXP (XEXP (addr, 0), 0));
> -               break ;
> +               break;
>               default:
>                 inform (DECL_SOURCE_LOCATION (cfun->decl), "unexpected 
> expression; addr:");
>                 debug_rtx (addr);
>                 inform (DECL_SOURCE_LOCATION (cfun->decl), "operands[1]:");
>                 debug_rtx (operands[1]);
>                 inform (DECL_SOURCE_LOCATION (cfun->decl), "generated code 
> might now work\n");
> -               break ;}
> -           break ;
> +               break;}
> +           break;
>           default:
> -           break ;
> +           break;
>         }
>  
>       xoperands[0] = gen_rtx_REG (SImode, reg0 + 2);
> @@ -739,13 +739,13 @@ (define_insn "*mov<mode>_double"
>         }}
>      else
>        {
> -     rtx xoperands[2] ;
> +     rtx xoperands[2];
>       xoperands[0] = offset_address (operands[0], GEN_INT (4), 2);
>       xoperands[1] = gen_rtx_REG (SImode, REGNO (operands[1]) + 2);
>       output_asm_insn ("stord\t%1, %0", operands);
>       output_asm_insn ("stord\t%1, %0", xoperands);
>        }
> -    return "" ;
> +    return "";
>    }
>    [(set_attr "length" "4, <lImmArithD>, <lImmArithD>, <lImmArithD>")]
>  )
> --- gcc/config/cr16/cr16.c.jj 2017-12-18 14:57:35.000000000 +0100
> +++ gcc/config/cr16/cr16.c    2017-12-19 14:11:24.472138262 +0100
> @@ -1859,10 +1859,10 @@ cr16_create_dwarf_for_multi_push (rtx in
>  
>    for (i = current_frame_info.last_reg_to_save; i >= 0;)
>      {
> -      if (!current_frame_info.save_regs[i] || 0 == i || split_here)
> +      if (!current_frame_info.save_regs[i] || i == 0 || split_here)
>       {
>         /* This block of regs is pushed in one instruction.  */
> -       if (0 == i && current_frame_info.save_regs[i])
> +       if (i == 0 && current_frame_info.save_regs[i])
>           from = 0;
>  
>         for (j = to; j >= from; --j)
> --- gcc/config/h8300/h8300.c.jj       2017-12-18 14:57:35.000000000 +0100
> +++ gcc/config/h8300/h8300.c  2017-12-19 14:19:44.565798781 +0100
> @@ -1267,7 +1267,7 @@ h8300_rtx_costs (rtx x, machine_mode mod
>           *total = 0;
>           return true;
>         }
> -     if (-4 <= n && n <= 4)
> +     if (n >= -4 && n <= 4)
>         {
>           switch ((int) n)
>             {
> @@ -4171,7 +4171,7 @@ get_shift_alg (enum shift_type shift_typ
>             goto end;
>           }
>       }
> -      else if ((8 <= count && count <= 13)
> +      else if ((count >= 8 && count <= 13)
>              || (TARGET_H8300S && count == 14))
>       {
>         info->remainder = count - 8;
> @@ -4251,7 +4251,7 @@ get_shift_alg (enum shift_type shift_typ
>        gcc_unreachable ();
>  
>      case SIshift:
> -      if (TARGET_H8300 && 8 <= count && count <= 9)
> +      if (TARGET_H8300 && count >= 8 && count <= 9)
>       {
>         info->remainder = count - 8;
>  
> @@ -4314,9 +4314,9 @@ get_shift_alg (enum shift_type shift_typ
>             gcc_unreachable ();
>           }
>       }
> -      else if ((TARGET_H8300 && 16 <= count && count <= 20)
> -            || (TARGET_H8300H && 16 <= count && count <= 19)
> -            || (TARGET_H8300S && 16 <= count && count <= 21))
> +      else if ((TARGET_H8300 && count >= 16 && count <= 20)
> +            || (TARGET_H8300H && count >= 16 && count <= 19)
> +            || (TARGET_H8300S && count >= 16 && count <= 21))
>       {
>         info->remainder = count - 16;
>  
> @@ -4353,7 +4353,7 @@ get_shift_alg (enum shift_type shift_typ
>             goto end;
>           }
>       }
> -      else if (TARGET_H8300 && 24 <= count && count <= 28)
> +      else if (TARGET_H8300 && count >= 24 && count <= 28)
>       {
>         info->remainder = count - 24;
>  
> @@ -4377,7 +4377,7 @@ get_shift_alg (enum shift_type shift_typ
>           }
>       }
>        else if ((TARGET_H8300H && count == 24)
> -            || (TARGET_H8300S && 24 <= count && count <= 25))
> +            || (TARGET_H8300S && count >= 24 && count <= 25))
>       {
>         info->remainder = count - 24;
>  
> --- gcc/config/vax/constraints.md.jj  2017-01-01 12:45:43.000000000 +0100
> +++ gcc/config/vax/constraints.md     2017-12-19 14:28:30.429143525 +0100
> @@ -25,32 +25,32 @@ (define_constraint "Z0"
>  (define_constraint "U06"
>     "unsigned 6 bit value (0..63)"
>     (and (match_code "const_int")
> -     (match_test "0 <= ival && ival < 64")))
> +     (match_test "ival >= 0 && ival < 64")))
>  
>  (define_constraint "U08"
>     "Unsigned 8 bit value"
>     (and (match_code "const_int")
> -     (match_test "0 <= ival && ival < 256")))
> +     (match_test "ival >= 0 && ival < 256")))
>  
>  (define_constraint "U16"
>     "Unsigned 16 bit value"
>     (and (match_code "const_int")
> -     (match_test "0 <= ival && ival < 65536")))
> +     (match_test "ival >= 0 && ival < 65536")))
>  
>  (define_constraint "CN6"
>     "negative 6 bit value (-63..-1)"
>     (and (match_code "const_int")
> -     (match_test "-63 <= ival && ival < 0")))
> +     (match_test "ival >= -63 && ival < 0")))
>  
>  (define_constraint "S08"
>     "signed 8 bit value [old]"
>     (and (match_code "const_int")
> -     (match_test "-128 <= ival && ival < 128")))
> +     (match_test "ival >= -128 && ival < 128")))
>  
>  (define_constraint "S16"
>     "signed 16 bit value [old]"
>     (and (match_code "const_int")
> -     (match_test "-32768 <= ival && ival < 32768")))
> +     (match_test "ival >= -32768 && ival < 32768")))
>  
>  (define_constraint "I"
>     "Match a CONST_INT of 0 [old]"
> --- gcc/config/vax/vax.c.jj   2017-12-18 14:57:35.000000000 +0100
> +++ gcc/config/vax/vax.c      2017-12-19 14:29:18.099540468 +0100
> @@ -2029,7 +2029,7 @@ adjacent_operands_p (rtx lo, rtx hi, mac
>    if (REG_P (lo))
>      return mode == SImode && REGNO (lo) + 1 == REGNO (hi);
>    if (CONST_INT_P (lo))
> -    return INTVAL (hi) == 0 && 0 <= INTVAL (lo) && INTVAL (lo) < 64;
> +    return INTVAL (hi) == 0 && UINTVAL (lo) < 64;
>    if (CONST_INT_P (lo))
>      return mode != SImode;
>  
> --- gcc/config/ft32/constraints.md.jj 2017-01-01 12:45:44.000000000 +0100
> +++ gcc/config/ft32/constraints.md    2017-12-19 14:14:45.445586713 +0100
> @@ -91,7 +91,7 @@ (define_constraint "x"
>  (define_constraint "L"
>    "A 16-bit unsigned constant, multiple of 4 (-65532..0)"
>    (and (match_code "const_int")
> -       (match_test "-65532 <= ival && ival <= 0 && (ival & 3) == 0")))
> +       (match_test "ival >= -65532 && ival <= 0 && (ival & 3) == 0")))
>  
>  (define_constraint "S"
>    "A 20-bit signed constant (-524288..524287)"
> @@ -105,9 +105,9 @@ (define_constraint "S"
>  (define_constraint "b"
>    "A constant for a bitfield width (1..16)"
>    (and (match_code "const_int")
> -       (match_test "1 <= ival && ival <= 16")))
> +       (match_test "ival >= 1 && ival <= 16")))
>  
>  (define_constraint "KA"
>    "A 10-bit signed constant (-512..511)"
>    (and (match_code "const_int")
> -       (match_test "-512 <= ival && ival <= 511")))
> +       (match_test "ival >= -512 && ival <= 511")))
> --- gcc/config/ft32/ft32.c.jj 2017-12-18 14:57:34.000000000 +0100
> +++ gcc/config/ft32/ft32.c    2017-12-19 14:15:57.748670927 +0100
> @@ -265,12 +265,12 @@ ft32_load_immediate (rtx dst, int32_t i)
>  {
>    char pattern[100];
>  
> -  if ((-524288 <= i) && (i <= 524287))
> +  if (i >= -524288 && i <= 524287)
>      {
>        sprintf (pattern, "ldk.l  %%0,%d", i);
>        output_asm_insn (pattern, &dst);
>      }
> -  else if ((-536870912 <= i) && (i <= 536870911))
> +  else if (i >= -536870912 && i <= 536870911)
>      {
>        ft32_load_immediate (dst, i >> 10);
>        sprintf (pattern, "ldl.l  %%0,%%0,%d", i & 1023);
> @@ -283,7 +283,7 @@ ft32_load_immediate (rtx dst, int32_t i)
>        for (rd = 1; rd < 32; rd++)
>          {
>            u = ((u >> 31) & 1) | (u << 1);
> -          if ((-524288 <= (int32_t) u) && ((int32_t) u <= 524287))
> +       if ((int32_t) u >= -524288 && (int32_t) u <= 524287)
>              {
>                ft32_load_immediate (dst, (int32_t) u);
>                sprintf (pattern, "ror.l  %%0,%%0,%d", rd);
> @@ -496,7 +496,7 @@ ft32_expand_prologue (void)
>       }
>      }
>  
> -  if (65536 <= cfun->machine->size_for_adjusting_sp)
> +  if (cfun->machine->size_for_adjusting_sp >= 65536)
>      {
>        error ("stack frame must be smaller than 64K");
>        return;
> --- gcc/cfgexpand.c.jj        2017-12-18 14:57:24.000000000 +0100
> +++ gcc/cfgexpand.c   2017-12-19 14:32:54.590799955 +0100
> @@ -6102,7 +6102,7 @@ expand_stack_alignment (void)
>    gcc_assert ((stack_realign_drap != 0) == (drap_rtx != NULL));
>  
>    /* Do nothing if NULL is returned, which means DRAP is not needed.  */
> -  if (NULL != drap_rtx)
> +  if (drap_rtx != NULL)
>      {
>        crtl->args.internal_arg_pointer = drap_rtx;
>  
> --- gcc/gcse.c.jj     2017-03-03 13:23:59.000000000 +0100
> +++ gcc/gcse.c        2017-12-19 13:23:06.054986320 +0100
> @@ -1136,7 +1136,7 @@ insert_expr_in_table (rtx x, machine_mod
>    cur_expr = table->table[hash];
>    found = 0;
>  
> -  while (cur_expr && 0 == (found = expr_equiv_p (cur_expr->expr, x)))
> +  while (cur_expr && (found = expr_equiv_p (cur_expr->expr, x)) == 0)
>      {
>        /* If the expression isn't found, save a pointer to the end of
>        the list.  */
> --- gcc/cp/name-lookup.c.jj   2017-12-18 18:35:44.000000000 +0100
> +++ gcc/cp/name-lookup.c      2017-12-19 13:39:06.450758466 +0100
> @@ -5485,7 +5485,7 @@ get_std_name_hint (const char *name)
>    const size_t num_hints = sizeof (hints) / sizeof (hints[0]);
>    for (size_t i = 0; i < num_hints; i++)
>      {
> -      if (0 == strcmp (name, hints[i].name))
> +      if (strcmp (name, hints[i].name) == 0)
>       return hints[i].header;
>      }
>    return NULL;
> --- gcc/cp/class.c.jj 2017-11-22 21:37:46.000000000 +0100
> +++ gcc/cp/class.c    2017-12-19 13:38:11.136462656 +0100
> @@ -3276,12 +3276,14 @@ check_bitfield_decl (tree field)
>                  && tree_int_cst_lt (TYPE_SIZE (type), w)))
>       warning_at (DECL_SOURCE_LOCATION (field), 0,
>                   "width of %qD exceeds its type", field);
> -      else if (TREE_CODE (type) == ENUMERAL_TYPE
> -            && (0 > (compare_tree_int
> -                     (w, TYPE_PRECISION (ENUM_UNDERLYING_TYPE (type))))))
> -     warning_at (DECL_SOURCE_LOCATION (field), 0,
> -                 "%qD is too small to hold all values of %q#T",
> -                 field, type);
> +      else if (TREE_CODE (type) == ENUMERAL_TYPE)
> +     {
> +       int prec = TYPE_PRECISION (ENUM_UNDERLYING_TYPE (type));
> +       if (compare_tree_int (w, prec) < 0)
> +         warning_at (DECL_SOURCE_LOCATION (field), 0,
> +                     "%qD is too small to hold all values of %q#T",
> +                     field, type);
> +     }
>      }
>  
>    if (w != error_mark_node)
> --- gcc/cp/pt.c.jj    2017-12-18 18:35:44.000000000 +0100
> +++ gcc/cp/pt.c       2017-12-19 13:39:28.208481475 +0100
> @@ -7838,7 +7838,7 @@ convert_template_argument (tree parm,
>         if (innertype
>             && TREE_CODE (innertype) == REFERENCE_TYPE
>             && TREE_CODE (TREE_TYPE (innertype)) == FUNCTION_TYPE
> -              && 0 < TREE_OPERAND_LENGTH (inner)
> +           && TREE_OPERAND_LENGTH (inner) > 0
>                && reject_gcc_builtin (TREE_OPERAND (inner, 0)))
>                return error_mark_node;
>          }
> --- gcc/cp/decl.c.jj  2017-12-15 22:39:57.000000000 +0100
> +++ gcc/cp/decl.c     2017-12-19 13:38:42.713060664 +0100
> @@ -1858,8 +1858,8 @@ next_arg:;
>                  t1 = TREE_CHAIN (t1), t2 = TREE_CHAIN (t2), i++)
>               if (TREE_PURPOSE (t1) && TREE_PURPOSE (t2))
>                 {
> -                 if (1 == simple_cst_equal (TREE_PURPOSE (t1),
> -                                            TREE_PURPOSE (t2)))
> +                 if (simple_cst_equal (TREE_PURPOSE (t1),
> +                                       TREE_PURPOSE (t2)) == 1)
>                     {
>                       if (permerror (input_location,
>                                      "default argument given for parameter "
> --- gcc/cp/typeck.c.jj        2017-12-14 21:11:44.000000000 +0100
> +++ gcc/cp/typeck.c   2017-12-19 13:39:49.644208582 +0100
> @@ -214,7 +214,7 @@ commonparms (tree p1, tree p2)
>       }
>        else
>       {
> -       if (1 != simple_cst_equal (TREE_PURPOSE (p1), TREE_PURPOSE (p2)))
> +       if (simple_cst_equal (TREE_PURPOSE (p1), TREE_PURPOSE (p2)) != 1)
>           any_change = 1;
>         TREE_PURPOSE (n) = TREE_PURPOSE (p2);
>       }
> --- gcc/print-rtl.c.jj        2017-12-12 09:48:26.000000000 +0100
> +++ gcc/print-rtl.c   2017-12-19 14:35:14.752020933 +0100
> @@ -346,7 +346,7 @@ rtx_writer::print_rtx_operand_codes_E_an
>        m_sawclose = 0;
>      }
>    fputs (" [", m_outfile);
> -  if (NULL != XVEC (in_rtx, idx))
> +  if (XVEC (in_rtx, idx) != NULL)
>      {
>        m_indent += 2;
>        if (XVECLEN (in_rtx, idx))
> --- gcc/cgraphunit.c.jj       2017-11-15 09:38:23.000000000 +0100
> +++ gcc/cgraphunit.c  2017-12-19 13:11:35.287778938 +0100
> @@ -2155,8 +2155,8 @@ cgraph_node::expand (void)
>  
>        if (ret_type && TYPE_SIZE_UNIT (ret_type)
>         && TREE_CODE (TYPE_SIZE_UNIT (ret_type)) == INTEGER_CST
> -       && 0 < compare_tree_int (TYPE_SIZE_UNIT (ret_type),
> -                                larger_than_size))
> +       && compare_tree_int (TYPE_SIZE_UNIT (ret_type),
> +                            larger_than_size) > 0)
>       {
>         unsigned int size_as_int
>           = TREE_INT_CST_LOW (TYPE_SIZE_UNIT (ret_type));
> --- gcc/ira-build.c.jj        2017-11-03 20:03:45.000000000 +0100
> +++ gcc/ira-build.c   2017-12-19 13:26:07.363677658 +0100
> @@ -2756,8 +2756,8 @@ setup_min_max_allocno_live_range_point (
>  #ifdef ENABLE_IRA_CHECKING
>    FOR_EACH_OBJECT (obj, oi)
>      {
> -      if ((0 <= OBJECT_MIN (obj) && OBJECT_MIN (obj) <= ira_max_point)
> -       && (0 <= OBJECT_MAX (obj) && OBJECT_MAX (obj) <= ira_max_point))
> +      if ((OBJECT_MIN (obj) >= 0 && OBJECT_MIN (obj) <= ira_max_point)
> +       && (OBJECT_MAX (obj) >= 0 && OBJECT_MAX (obj) <= ira_max_point))
>       continue;
>        gcc_unreachable ();
>      }
> --- gcc/ada/gcc-interface/trans.c.jj  2017-12-14 21:11:44.000000000 +0100
> +++ gcc/ada/gcc-interface/trans.c     2017-12-19 14:00:46.546238596 +0100
> @@ -3190,7 +3190,7 @@ Loop_Statement_to_gnu (Node_Id gnat_node
>  
>         /* Note that loop unswitching can only be applied a small number of
>            times to a given loop (PARAM_MAX_UNSWITCH_LEVEL default to 3).  */
> -       if (0 < n_remaining_checks && n_remaining_checks <= 3
> +       if (n_remaining_checks > 0 && n_remaining_checks <= 3
>             && optimize > 1 && !optimize_size)
>           FOR_EACH_VEC_ELT (*gnu_loop_info->checks, i, rci)
>             if (rci->invariant_cond != boolean_false_node)
> --- gcc/ada/gcc-interface/misc.c.jj   2017-12-14 21:11:44.000000000 +0100
> +++ gcc/ada/gcc-interface/misc.c      2017-12-19 14:00:30.169446577 +0100
> @@ -953,7 +953,7 @@ gnat_get_array_descr_info (const_tree co
>       structure.  */
>    for (i = (convention_fortran_p ? info->ndimensions - 1 : 0),
>         dimen = first_dimen;
> -       0 <= i && i < info->ndimensions;
> +       i >= 0 && i < info->ndimensions;
>         i += (convention_fortran_p ? -1 : 1),
>         dimen = TREE_TYPE (dimen))
>      {
> @@ -1146,8 +1146,8 @@ default_pass_by_ref (tree gnu_type)
>  
>    if (AGGREGATE_TYPE_P (gnu_type)
>        && (!valid_constant_size_p (TYPE_SIZE_UNIT (gnu_type))
> -       || 0 < compare_tree_int (TYPE_SIZE_UNIT (gnu_type),
> -                                TYPE_ALIGN (gnu_type))))
> +       || compare_tree_int (TYPE_SIZE_UNIT (gnu_type),
> +                            TYPE_ALIGN (gnu_type)) > 0))
>      return true;
>  
>    if (pass_by_reference (NULL, TYPE_MODE (gnu_type), gnu_type, true))
> --- gcc/ada/gcc-interface/decl.c.jj   2017-12-14 21:11:44.000000000 +0100
> +++ gcc/ada/gcc-interface/decl.c      2017-12-19 13:59:54.744896460 +0100
> @@ -2111,7 +2111,7 @@ gnat_to_gnu_entity (Entity_Id gnat_entit
>          index to the template.  */
>       for (index = (convention_fortran_p ? ndim - 1 : 0),
>            gnat_index = First_Index (gnat_entity);
> -          0 <= index && index < ndim;
> +          index >= 0 && index < ndim;
>            index += (convention_fortran_p ? - 1 : 1),
>            gnat_index = Next_Index (gnat_index))
>         {
> @@ -2362,7 +2362,7 @@ gnat_to_gnu_entity (Entity_Id gnat_entit
>              gnat_index = First_Index (gnat_entity),
>              gnat_base_index
>                = First_Index (Implementation_Base_Type (gnat_entity));
> -            0 <= index && index < ndim;
> +            index >= 0 && index < ndim;
>              index += (convention_fortran_p ? - 1 : 1),
>              gnat_index = Next_Index (gnat_index),
>              gnat_base_index = Next_Index (gnat_base_index))
> --- gcc/ada/adaint.c.jj       2017-11-08 21:14:34.000000000 +0100
> +++ gcc/ada/adaint.c  2017-12-19 13:33:47.093824108 +0100
> @@ -1221,7 +1221,7 @@ __gnat_tmp_name (char *tmp_filename)
>  
>        /* Fill up the name buffer from the last position.  */
>        seed++;
> -      for (t = seed; 0 <= --index; t >>= 3)
> +      for (t = seed; --index >= 0; t >>= 3)
>          *--pos = '0' + (t & 07);
>  
>        /* Check to see if its unique, if not bump the seed and try again.  */
> --- gcc/emit-rtl.c.jj 2017-12-18 14:57:24.000000000 +0100
> +++ gcc/emit-rtl.c    2017-12-19 14:34:04.891907645 +0100
> @@ -4047,7 +4047,7 @@ add_insn (rtx_insn *insn)
>  {
>    rtx_insn *prev = get_last_insn ();
>    link_insn_into_chain (insn, prev, NULL);
> -  if (NULL == get_insns ())
> +  if (get_insns () == NULL)
>      set_first_insn (insn);
>    set_last_insn (insn);
>  }
> --- gcc/input.c.jj    2017-09-01 09:25:44.000000000 +0200
> +++ gcc/input.c       2017-12-19 13:25:22.114253833 +0100
> @@ -1117,7 +1117,7 @@ dump_location_info (FILE *stream)
>         expanded_location exploc
>           = linemap_expand_location (line_table, map, loc);
>  
> -       if (0 == exploc.column)
> +       if (exploc.column == 0)
>           {
>             /* Beginning of a new source line: draw the line.  */
>  
> --- gcc/passes.c.jj   2017-10-11 22:37:55.000000000 +0200
> +++ gcc/passes.c      2017-12-19 14:34:51.325318280 +0100
> @@ -1584,7 +1584,7 @@ pass_manager::pass_manager (context *ctx
>  
>  #define NEXT_PASS(PASS, NUM) \
>    do { \
> -    gcc_assert (NULL == PASS ## _ ## NUM); \
> +    gcc_assert (PASS ## _ ## NUM == NULL); \
>      if ((NUM) == 1)                              \
>        PASS ## _1 = make_##PASS (m_ctxt);          \
>      else                                         \
> --- gcc/read-rtl-function.c.jj        2017-06-12 12:41:58.000000000 +0200
> +++ gcc/read-rtl-function.c   2017-12-19 13:28:00.110242019 +0100
> @@ -321,7 +321,7 @@ static int
>  parse_note_insn_name (const char *string)
>  {
>    for (int i = 0; i < NOTE_INSN_MAX; i++)
> -    if (0 == strcmp (string, GET_NOTE_INSN_NAME (i)))
> +    if (strcmp (string, GET_NOTE_INSN_NAME (i)) == 0)
>        return i;
>    fatal_with_file_and_line ("unrecognized NOTE_INSN name: `%s'", string);
>  }
> @@ -1079,7 +1079,7 @@ function_reader::read_rtx_operand_r (rtx
>        "orig:%i", ORIGINAL_REGNO (rtx).
>        Consume it, we don't set ORIGINAL_REGNO, since we can
>        get that from the 2nd copy later.  */
> -      if (0 == strncmp (desc, "orig:", 5))
> +      if (strncmp (desc, "orig:", 5) == 0)
>       {
>         expect_original_regno = true;
>         desc_start += 5;
> @@ -1312,7 +1312,7 @@ function_reader::parse_mem_expr (const c
>  {
>    tree fndecl = cfun->decl;
>  
> -  if (0 == strcmp (desc, "<retval>"))
> +  if (strcmp (desc, "<retval>") == 0)
>      return DECL_RESULT (fndecl);
>  
>    tree param = find_param_by_name (fndecl, desc);
> --- gcc/sched-rgn.c.jj        2017-09-22 20:51:51.000000000 +0200
> +++ gcc/sched-rgn.c   2017-12-19 13:30:48.401099117 +0100
> @@ -3258,10 +3258,10 @@ sched_rgn_init (bool single_blocks_p)
>       free_dominance_info (CDI_DOMINATORS);
>      }
>  
> -  gcc_assert (0 < nr_regions && nr_regions <= n_basic_blocks_for_fn (cfun));
> +  gcc_assert (nr_regions > 0 && nr_regions <= n_basic_blocks_for_fn (cfun));
>  
> -  RGN_BLOCKS (nr_regions) = (RGN_BLOCKS (nr_regions - 1) +
> -                          RGN_NR_BLOCKS (nr_regions - 1));
> +  RGN_BLOCKS (nr_regions) = (RGN_BLOCKS (nr_regions - 1)
> +                          + RGN_NR_BLOCKS (nr_regions - 1));
>    nr_regions_initial = nr_regions;
>  }
>  
> --- gcc/diagnostic-show-locus.c.jj    2017-11-29 08:59:18.000000000 +0100
> +++ gcc/diagnostic-show-locus.c       2017-12-19 13:12:21.864186783 +0100
> @@ -1866,7 +1866,7 @@ layout::show_ruler (int max_column) cons
>      {
>        pp_space (m_pp);
>        for (int column = 1 + m_x_offset; column <= max_column; column++)
> -     if (0 == column % 10)
> +     if (column % 10 == 0)
>         pp_character (m_pp, '0' + (column / 100) % 10);
>       else
>         pp_space (m_pp);
> @@ -1876,7 +1876,7 @@ layout::show_ruler (int max_column) cons
>    /* Tens.  */
>    pp_space (m_pp);
>    for (int column = 1 + m_x_offset; column <= max_column; column++)
> -    if (0 == column % 10)
> +    if (column % 10 == 0)
>        pp_character (m_pp, '0' + (column / 10) % 10);
>      else
>        pp_space (m_pp);
> --- gcc/combine.c.jj  2017-12-18 14:57:24.000000000 +0100
> +++ gcc/combine.c     2017-12-19 13:09:36.020295260 +0100
> @@ -5083,9 +5083,9 @@ find_split_point (rtx *loc, rtx_insn *in
>            is known to be on, this can be converted into a NEG of a shift.  */
>         if (STORE_FLAG_VALUE == -1 && XEXP (SET_SRC (x), 1) == const0_rtx
>             && GET_MODE (SET_SRC (x)) == GET_MODE (XEXP (SET_SRC (x), 0))
> -           && 1 <= (pos = exact_log2
> -                    (nonzero_bits (XEXP (SET_SRC (x), 0),
> -                                   GET_MODE (XEXP (SET_SRC (x), 0))))))
> +           && ((pos = exact_log2 (nonzero_bits (XEXP (SET_SRC (x), 0),
> +                                                GET_MODE (XEXP (SET_SRC (x),
> +                                                          0))))) >= 1))
>           {
>             machine_mode mode = GET_MODE (XEXP (SET_SRC (x), 0));
>  
> @@ -6680,7 +6680,7 @@ simplify_if_then_else (rtx x)
>        && XEXP (cond, 1) == const0_rtx
>        && false_rtx == const0_rtx
>        && CONST_INT_P (true_rtx)
> -      && ((1 == nonzero_bits (XEXP (cond, 0), int_mode)
> +      && ((nonzero_bits (XEXP (cond, 0), int_mode) == 1
>          && (i = exact_log2 (UINTVAL (true_rtx))) >= 0)
>         || ((num_sign_bit_copies (XEXP (cond, 0), int_mode)
>              == GET_MODE_PRECISION (int_mode))
> @@ -8637,9 +8637,9 @@ force_to_mode (rtx x, machine_mode mode,
>    if (GET_CODE (x) == SUBREG
>        && subreg_lowpart_p (x)
>        && (partial_subreg_p (x)
> -       || (0 == (mask
> -                 & GET_MODE_MASK (GET_MODE (x))
> -                 & ~GET_MODE_MASK (GET_MODE (SUBREG_REG (x)))))))
> +       || (mask
> +           & GET_MODE_MASK (GET_MODE (x))
> +           & ~GET_MODE_MASK (GET_MODE (SUBREG_REG (x)))) == 0))
>      return force_to_mode (SUBREG_REG (x), mode, mask, next_select);
>  
>    scalar_int_mode int_mode, xmode;
> @@ -9328,8 +9328,8 @@ if_then_else_cond (rtx x, rtx *ptrue, rt
>    /* If X is a SUBREG, we can narrow both the true and false values
>       if the inner expression, if there is a condition.  */
>    else if (code == SUBREG
> -        && 0 != (cond0 = if_then_else_cond (SUBREG_REG (x),
> -                                            &true0, &false0)))
> +        && (cond0 = if_then_else_cond (SUBREG_REG (x), &true0,
> +                                       &false0)) != 0)
>      {
>        true0 = simplify_gen_subreg (mode, true0,
>                                  GET_MODE (SUBREG_REG (x)), SUBREG_BYTE (x));
> @@ -10928,8 +10928,8 @@ simplify_shift_const_1 (enum rtx_code co
>                shift_unit_mode wider than result_mode.  */
>             && !(code == ASHIFTRT && GET_CODE (varop) == XOR
>                  && int_result_mode != shift_unit_mode
> -                && 0 > trunc_int_for_mode (INTVAL (XEXP (varop, 1)),
> -                                           shift_unit_mode))
> +                && trunc_int_for_mode (INTVAL (XEXP (varop, 1)),
> +                                       shift_unit_mode) < 0)
>             && (new_rtx = simplify_const_binary_operation
>                 (code, int_result_mode,
>                  gen_int_mode (INTVAL (XEXP (varop, 1)), int_result_mode),
> @@ -10949,10 +10949,10 @@ simplify_shift_const_1 (enum rtx_code co
>            (ashiftrt (xor)) where we've widened the shift and the constant
>            changes the sign bit.  */
>         if (CONST_INT_P (XEXP (varop, 1))
> -          && !(code == ASHIFTRT && GET_CODE (varop) == XOR
> -               && int_result_mode != shift_unit_mode
> -               && 0 > trunc_int_for_mode (INTVAL (XEXP (varop, 1)),
> -                                          shift_unit_mode)))
> +           && !(code == ASHIFTRT && GET_CODE (varop) == XOR
> +                && int_result_mode != shift_unit_mode
> +                && trunc_int_for_mode (INTVAL (XEXP (varop, 1)),
> +                                       shift_unit_mode) < 0))
>           {
>             rtx lhs = simplify_shift_const (NULL_RTX, code, shift_unit_mode,
>                                             XEXP (varop, 0), count);
> @@ -11061,10 +11061,10 @@ simplify_shift_const_1 (enum rtx_code co
>         else if ((code == ASHIFTRT || code == LSHIFTRT)
>                  && count < HOST_BITS_PER_WIDE_INT
>                  && HWI_COMPUTABLE_MODE_P (int_result_mode)
> -                && 0 == (nonzero_bits (XEXP (varop, 0), int_result_mode)
> -                         >> count)
> -                && 0 == (nonzero_bits (XEXP (varop, 0), int_result_mode)
> -                         & nonzero_bits (XEXP (varop, 1), int_result_mode)))
> +                && (nonzero_bits (XEXP (varop, 0), int_result_mode)
> +                    >> count) == 0
> +                && (nonzero_bits (XEXP (varop, 0), int_result_mode)
> +                    & nonzero_bits (XEXP (varop, 1), int_result_mode)) == 0)
>           {
>             varop = XEXP (varop, 1);
>             continue;
> @@ -12000,10 +12000,10 @@ simplify_comparison (enum rtx_code code,
>             && HWI_COMPUTABLE_MODE_P (GET_MODE (SUBREG_REG (inner_op0)))
>             && (GET_MODE (SUBREG_REG (inner_op0))
>                 == GET_MODE (SUBREG_REG (inner_op1)))
> -           && (0 == ((~c0) & nonzero_bits (SUBREG_REG (inner_op0),
> -                                          GET_MODE (SUBREG_REG 
> (inner_op0)))))
> -           && (0 == ((~c1) & nonzero_bits (SUBREG_REG (inner_op1),
> -                                          GET_MODE (SUBREG_REG 
> (inner_op1))))))
> +           && ((~c0) & nonzero_bits (SUBREG_REG (inner_op0),
> +                                     GET_MODE (SUBREG_REG (inner_op0)))) == 0
> +           && ((~c1) & nonzero_bits (SUBREG_REG (inner_op1),
> +                                     GET_MODE (SUBREG_REG (inner_op1)))) == 
> 0)
>           {
>             op0 = SUBREG_REG (inner_op0);
>             op1 = SUBREG_REG (inner_op1);
> @@ -12339,8 +12339,8 @@ simplify_comparison (enum rtx_code code,
>                  && (equality_comparison_p || unsigned_comparison_p)
>                  /* (A - C1) zero-extends if it is positive and sign-extends
>                     if it is negative, C2 both zero- and sign-extends.  */
> -                && ((0 == (nonzero_bits (a, inner_mode)
> -                           & ~GET_MODE_MASK (mode))
> +                && (((nonzero_bits (a, inner_mode)
> +                      & ~GET_MODE_MASK (mode)) == 0
>                       && const_op >= 0)
>                      /* (A - C1) sign-extends if it is positive and 1-extends
>                         if it is negative, C2 both sign- and 1-extends.  */
> @@ -12408,8 +12408,8 @@ simplify_comparison (enum rtx_code code,
>            this for equality comparisons due to pathological cases involving
>            overflows.  */
>         if (equality_comparison_p
> -           && 0 != (tem = simplify_binary_operation (MINUS, mode,
> -                                                     op1, XEXP (op0, 1))))
> +           && (tem = simplify_binary_operation (MINUS, mode,
> +                                                op1, XEXP (op0, 1))) != 0)
>           {
>             op0 = XEXP (op0, 0);
>             op1 = tem;
> @@ -12437,8 +12437,8 @@ simplify_comparison (enum rtx_code code,
>            this for equality comparisons due to pathological cases involving
>            overflows.  */
>         if (equality_comparison_p
> -           && 0 != (tem = simplify_binary_operation (PLUS, mode,
> -                                                     XEXP (op0, 1), op1)))
> +           && (tem = simplify_binary_operation (PLUS, mode,
> +                                                XEXP (op0, 1), op1)) != 0)
>           {
>             op0 = XEXP (op0, 0);
>             op1 = tem;
> @@ -12446,8 +12446,8 @@ simplify_comparison (enum rtx_code code,
>           }
>  
>         if (equality_comparison_p
> -           && 0 != (tem = simplify_binary_operation (MINUS, mode,
> -                                                     XEXP (op0, 0), op1)))
> +           && (tem = simplify_binary_operation (MINUS, mode,
> +                                                XEXP (op0, 0), op1)) != 0)
>           {
>             op0 = XEXP (op0, 1);
>             op1 = tem;
> @@ -12471,8 +12471,8 @@ simplify_comparison (enum rtx_code code,
>         /* (eq (xor A B) C) -> (eq A (xor B C)).  This is a simplification
>            if C is zero or B is a constant.  */
>         if (equality_comparison_p
> -           && 0 != (tem = simplify_binary_operation (XOR, mode,
> -                                                     XEXP (op0, 1), op1)))
> +           && (tem = simplify_binary_operation (XOR, mode,
> +                                                XEXP (op0, 1), op1)) != 0)
>           {
>             op0 = XEXP (op0, 0);
>             op1 = tem;
> --- gcc/explow.c.jj   2017-12-14 09:10:45.000000000 +0100
> +++ gcc/explow.c      2017-12-19 14:41:00.300634373 +0100
> @@ -210,8 +210,8 @@ eliminate_constant_term (rtx x, rtx *con
>  
>    /* First handle constants appearing at this level explicitly.  */
>    if (CONST_INT_P (XEXP (x, 1))
> -      && 0 != (tem = simplify_binary_operation (PLUS, GET_MODE (x), 
> *constptr,
> -                                             XEXP (x, 1)))
> +      && (tem = simplify_binary_operation (PLUS, GET_MODE (x), *constptr,
> +                                        XEXP (x, 1))) != 0
>        && CONST_INT_P (tem))
>      {
>        *constptr = tem;
> @@ -222,8 +222,8 @@ eliminate_constant_term (rtx x, rtx *con
>    x0 = eliminate_constant_term (XEXP (x, 0), &tem);
>    x1 = eliminate_constant_term (XEXP (x, 1), &tem);
>    if ((x1 != XEXP (x, 1) || x0 != XEXP (x, 0))
> -      && 0 != (tem = simplify_binary_operation (PLUS, GET_MODE (x),
> -                                             *constptr, tem))
> +      && (tem = simplify_binary_operation (PLUS, GET_MODE (x),
> +                                        *constptr, tem)) != 0
>        && CONST_INT_P (tem))
>      {
>        *constptr = tem;
> --- gcc/c/c-typeck.c.jj       2017-12-14 21:11:43.000000000 +0100
> +++ gcc/c/c-typeck.c  2017-12-19 13:35:59.210142173 +0100
> @@ -1177,9 +1177,9 @@ comptypes_internal (const_tree type1, co
>  
>       /* Target types must match incl. qualifiers.  */
>       if (TREE_TYPE (t1) != TREE_TYPE (t2)
> -         && 0 == (val = comptypes_internal (TREE_TYPE (t1), TREE_TYPE (t2),
> -                                            enum_and_int_p,
> -                                            different_types_p)))
> +         && (val = comptypes_internal (TREE_TYPE (t1), TREE_TYPE (t2),
> +                                       enum_and_int_p,
> +                                       different_types_p)) == 0)
>         return 0;
>  
>       if (different_types_p != NULL
> @@ -1662,8 +1662,8 @@ function_types_compatible_p (const_tree
>        compare that with the other type's arglist.
>        If they don't match, ask for a warning (but no error).  */
>        if (TYPE_ACTUAL_ARG_TYPES (f1)
> -       && 1 != type_lists_compatible_p (args2, TYPE_ACTUAL_ARG_TYPES (f1),
> -                                        enum_and_int_p, different_types_p))
> +       && type_lists_compatible_p (args2, TYPE_ACTUAL_ARG_TYPES (f1),
> +                                   enum_and_int_p, different_types_p) != 1)
>       val = 2;
>        return val;
>      }
> @@ -1672,8 +1672,8 @@ function_types_compatible_p (const_tree
>        if (!self_promoting_args_p (args1))
>       return 0;
>        if (TYPE_ACTUAL_ARG_TYPES (f2)
> -       && 1 != type_lists_compatible_p (args1, TYPE_ACTUAL_ARG_TYPES (f2),
> -                                        enum_and_int_p, different_types_p))
> +       && type_lists_compatible_p (args1, TYPE_ACTUAL_ARG_TYPES (f2),
> +                                   enum_and_int_p, different_types_p) != 1)
>       val = 2;
>        return val;
>      }
> @@ -2121,8 +2121,8 @@ perform_integral_promotions (tree exp)
>        && DECL_C_BIT_FIELD (TREE_OPERAND (exp, 1))
>        /* If it's thinner than an int, promote it like a
>        c_promoting_integer_type_p, otherwise leave it alone.  */
> -      && 0 > compare_tree_int (DECL_SIZE (TREE_OPERAND (exp, 1)),
> -                            TYPE_PRECISION (integer_type_node)))
> +      && compare_tree_int (DECL_SIZE (TREE_OPERAND (exp, 1)),
> +                        TYPE_PRECISION (integer_type_node)) < 0)
>      return convert (integer_type_node, exp);
>  
>    if (c_promoting_integer_type_p (type))
> @@ -7426,15 +7426,14 @@ digest_init (location_t init_loc, tree t
>             /* Subtract the size of a single (possibly wide) character
>                because it's ok to ignore the terminating null char
>                that is counted in the length of the constant.  */
> -           if (0 > compare_tree_int (TYPE_SIZE_UNIT (type),
> -                                     (len
> -                                      - (TYPE_PRECISION (typ1)
> -                                         / BITS_PER_UNIT))))
> +           if (compare_tree_int (TYPE_SIZE_UNIT (type),
> +                                 (len - (TYPE_PRECISION (typ1)
> +                                         / BITS_PER_UNIT))) < 0)
>               pedwarn_init (init_loc, 0,
>                             ("initializer-string for array of chars "
>                              "is too long"));
>             else if (warn_cxx_compat
> -                    && 0 > compare_tree_int (TYPE_SIZE_UNIT (type), len))
> +                    && compare_tree_int (TYPE_SIZE_UNIT (type), len) < 0)
>               warning_at (init_loc, OPT_Wc___compat,
>                           ("initializer-string for array chars "
>                            "is too long for C++"));
> --- gcc/c/c-decl.c.jj 2017-12-12 12:34:41.000000000 +0100
> +++ gcc/c/c-decl.c    2017-12-19 13:34:25.951329424 +0100
> @@ -5473,7 +5473,7 @@ check_bitfield_type_and_width (location_
>  
>    max_width = TYPE_PRECISION (*type);
>  
> -  if (0 < compare_tree_int (*width, max_width))
> +  if (compare_tree_int (*width, max_width) > 0)
>      {
>        error_at (loc, "width of %qs exceeds its type", name);
>        w = max_width;
> --- gcc/final.c.jj    2017-12-13 19:47:10.000000000 +0100
> +++ gcc/final.c       2017-12-19 14:34:26.496633423 +0100
> @@ -4513,11 +4513,9 @@ leaf_renumber_regs_insn (rtx in_rtx)
>       break;
>  
>        case 'E':
> -     if (NULL != XVEC (in_rtx, i))
> -       {
> -         for (j = 0; j < XVECLEN (in_rtx, i); j++)
> -           leaf_renumber_regs_insn (XVECEXP (in_rtx, i, j));
> -       }
> +     if (XVEC (in_rtx, i) != NULL)
> +       for (j = 0; j < XVECLEN (in_rtx, i); j++)
> +         leaf_renumber_regs_insn (XVECEXP (in_rtx, i, j));
>       break;
>  
>        case 'S':
> --- gcc/cfgrtl.c.jj   2017-12-12 09:48:28.000000000 +0100
> +++ gcc/cfgrtl.c      2017-12-19 14:33:15.820530493 +0100
> @@ -2194,7 +2194,7 @@ print_rtl_with_bb (FILE *outf, const rtx
>           }
>       }
>  
> -      for (tmp_rtx = rtx_first; NULL != tmp_rtx; tmp_rtx = NEXT_INSN 
> (tmp_rtx))
> +      for (tmp_rtx = rtx_first; tmp_rtx != NULL; tmp_rtx = NEXT_INSN 
> (tmp_rtx))
>       {
>         if (flags & TDF_BLOCKS)
>           {
> --- gcc/genhooks.c.jj 2017-01-01 12:45:36.000000000 +0100
> +++ gcc/genhooks.c    2017-12-19 13:24:28.477936802 +0100
> @@ -323,7 +323,7 @@ emit_init_macros (const char *docname)
>               }
>             continue;
>           }
> -       if (0 == print_nest)
> +       if (print_nest == 0)
>           {
>             /* Output default definitions of target hooks.  */
>             printf ("#ifndef %s\n#define %s %s\n#endif\n",
> --- gcc/jit/jit-playback.c.jj 2017-11-28 09:40:56.000000000 +0100
> +++ gcc/jit/jit-playback.c    2017-12-19 14:36:53.385769005 +0100
> @@ -211,10 +211,9 @@ playback::context::
>  get_type (enum gcc_jit_types type_)
>  {
>    tree type_node = get_tree_node_for_type (type_);
> -  if (NULL == type_node)
> +  if (type_node == NULL)
>      {
> -      add_error (NULL,
> -              "unrecognized (enum gcc_jit_types) value: %i", type_);
> +      add_error (NULL, "unrecognized (enum gcc_jit_types) value: %i", type_);
>        return NULL;
>      }
>  
> @@ -2049,7 +2048,7 @@ playback::compile_to_file::copy_file (co
>    /* Use stat on the filedescriptor to get the mode,
>       so that we can copy it over (in particular, the
>       "executable" bits).  */
> -  if (-1 == fstat (fileno (f_in), &stat_buf))
> +  if (fstat (fileno (f_in), &stat_buf) == -1)
>      {
>        add_error (NULL,
>                "unable to fstat %s: %s",
> @@ -2113,7 +2112,7 @@ playback::compile_to_file::copy_file (co
>  
>    /* Set the permissions of the copy to those of the original file,
>       in particular the "executable" bits.  */
> -  if (-1 == fchmod (fileno (f_out), stat_buf.st_mode))
> +  if (fchmod (fileno (f_out), stat_buf.st_mode) == -1)
>      add_error (NULL,
>              "error setting mode of %s: %s",
>              dst_path,
> @@ -2139,7 +2138,7 @@ playback::context::acquire_mutex ()
>    /* Acquire the big GCC mutex. */
>    JIT_LOG_SCOPE (get_logger ());
>    pthread_mutex_lock (&jit_mutex);
> -  gcc_assert (NULL == active_playback_ctxt);
> +  gcc_assert (active_playback_ctxt == NULL);
>    active_playback_ctxt = this;
>  }
>  
> --- gcc/jit/libgccjit.c.jj    2017-11-23 21:13:27.000000000 +0100
> +++ gcc/jit/libgccjit.c       2017-12-19 14:38:05.526853341 +0100
> @@ -592,7 +592,7 @@ gcc_jit_context_new_struct_type (gcc_jit
>      {
>        RETURN_NULL_IF_FAIL (fields[i], ctxt, loc, "NULL field ptr");
>        RETURN_NULL_IF_FAIL_PRINTF2 (
> -     NULL == fields[i]->get_container (),
> +     fields[i]->get_container () == NULL,
>       ctxt, loc,
>       "%s is already a field of %s",
>       fields[i]->get_debug_string (),
> @@ -657,7 +657,7 @@ gcc_jit_struct_set_fields (gcc_jit_struc
>    JIT_LOG_FUNC (ctxt->get_logger ());
>    /* LOC can be NULL.  */
>    RETURN_IF_FAIL_PRINTF1 (
> -    NULL == struct_type->get_fields (), ctxt, loc,
> +    struct_type->get_fields () == NULL, ctxt, loc,
>      "%s already has had fields set",
>      struct_type->get_debug_string ());
>    if (num_fields)
> @@ -671,7 +671,7 @@ gcc_jit_struct_set_fields (gcc_jit_struc
>       struct_type->get_debug_string (),
>       i);
>        RETURN_IF_FAIL_PRINTF2 (
> -     NULL == fields[i]->get_container (),
> +     fields[i]->get_container () == NULL,
>       ctxt, loc,
>       "%s is already a field of %s",
>       fields[i]->get_debug_string (),
> @@ -706,7 +706,7 @@ gcc_jit_context_new_union_type (gcc_jit_
>      {
>        RETURN_NULL_IF_FAIL (fields[i], ctxt, loc, "NULL field ptr");
>        RETURN_NULL_IF_FAIL_PRINTF2 (
> -     NULL == fields[i]->get_container (),
> +     fields[i]->get_container () == NULL,
>       ctxt, loc,
>       "%s is already a field of %s",
>       fields[i]->get_debug_string (),
> @@ -880,7 +880,7 @@ gcc_jit_context_new_function (gcc_jit_co
>       ctxt, loc,
>       "NULL parameter %i creating function %s", i, name);
>        RETURN_NULL_IF_FAIL_PRINTF5 (
> -     (NULL == params[i]->get_scope ()),
> +     params[i]->get_scope () == NULL,
>       ctxt, loc,
>       "parameter %i \"%s\""
>       " (type: %s)"
> @@ -2925,7 +2925,7 @@ gcc_jit_timer_pop (gcc_jit_timer *timer,
>        item_name);
>  
>        RETURN_IF_FAIL_PRINTF2
> -     (0 == strcmp (item_name, top_item_name), NULL, NULL,
> +     (strcmp (item_name, top_item_name) == 0, NULL, NULL,
>        "mismatching item_name:"
>        " top of timing stack: \"%s\","
>        " attempting to pop: \"%s\"",
> --- gcc/jit/jit-builtins.c.jj 2017-09-14 22:15:10.000000000 +0200
> +++ gcc/jit/jit-builtins.c    2017-12-19 13:55:55.795930652 +0100
> @@ -76,24 +76,20 @@ matches_builtin (const char *in_name,
>    if (debug)
>      fprintf (stderr, "seen builtin: %s\n", bd.name);
>  
> -  if (0 == strcmp (bd.name, in_name))
> -    {
> -      return true;
> -    }
> +  if (strcmp (bd.name, in_name) == 0)
> +    return true;
>  
>    if (bd.both_p)
>      {
>        /* Then the macros in builtins.def gave a "__builtin_"
>        prefix to bd.name, but we should also recognize the form
>        without the prefix.  */
> -      gcc_assert (0 == strncmp (bd.name, prefix, prefix_len));
> +      gcc_assert (strncmp (bd.name, prefix, prefix_len) == 0);
>        if (debug)
>       fprintf (stderr, "testing without prefix as: %s\n",
>                bd.name + prefix_len);
> -      if (0 == strcmp (bd.name + prefix_len, in_name))
> -     {
> -       return true;
> -     }
> +      if (strcmp (bd.name + prefix_len, in_name) == 0)
> +     return true;
>      }
>  
>    return false;
> --- gcc/jit/jit-recording.c.jj        2017-11-30 23:46:35.000000000 +0100
> +++ gcc/jit/jit-recording.c   2017-12-19 14:37:22.591398307 +0100
> @@ -2987,7 +2987,7 @@ recording::compound_type::set_fields (lo
>                                     field **field_array)
>  {
>    m_loc = loc;
> -  gcc_assert (NULL == m_fields);
> +  gcc_assert (m_fields == NULL);
>  
>    m_fields = new fields (this, num_fields, field_array);
>    m_ctxt->record (m_fields);
> @@ -3182,7 +3182,7 @@ void
>  recording::fields::write_reproducer (reproducer &r)
>  {
>    if (m_struct_or_union)
> -    if (NULL == m_struct_or_union->dyn_cast_struct ())
> +    if (m_struct_or_union->dyn_cast_struct () == NULL)
>        /* We have a union; the fields have already been written by
>        union::write_reproducer.  */
>        return;
> @@ -3370,7 +3370,7 @@ void
>  recording::rvalue::set_scope (function *scope)
>  {
>    gcc_assert (scope);
> -  gcc_assert (NULL == m_scope);
> +  gcc_assert (m_scope == NULL);
>    m_scope = scope;
>  }
>  
> @@ -3750,7 +3750,7 @@ recording::function::validate ()
>    /* Complain about empty functions with non-void return type.  */
>    if (m_kind != GCC_JIT_FUNCTION_IMPORTED
>        && m_return_type != m_ctxt->get_type (GCC_JIT_TYPE_VOID))
> -    if (0 == m_blocks.length ())
> +    if (m_blocks.length () == 0)
>        m_ctxt->add_error (m_loc,
>                        "function %s returns non-void (type: %s)"
>                        " but has no blocks",
> @@ -3771,7 +3771,7 @@ recording::function::validate ()
>    /* Check that all blocks are reachable.  */
>    if (!m_ctxt->get_inner_bool_option
>          (INNER_BOOL_OPTION_ALLOW_UNREACHABLE_BLOCKS)
> -      && m_blocks.length () > 0 && 0 == num_invalid_blocks)
> +      && m_blocks.length () > 0 && num_invalid_blocks == 0)
>      {
>        /* Iteratively walk the graph of blocks, marking their "m_is_reachable"
>        flag, starting at the initial block.  */
> --- gcc/jit/jit-logging.c.jj  2017-01-01 12:45:46.000000000 +0100
> +++ gcc/jit/jit-logging.c     2017-12-19 13:56:14.113698094 +0100
> @@ -79,7 +79,7 @@ logger::decref (const char *reason)
>    if (m_log_refcount_changes)
>      log ("%s: reason: %s refcount now %i",
>        __PRETTY_FUNCTION__, reason, m_refcount);
> -  if (0 == m_refcount)
> +  if (m_refcount == 0)
>      delete this;
>  }
>  
> --- gcc/poly-int.h.jj 2017-12-14 09:10:45.000000000 +0100
> +++ gcc/poly-int.h    2017-12-19 13:27:10.811869751 +0100
> @@ -1288,7 +1288,7 @@ maybe_ne (const Ca &a, const poly_int_po
>  {
>    if (N >= 2)
>      for (unsigned int i = 1; i < N; i++)
> -      if (0 != b.coeffs[i])
> +      if (b.coeffs[i] != 0)
>       return true;
>    return a != b.coeffs[0];
>  }
> @@ -1337,7 +1337,7 @@ maybe_le (const Ca &a, const poly_int_po
>  {
>    if (N >= 2)
>      for (unsigned int i = 1; i < N; i++)
> -      if (0 < b.coeffs[i])
> +      if (b.coeffs[i] > 0)
>       return true;
>    return a <= b.coeffs[0];
>  }
> @@ -1379,7 +1379,7 @@ maybe_lt (const Ca &a, const poly_int_po
>  {
>    if (N >= 2)
>      for (unsigned int i = 1; i < N; i++)
> -      if (0 < b.coeffs[i])
> +      if (b.coeffs[i] > 0)
>       return true;
>    return a < b.coeffs[0];
>  }
> --- gcc/c-family/known-headers.cc.jj  2017-11-21 08:43:49.000000000 +0100
> +++ gcc/c-family/known-headers.cc     2017-12-19 13:57:46.749521970 +0100
> @@ -117,7 +117,7 @@ get_stdlib_header_for_name (const char *
>    };
>    const size_t num_hints = sizeof (hints) / sizeof (hints[0]);
>    for (size_t i = 0; i < num_hints; i++)
> -    if (0 == strcmp (name, hints[i].name))
> +    if (strcmp (name, hints[i].name) == 0)
>        return hints[i].header[lib];
>    return NULL;
>  }
> --- gcc/tree-data-ref.c.jj    2017-10-13 09:09:31.000000000 +0200
> +++ gcc/tree-data-ref.c       2017-12-19 13:32:43.137638316 +0100
> @@ -2665,7 +2665,7 @@ conflict_fn (unsigned n, ...)
>    conflict_function *ret = XCNEW (conflict_function);
>    va_list ap;
>  
> -  gcc_assert (0 < n && n <= MAX_DIM);
> +  gcc_assert (n > 0 && n <= MAX_DIM);
>    va_start (ap, n);
>  
>    ret->n = n;
> --- gcc/selftest.c.jj 2017-12-12 09:48:26.000000000 +0100
> +++ gcc/selftest.c    2017-12-19 13:31:08.765839806 +0100
> @@ -79,7 +79,7 @@ assert_streq (const location &loc,
>    if (val_actual == NULL)
>      fail_formatted (loc, "ASSERT_STREQ (%s, %s) expected=\"%s\" actual=NULL",
>                   desc_expected, desc_actual, val_expected);
> -  if (0 == strcmp (val_expected, val_actual))
> +  if (strcmp (val_expected, val_actual) == 0)
>      pass (loc, "ASSERT_STREQ");
>    else
>      fail_formatted (loc, "ASSERT_STREQ (%s, %s) expected=\"%s\" 
> actual=\"%s\"",
> --- gcc/expr.c.jj     2017-12-18 14:57:20.000000000 +0100
> +++ gcc/expr.c        2017-12-19 13:17:22.300363459 +0100
> @@ -6123,8 +6123,8 @@ store_constructor_field (rtx target, uns
>       target
>         = adjust_address (target,
>                           GET_MODE (target) == BLKmode
> -                         || 0 != (bitpos
> -                                  % GET_MODE_ALIGNMENT (GET_MODE (target)))
> +                         || (bitpos
> +                             % GET_MODE_ALIGNMENT (GET_MODE (target))) != 0
>                           ? BLKmode : VOIDmode, bitpos / BITS_PER_UNIT);
>  
>  
> @@ -10704,8 +10704,8 @@ expand_expr_real_1 (tree exp, rtx target
>           || (bitsize >= 0
>               && TYPE_SIZE (TREE_TYPE (exp))
>               && TREE_CODE (TYPE_SIZE (TREE_TYPE (exp))) == INTEGER_CST
> -             && 0 != compare_tree_int (TYPE_SIZE (TREE_TYPE (exp)),
> -                                       bitsize)))
> +             && compare_tree_int (TYPE_SIZE (TREE_TYPE (exp)),
> +                                  bitsize) != 0))
>         {
>           machine_mode ext_mode = mode;
>  
> --- gcc/fold-const.c.jj       2017-12-18 14:57:20.000000000 +0100
> +++ gcc/fold-const.c  2017-12-19 13:22:37.233353315 +0100
> @@ -5409,10 +5409,10 @@ fold_range_test (location_t loc, enum tr
>    if ((lhs == 0 || rhs == 0 || operand_equal_p (lhs, rhs, 0))
>        && merge_ranges (&in_p, &low, &high, in0_p, low0, high0,
>                      in1_p, low1, high1)
> -      && 0 != (tem = (build_range_check (loc, type,
> -                                      lhs != 0 ? lhs
> -                                      : rhs != 0 ? rhs : integer_zero_node,
> -                                      in_p, low, high))))
> +      && (tem = (build_range_check (loc, type,
> +                                 lhs != 0 ? lhs
> +                                 : rhs != 0 ? rhs : integer_zero_node,
> +                                 in_p, low, high))) != 0)
>      {
>        if (strict_overflow_p)
>       fold_overflow_warning (warnmsg, WARN_STRICT_OVERFLOW_COMPARISON);
> @@ -5442,12 +5442,12 @@ fold_range_test (location_t loc, enum tr
>       {
>         tree common = save_expr (lhs);
>  
> -       if (0 != (lhs = build_range_check (loc, type, common,
> -                                          or_op ? ! in0_p : in0_p,
> -                                          low0, high0))
> -           && (0 != (rhs = build_range_check (loc, type, common,
> -                                              or_op ? ! in1_p : in1_p,
> -                                              low1, high1))))
> +       if ((lhs = build_range_check (loc, type, common,
> +                                     or_op ? ! in0_p : in0_p,
> +                                     low0, high0)) != 0
> +           && (rhs = build_range_check (loc, type, common,
> +                                        or_op ? ! in1_p : in1_p,
> +                                        low1, high1)) != 0)
>           {
>             if (strict_overflow_p)
>               fold_overflow_warning (warnmsg,
> @@ -6146,10 +6146,9 @@ extract_muldiv_1 (tree t, tree c, enum t
>        if ((t2 = fold_convert (TREE_TYPE (op0), c)) != 0
>         && TREE_CODE (t2) == INTEGER_CST
>         && !TREE_OVERFLOW (t2)
> -       && (0 != (t1 = extract_muldiv (op0, t2, code,
> -                                      code == MULT_EXPR
> -                                      ? ctype : NULL_TREE,
> -                                      strict_overflow_p))))
> +       && (t1 = extract_muldiv (op0, t2, code,
> +                                code == MULT_EXPR ? ctype : NULL_TREE,
> +                                strict_overflow_p)) != 0)
>       return t1;
>        break;
>  
> @@ -6217,10 +6216,9 @@ extract_muldiv_1 (tree t, tree c, enum t
>            so check for it explicitly here.  */
>         && wi::gtu_p (TYPE_PRECISION (TREE_TYPE (size_one_node)),
>                       wi::to_wide (op1))
> -       && 0 != (t1 = fold_convert (ctype,
> -                                   const_binop (LSHIFT_EXPR,
> -                                                size_one_node,
> -                                                op1)))
> +       && (t1 = fold_convert (ctype,
> +                              const_binop (LSHIFT_EXPR, size_one_node,
> +                                           op1))) != 0
>         && !TREE_OVERFLOW (t1))
>       return extract_muldiv (build2 (tcode == LSHIFT_EXPR
>                                      ? MULT_EXPR : FLOOR_DIV_EXPR,
> @@ -8040,7 +8038,7 @@ fold_truth_andor (location_t loc, enum t
>      }
>  
>    /* See if we can build a range comparison.  */
> -  if (0 != (tem = fold_range_test (loc, code, type, op0, op1)))
> +  if ((tem = fold_range_test (loc, code, type, op0, op1)) != 0)
>      return tem;
>  
>    if ((code == TRUTH_ANDIF_EXPR && TREE_CODE (arg0) == TRUTH_ORIF_EXPR)
> @@ -8063,8 +8061,8 @@ fold_truth_andor (location_t loc, enum t
>       lhs is another similar operation, try to merge its rhs with our
>       rhs.  Then try to merge our lhs and rhs.  */
>    if (TREE_CODE (arg0) == code
> -      && 0 != (tem = fold_truth_andor_1 (loc, code, type,
> -                                      TREE_OPERAND (arg0, 1), arg1)))
> +      && (tem = fold_truth_andor_1 (loc, code, type,
> +                                 TREE_OPERAND (arg0, 1), arg1)) != 0)
>      return fold_build2_loc (loc, code, type, TREE_OPERAND (arg0, 0), tem);
>  
>    if ((tem = fold_truth_andor_1 (loc, code, type, arg0, arg1)) != 0)
> @@ -9526,8 +9524,8 @@ fold_binary_loc (location_t loc, enum tr
>               STRIP_NOPS (tree110);
>               STRIP_NOPS (tree111);
>               if (TREE_CODE (tree110) == INTEGER_CST
> -                 && 0 == compare_tree_int (tree110,
> -                                           element_precision (rtype))
> +                 && compare_tree_int (tree110,
> +                                      element_precision (rtype)) == 0
>                   && operand_equal_p (tree01, tree111, 0))
>                 {
>                   tem = build2_loc (loc, (code0 == LSHIFT_EXPR
> @@ -9548,8 +9546,8 @@ fold_binary_loc (location_t loc, enum tr
>               STRIP_NOPS (tree111);
>               if (TREE_CODE (tree110) == NEGATE_EXPR
>                   && TREE_CODE (tree111) == INTEGER_CST
> -                 && 0 == compare_tree_int (tree111,
> -                                           element_precision (rtype) - 1)
> +                 && compare_tree_int (tree111,
> +                                      element_precision (rtype) - 1) == 0
>                   && operand_equal_p (tree01, TREE_OPERAND (tree110, 0), 0))
>                 {
>                   tem = build2_loc (loc, (code0 == LSHIFT_EXPR
> @@ -9657,12 +9655,12 @@ fold_binary_loc (location_t loc, enum tr
>         /* Only do something if we found more than two objects.  Otherwise,
>            nothing has changed and we risk infinite recursion.  */
>         if (ok
> -           && (2 < ((var0 != 0) + (var1 != 0)
> -                    + (minus_var0 != 0) + (minus_var1 != 0)
> -                    + (con0 != 0) + (con1 != 0)
> -                    + (minus_con0 != 0) + (minus_con1 != 0)
> -                    + (lit0 != 0) + (lit1 != 0)
> -                    + (minus_lit0 != 0) + (minus_lit1 != 0))))
> +           && ((var0 != 0) + (var1 != 0)
> +               + (minus_var0 != 0) + (minus_var1 != 0)
> +               + (con0 != 0) + (con1 != 0)
> +               + (minus_con0 != 0) + (minus_con1 != 0)
> +               + (lit0 != 0) + (lit1 != 0)
> +               + (minus_lit0 != 0) + (minus_lit1 != 0)) > 2)
>           {
>             var0 = associate_trees (loc, var0, var1, code, atype);
>             minus_var0 = associate_trees (loc, minus_var0, minus_var1,
> @@ -9876,8 +9874,8 @@ fold_binary_loc (location_t loc, enum tr
>  
>         strict_overflow_p = false;
>         if (TREE_CODE (arg1) == INTEGER_CST
> -           && 0 != (tem = extract_muldiv (op0, arg1, code, NULL_TREE,
> -                                          &strict_overflow_p)))
> +           && (tem = extract_muldiv (op0, arg1, code, NULL_TREE,
> +                                     &strict_overflow_p)) != 0)
>           {
>             if (strict_overflow_p)
>               fold_overflow_warning (("assuming signed overflow does not "
> @@ -10310,8 +10308,8 @@ fold_binary_loc (location_t loc, enum tr
>  
>        strict_overflow_p = false;
>        if (TREE_CODE (arg1) == INTEGER_CST
> -       && 0 != (tem = extract_muldiv (op0, arg1, code, NULL_TREE,
> -                                      &strict_overflow_p)))
> +       && (tem = extract_muldiv (op0, arg1, code, NULL_TREE,
> +                                 &strict_overflow_p)) != 0)
>       {
>         if (strict_overflow_p)
>           fold_overflow_warning (("assuming signed overflow does not occur "
> @@ -10328,8 +10326,8 @@ fold_binary_loc (location_t loc, enum tr
>      case TRUNC_MOD_EXPR:
>        strict_overflow_p = false;
>        if (TREE_CODE (arg1) == INTEGER_CST
> -       && 0 != (tem = extract_muldiv (op0, arg1, code, NULL_TREE,
> -                                      &strict_overflow_p)))
> +       && (tem = extract_muldiv (op0, arg1, code, NULL_TREE,
> +                                 &strict_overflow_p)) != 0)
>       {
>         if (strict_overflow_p)
>           fold_overflow_warning (("assuming signed overflow does not occur "
> @@ -10982,7 +10980,7 @@ fold_binary_loc (location_t loc, enum tr
>         && TREE_CODE (arg1) == INTEGER_CST
>         && TREE_CODE (arg0) == ABS_EXPR
>         && ! TREE_SIDE_EFFECTS (arg0)
> -       && (0 != (tem = negate_expr (arg1)))
> +       && (tem = negate_expr (arg1)) != 0
>         && TREE_CODE (tem) == INTEGER_CST
>         && !TREE_OVERFLOW (tem))
>       return fold_build2_loc (loc, TRUTH_ANDIF_EXPR, type,
> @@ -12491,10 +12489,9 @@ multiple_of_p (tree type, const_tree top
>            so check for it explicitly here.  */
>         if (wi::gtu_p (TYPE_PRECISION (TREE_TYPE (size_one_node)),
>                        wi::to_wide (op1))
> -           && 0 != (t1 = fold_convert (type,
> -                                       const_binop (LSHIFT_EXPR,
> -                                                    size_one_node,
> -                                                    op1)))
> +           && (t1 = fold_convert (type,
> +                                  const_binop (LSHIFT_EXPR, size_one_node,
> +                                               op1))) != 0
>             && !TREE_OVERFLOW (t1))
>           return multiple_of_p (type, t1, bottom);
>       }
> --- gcc/reload.c.jj   2017-09-15 17:10:57.000000000 +0200
> +++ gcc/reload.c      2017-12-19 13:29:54.332787587 +0100
> @@ -1532,8 +1532,8 @@ push_reload (rtx in, rtx out, rtx *inloc
>        value for the incoming operand (same as outgoing one).  */
>        if (rld[i].reg_rtx == out
>         && (REG_P (in) || CONSTANT_P (in))
> -       && 0 != find_equiv_reg (in, this_insn, NO_REGS, REGNO (out),
> -                               static_reload_reg_p, i, inmode))
> +       && find_equiv_reg (in, this_insn, NO_REGS, REGNO (out),
> +                          static_reload_reg_p, i, inmode) != 0)
>       rld[i].in = out;
>      }
>  
> @@ -6750,9 +6750,8 @@ find_equiv_reg (rtx goal, rtx_insn *insn
>                             && CONST_DOUBLE_AS_FLOAT_P (XEXP (tem, 0))
>                             && SCALAR_FLOAT_MODE_P (GET_MODE (XEXP (tem, 0)))
>                             && CONST_INT_P (goal)
> -                           && 0 != (goaltry
> -                                    = operand_subword (XEXP (tem, 0), 0, 0,
> -                                                       VOIDmode))
> +                           && (goaltry = operand_subword (XEXP (tem, 0), 0,
> +                                                          0, VOIDmode)) != 0
>                             && rtx_equal_p (goal, goaltry)
>                             && (valtry
>                                 = operand_subword (SET_DEST (pat), 0, 0,
> @@ -6764,8 +6763,8 @@ find_equiv_reg (rtx goal, rtx_insn *insn
>                     && CONST_DOUBLE_AS_FLOAT_P (XEXP (tem, 0))
>                     && SCALAR_FLOAT_MODE_P (GET_MODE (XEXP (tem, 0)))
>                     && CONST_INT_P (goal)
> -                   && 0 != (goaltry = operand_subword (XEXP (tem, 0), 1, 0,
> -                                                       VOIDmode))
> +                   && (goaltry = operand_subword (XEXP (tem, 0), 1, 0,
> +                                                  VOIDmode)) != 0
>                     && rtx_equal_p (goal, goaltry)
>                     && (valtry
>                         = operand_subword (SET_DEST (pat), 1, 0, VOIDmode))
> --- gcc/et-forest.c.jj        2017-01-01 12:45:36.000000000 +0100
> +++ gcc/et-forest.c   2017-12-19 13:15:17.689950164 +0100
> @@ -671,7 +671,7 @@ et_nca (struct et_node *n1, struct et_no
>        return NULL;
>      }
>  
> -  if (0 < o2->depth)
> +  if (o2->depth > 0)
>      {
>        om = o1;
>        mn = o1->depth;
> @@ -743,7 +743,7 @@ et_below (struct et_node *down, struct e
>        return false;
>      }
>  
> -  if (0 >= d->depth)
> +  if (d->depth <= 0)
>      return false;
>  
>    return !d->next || d->next->min + d->depth >= 0;
> --- gcc/dbxout.c.jj   2017-12-12 09:48:21.000000000 +0100
> +++ gcc/dbxout.c      2017-12-19 14:33:45.904148651 +0100
> @@ -3043,7 +3043,7 @@ dbxout_symbol_location (tree decl, tree
>         int offs;
>         letter = 'G';
>         code = N_GSYM;
> -       if (NULL != dbxout_common_check (decl, &offs))
> +       if (dbxout_common_check (decl, &offs) != NULL)
>           {
>             letter = 'V';
>             addr = 0;
> @@ -3097,7 +3097,7 @@ dbxout_symbol_location (tree decl, tree
>           {
>             int offs;
>             code = N_LCSYM;
> -           if (NULL != dbxout_common_check (decl, &offs))
> +           if (dbxout_common_check (decl, &offs) != NULL)
>               {
>                 addr = 0;
>                 number = offs;
> @@ -3196,7 +3196,7 @@ dbxout_symbol_location (tree decl, tree
>        int offs;
>        code = N_LCSYM;
>        letter = 'V';
> -      if (NULL == dbxout_common_check (decl, &offs))
> +      if (dbxout_common_check (decl, &offs) == NULL)
>          addr = XEXP (XEXP (home, 0), 0);
>        else
>          {
> --- gcc/reorg.c.jj    2017-11-22 23:34:45.000000000 +0100
> +++ gcc/reorg.c       2017-12-19 13:30:13.328545707 +0100
> @@ -3205,7 +3205,7 @@ relax_delay_slots (rtx_insn *first)
>         && (other = prev_active_insn (insn)) != 0
>         && any_condjump_p (other)
>         && no_labels_between_p (other, insn)
> -       && 0 > mostly_true_jump (other))
> +       && mostly_true_jump (other) < 0)
>       {
>         rtx other_target = JUMP_LABEL (other);
>         target_label = JUMP_LABEL (insn);
> --- gcc/dojump.c.jj   2017-09-01 09:26:27.000000000 +0200
> +++ gcc/dojump.c      2017-12-19 13:12:52.522797001 +0100
> @@ -1002,8 +1002,8 @@ do_compare_rtx_and_jump (rtx op0, rtx op
>    do_pending_stack_adjust ();
>  
>    code = unsignedp ? unsigned_condition (code) : code;
> -  if (0 != (tem = simplify_relational_operation (code, mode, VOIDmode,
> -                                              op0, op1)))
> +  if ((tem = simplify_relational_operation (code, mode, VOIDmode,
> +                                         op0, op1)) != 0)
>      {
>        if (CONSTANT_P (tem))
>       {
> --- gcc/fortran/scanner.c.jj  2017-10-17 09:24:04.000000000 +0200
> +++ gcc/fortran/scanner.c     2017-12-19 13:55:05.404570408 +0100
> @@ -2057,7 +2057,7 @@ preprocessor_line (gfc_char_t *c)
>        c++;
>        i = wide_atoi (c);
>  
> -      if (1 <= i && i <= 4)
> +      if (i >= 1 && i <= 4)
>       flag[i] = true;
>      }
>  
> --- gcc/fortran/dependency.c.jj       2017-01-01 12:45:47.000000000 +0100
> +++ gcc/fortran/dependency.c  2017-12-19 14:35:52.124546575 +0100
> @@ -1431,17 +1431,17 @@ check_section_vs_section (gfc_array_ref
>    r_stride = r_ar->stride[n];
>  
>    /* If l_start is NULL take it from array specifier.  */
> -  if (NULL == l_start && IS_ARRAY_EXPLICIT (l_ar->as))
> +  if (l_start == NULL && IS_ARRAY_EXPLICIT (l_ar->as))
>      l_start = l_ar->as->lower[n];
>    /* If l_end is NULL take it from array specifier.  */
> -  if (NULL == l_end && IS_ARRAY_EXPLICIT (l_ar->as))
> +  if (l_end == NULL && IS_ARRAY_EXPLICIT (l_ar->as))
>      l_end = l_ar->as->upper[n];
>  
>    /* If r_start is NULL take it from array specifier.  */
> -  if (NULL == r_start && IS_ARRAY_EXPLICIT (r_ar->as))
> +  if (r_start == NULL && IS_ARRAY_EXPLICIT (r_ar->as))
>      r_start = r_ar->as->lower[n];
>    /* If r_end is NULL take it from array specifier.  */
> -  if (NULL == r_end && IS_ARRAY_EXPLICIT (r_ar->as))
> +  if (r_end == NULL && IS_ARRAY_EXPLICIT (r_ar->as))
>      r_end = r_ar->as->upper[n];
>  
>    /* Determine whether the l_stride is positive or negative.  */
> --- gcc/fortran/trans-array.c.jj      2017-12-01 22:13:19.000000000 +0100
> +++ gcc/fortran/trans-array.c 2017-12-19 14:36:24.045141417 +0100
> @@ -7003,7 +7003,7 @@ gfc_conv_expr_descriptor (gfc_se *se, gf
>  
>    /* Special case: TRANSPOSE which needs no temporary.  */
>    while (expr->expr_type == EXPR_FUNCTION && expr->value.function.isym
> -      && NULL != (arg = gfc_get_noncopying_intrinsic_argument (expr)))
> +      && (arg = gfc_get_noncopying_intrinsic_argument (expr)) != NULL)
>      {
>        /* This is a call to transpose which has already been handled by the
>        scalarizer, so that we just need to get its argument's descriptor.  */
> --- gcc/gengtype-parse.c.jj   2017-01-01 12:45:35.000000000 +0100
> +++ gcc/gengtype-parse.c      2017-12-19 13:24:08.554190497 +0100
> @@ -948,9 +948,9 @@ type (options_p *optsp, bool nested)
>               advance ();
>               const char *basename = require (ID);
>               /* This may be either an access specifier, or the base name.  */
> -             if (0 == strcmp (basename, "public")
> -                 || 0 == strcmp (basename, "protected")
> -                 || 0 == strcmp (basename, "private"))
> +             if (strcmp (basename, "public") == 0
> +                 || strcmp (basename, "protected") == 0
> +                 || strcmp (basename, "private") == 0)
>                 basename = require (ID);
>               base_class = find_structure (basename, TYPE_STRUCT);
>               if (!base_class)
> --- gcc/simplify-rtx.c.jj     2017-12-18 14:57:24.000000000 +0100
> +++ gcc/simplify-rtx.c        2017-12-19 13:32:17.385966153 +0100
> @@ -400,8 +400,8 @@ simplify_gen_ternary (enum rtx_code code
>    rtx tem;
>  
>    /* If this simplifies, use it.  */
> -  if (0 != (tem = simplify_ternary_operation (code, mode, op0_mode,
> -                                           op0, op1, op2)))
> +  if ((tem = simplify_ternary_operation (code, mode, op0_mode,
> +                                      op0, op1, op2)) != 0)
>      return tem;
>  
>    return gen_rtx_fmt_eee (code, mode, op0, op1, op2);
> @@ -416,8 +416,8 @@ simplify_gen_relational (enum rtx_code c
>  {
>    rtx tem;
>  
> -  if (0 != (tem = simplify_relational_operation (code, mode, cmp_mode,
> -                                              op0, op1)))
> +  if ((tem = simplify_relational_operation (code, mode, cmp_mode,
> +                                         op0, op1)) != 0)
>      return tem;
>  
>    return gen_rtx_fmt_ee (code, mode, op0, op1);
> @@ -5148,7 +5148,7 @@ simplify_const_relational_operation (enu
>        && (code == EQ || code == NE)
>        && ! ((REG_P (op0) || CONST_INT_P (trueop0))
>           && (REG_P (op1) || CONST_INT_P (trueop1)))
> -      && 0 != (tem = simplify_binary_operation (MINUS, mode, op0, op1))
> +      && (tem = simplify_binary_operation (MINUS, mode, op0, op1)) != 0
>        /* We cannot do this if tem is a nonzero address.  */
>        && ! nonzero_address_p (tem))
>      return simplify_const_relational_operation (signed_condition (code),
> --- gcc/reload1.c.jj  2017-12-14 16:25:10.000000000 +0100
> +++ gcc/reload1.c     2017-12-19 13:28:34.286806838 +0100
> @@ -8006,8 +8006,8 @@ do_output_reload (struct insn_chain *cha
>    /* Likewise for a SUBREG of an operand that dies.  */
>    else if (GET_CODE (old) == SUBREG
>          && REG_P (SUBREG_REG (old))
> -        && 0 != (note = find_reg_note (insn, REG_UNUSED,
> -                                       SUBREG_REG (old))))
> +        && (note = find_reg_note (insn, REG_UNUSED,
> +                                  SUBREG_REG (old))) != 0)
>      {
>        XEXP (note, 0) = gen_lowpart_common (GET_MODE (old), reg_rtx);
>        return;
> --- gcc/dumpfile.c.jj 2017-07-03 19:03:29.000000000 +0200
> +++ gcc/dumpfile.c    2017-12-19 13:14:30.020557154 +0100
> @@ -251,7 +251,7 @@ gcc::dump_manager::
>  get_dump_file_info_by_switch (const char *swtch) const
>  {
>    for (unsigned i = 0; i < m_extra_dump_files_in_use; i++)
> -    if (0 == strcmp (m_extra_dump_files[i].swtch, swtch))
> +    if (strcmp (m_extra_dump_files[i].swtch, swtch) == 0)
>        return &m_extra_dump_files[i];
>  
>    /* Not found.  */
> --- gcc/gengtype.c.jj 2017-11-28 12:11:37.000000000 +0100
> +++ gcc/gengtype.c    2017-12-19 13:23:41.764531619 +0100
> @@ -671,7 +671,7 @@ type_for_name (const char *s)
>           extern GTY(()) gcc::some_type *some_ptr;
>       where the autogenerated functions will refer to simply "some_type",
>       where they can be resolved into their namespace.  */
> -  if (0 == strncmp (s, "gcc::", 5))
> +  if (strncmp (s, "gcc::", 5) == 0)
>      s += 5;
>  
>    for (p = typedefs; p != NULL; p = p->next)
> --- gcc/gimple-ssa-sprintf.c.jj       2017-12-14 12:00:32.000000000 +0100
> +++ gcc/gimple-ssa-sprintf.c  2017-12-19 12:19:10.975042433 +0100
> @@ -2854,7 +2854,7 @@ format_directive (const sprintf_dom_walk
>  
>    if (!warned
>        /* Only warn at level 2.  */
> -      && 1 < warn_level
> +      && warn_level > 1
>        && (!minunder4k
>         || (!maxunder4k && fmtres.range.max < HOST_WIDE_INT_MAX)))
>      {
> @@ -2902,7 +2902,7 @@ format_directive (const sprintf_dom_walk
>        /* Warn for the likely output size at level 1.  */
>        && (likelyximax
>         /* But only warn for the maximum at level 2.  */
> -       || (1 < warn_level
> +       || (warn_level > 1
>             && maxximax
>             && fmtres.range.max < HOST_WIDE_INT_MAX)))
>      {
> 
>       Jakub
> 
> 

-- 
Richard Biener <rguent...@suse.de>
SUSE LINUX GmbH, GF: Felix Imendoerffer, Jane Smithard, Graham Norton, HRB 
21284 (AG Nuernberg)

Reply via email to