https://github.com/stephenpeckham commented: Other than a couple of nits, I think the code and the generated assembly look good. Factoring out the +/- 65536 in the assemble code helps anyone reading the the assembly listing. https://github.com/llvm/llvm-project/pull/71485