home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   comp.lang.c      Meh, in C you gotta define EVERYTHING      243,242 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 241,329 of 243,242   
   Michael S to ldo@nz.invalid   
   Re: "The Weird Concept of Branchless Pro   
   17 Oct 25 14:17:32   
   
   From: already5chosen@yahoo.com   
      
   On Fri, 17 Oct 2025 07:06:48 -0000 (UTC)   
   Lawrence D’Oliveiro  wrote:   
      
   > On Thu, 16 Oct 2025 20:13:48 +1100, Alexis wrote:   
   >    
   > > "By rewriting conditional logic into arithmetic and bit operations,   
   > > or using CPU instructions like cmov, we let the CPU chew through   
   > > code without pausing to guess. It’s smoother, faster, and often more   
   > > deterministic, which is crucial in performance-critical or   
   > > side-channel-resistant scenarios (looking at you, cryptography)."     
   >    
   > The original 32-bit ARM architecture (you know, the most popular CPU    
   > architecture in the world) had extra bits in the opcode to allow   
   > (nearly?) every instruction to be executed conditionally, without   
   > explicit branching.   
   >    
   > They gave up on this idea in the 64-bit version of ARM.   
      
   They gave up on the idea much earlier, in Thumb2, the variant that   
   promoted ARM from claiming to be most popular CPU architecture in the   
   world to actulally being one.   
   In Thumb2 almost universal predicatio was substituted by conditional   
   execution via IT block.   
   In ARM64 IT blocks are goe, leaving rather conventional select   
   instruction as the main tool for branch avoidance.   
   But I would imagine thhat Thumb2-capable cores (Cortex-M) still outsell   
   ARM64-capable cores by significant factor.   
   Still popular Cortex-A53 core and its successors (A55 and A510, but not   
   A520) support both Thumb2 (T32 in ARMv8 terminology) and ARM64   
   instruction sets. I would guess that in today's practice [on these   
   cores] T32 is used very rarely.   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca