package register import ( "git.akyoto.dev/cli/q/src/build/asm" "git.akyoto.dev/cli/q/src/build/cpu" ) func (f *Machine) RegisterLabel(mnemonic asm.Mnemonic, register cpu.Register, label string) { if f.RegisterIsUsed(register) && isDestructive(mnemonic) { f.SaveRegister(register) } f.Assembler.RegisterLabel(mnemonic, register, label) if mnemonic == asm.MOVE { f.UseRegister(register) } f.postInstruction() }