Why no ADC/SBC instructions not exposed in ACLE?

By: David Hess (davidwhess.delete@this.gmail.com), November 23, 2019 3:21 pm
Room: Moderated Discussions
Michael S (already5chosen.delete@this.yahoo.com) on November 11, 2019 1:56 am wrote:
> The question is mostly to Wilco Dijkstra, but the answer could be interesting to others.
>
> Why Arm C Language Extension (ACLE) does not provide intrinsic functions
> for Add-with-curry (ADC) and Subtract-with-carry (SBC) instructions?

I always assumed this was because of an initial design assumption that numerical results are of the same type as the inputs but how would you return the extra bit? Without going through hoops, 32 bit multiplications in C produce 32 bit results even though no sane multiplier works that way.

Some non-standard C compilers intended for DSP and fixed point applications do fixed point radix tracking and return a double width result by default for multiply. I do not remember if they provide access to the carry or borrow bit for addition and subtraction or what they do for divide. They were popular before floating point DSP became economical so may no longer be available.
< Previous Post in Thread 
TopicPosted ByDate
Why no ADC/SBC instructions not exposed in ACLE?Michael S2019/11/11 02:56 AM
  Why no ADC/SBC instructions not exposed in ACLE?anon2019/11/23 08:58 AM
    Why no ADC/SBC instructions not exposed in ACLE?Michael S2019/11/23 09:58 AM
      better linkMichael S2019/11/23 10:01 AM
  Why no ADC/SBC instructions not exposed in ACLE?David Hess2019/11/23 03:21 PM
Reply to this Topic
Name:
Email:
Topic:
Body: No Text
How do you spell purple?