Hi! On Fri, Apr 03, 2020 at 02:13:06PM +0800, luoxhu wrote: > Currently 286r.split2 will split "12:%9:DI=0x87654321" to lis+ori by > rs6000_emit_set_const of define_split, do you mean add new > define_insn_and_split > to do the split? Another patch to do this after this one goes upstream in > stage 1?
I mean a splitter that recognises reg := reg + imm for a big immediate, and then does addis+addi again if that is the best way to do it. We expand as a load of the 32-bit constant, which means it can be hoisted just fine, and when we can use paddi we can; but when we cannot, we can still split it again. > > This also links in with Alan's work on big immediates, and with paddi > > insns, etc. > > Seems PR94393? Yes, PR94393. And everything else that will show up if we start pulling at that string (which we should now, btw, for paddi). Segher