This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: apparent typo in combine.c


    >     Now how can that be right?  Generate an arithmetic shift only if we
    >     *don't* have an arithmetic shift insn for this mode?  I would think
    >     that either the != and == should be swapped in the first two lines, 
    > 
    > I think that's correct.  Amazing this has been around for so long!

    Which of the changes I suggested do you think is better?

The one I repeated!

    Here's another one:

	      /* If OP0 is an AND and we don't have an AND in MODE either,
		 make a new AND in the proper mode.  */
	      if (GET_CODE (op0) == AND
		  && (add_optab->handlers[(int) mode].insn_code
		      == CODE_FOR_nothing))
		op0 = gen_binary (AND, tmode,
				  gen_lowpart_for_combine (tmode,
							   XEXP (op0, 0)),
				  gen_lowpart_for_combine (tmode,
							   XEXP (op0, 1)));

    -- that should be and_optab, I think.

Oops, yes, it should!


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]