Closed
Description
Running https://gist.github.com/nikic/974087a15f48f4495f25361bae3015d2 through llc -mtriple=s390x--
gives something like this:
lg %r4, 14920(%r4,%r15) # 16-byte Folded Reload
lg %r5, 14928(%r4,%r15) # 16-byte Folded Reload
Note that %r4
is used in the load offset calculation, but also one of the result registers.
Originally, this is a L128:
renamable $r2q = L128 $r15d, 14920, killed $r2d :: (load (s128) from %stack.13, align 8)
That gets expanded into two LG, resulting in the register clobber:
$r2d = LG $r15d, 14920, $r2d :: (load (s128) from %stack.13, align 8)
$r3d = LG $r15d, 14928, killed $r2d :: (load (s128) from %stack.13, align 8)
Metadata
Metadata
Assignees
Type
Projects
Status
Done