[PATCH 06/10] rs6000: New add/subf carry insns

David Edelsohn dje.gcc@gmail.com
Mon Dec 8 15:53:00 GMT 2014


On Mon, Dec 8, 2014 at 10:41 AM, David Edelsohn <dje.gcc@gmail.com> wrote:
> On Mon, Dec 8, 2014 at 9:18 AM, Segher Boessenkool
> <segher@kernel.crashing.org> wrote:
>> This implements addc, addic, adde, addze, addme, subfc, subfic, subfe,
>> subfze, subfme.  Some of those in multiple forms: canonical RTL for the
>> "immediate" insns has four forms; subfX has a special form for subtracting
>> a register from itself.
>>
>> All these new insns get type "add" for now.
>>
>>
>> 2014-12-08  Segher Boessenkool  <segher@kernel.crashing.org>
>>
>> gcc/
>>         PR target/64180
>>         * config/rs6000/predicates.md (adde_operand): New.
>>         * config/rs6000/rs6000.md (add<mode>3_carry): New.
>>         (add<mode>3_imm_carry_pos): New.
>>         (add<mode>3_imm_carry_0): New.
>>         (add<mode>3_imm_carry_m1): New.
>>         (add<mode>3_imm_carry_neg): New.
>>         (add<mode>3_carry_in): New.
>>         (add<mode>3_carry_in_0): New.
>>         (add<mode>3_carry_in_m1): New.
>>         (subf<mode>3_carry): New.
>>         (subf<mode>3_imm_carry_0): New.
>>         (subf<mode>3_imm_carry_m1): New.
>>         (subf<mode>3_carry_in): New.
>>         (subf<mode>3_carry_in_0): New.
>>         (subf<mode>3_carry_in_m1): New.
>>         (subf<mode>3_carry_in_xx): New.
>
> Okay.
>
> Thanks, David

As we both noticed, there are a few problems with this patch, so I'll
wait for a revised version.

Thanks, David



More information about the Gcc-patches mailing list