This add does not wrap around - it hands back a value that is not well-defined, and everybody downstream is allowed to plan around that. nsw is a promise to whoever optimises the code rather than extra work for...
The ternary of IR - one compare, one select, and the function never leaves its first block. icmp answers with a one-bit value and select uses that bit to name one of two values, so @max is still a...
Two indices, and the first one is not a field - it steps over whole objects from the pointer. getelementptr answers which address and nothing else, so the load underneath it is the first instruction that reads memory -...
Same function. Same compiler. Your CPU has sixteen general-purpose registers, and your function has two hundred variables. Something has to decide which ones live in silicon, where access takes zero cycles, and which ones get exiled to memory,...