coja@lemmy.ml to Programmer Humor@lemmy.ml • 11 months agoFind yourselfimagemessage-square18 fedilinkarrow-up1211
arrow-up1211imageFind yourselfcoja@lemmy.ml to Programmer Humor@lemmy.ml • 11 months agomessage-square18 Commentsfedilink
minus-squareEufalconimorph@discuss.tchncs.dehexbear9·11 months ago#define max(x,y) ( { __auto_type __x = (x); __auto_type __y = (y); __x > __y ? __x : __y; }) GNU C. Also works with Clang. Avoids evaluating the arguments multiple times. The optimizer will convert the branch into a conditional move, if it doesn't I'd replace the ternary with the "bit hacker 2" version. linkfedilink
#define max(x,y) ( { __auto_type __x = (x); __auto_type __y = (y); __x > __y ? __x : __y; })
GNU C. Also works with Clang. Avoids evaluating the arguments multiple times. The optimizer will convert the branch into a conditional move, if it doesn't I'd replace the ternary with the "bit hacker 2" version.