Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Compute_XOR:
- li %r11, 0 # Load Immediate
- cmplwi cr6, %r4, 0 # Compare Logical Word Immediate
- beq cr6, loc_823140D4 # Branch if equal
- mtctr %r4 # Move to count register
- [Loop]
- loc_823140B0: # Load Byte and Zero Indexed
- lbzx %r10, %r11, %r3
- addi %r11, %r11, 1 # Add Immediate
- extsb %r10, %r10 # Extend Sign Byte
- add %r10, %r10, %r5 # Add
- slwi %r9, %r10, 10 # Shift Left Immediate
- add %r10, %r9, %r10 # Add
- srwi %r9, %r10, 6 # Shift Right Immediate
- xor %r5, %r9, %r10 # XOR
- bdnz loc_823140B0 # CTR--; branch if CTR non-zero
- [End]
- loc_823140D4: # Shift Left Immediate
- slwi %r11, %r5, 3
- add %r11, %r5, %r11 # Add
- srwi %r10, %r11, 11 # Shift Right Immediate
- xor %r11, %r10, %r11 # XOR
- slwi %r10, %r11, 15 # Shift Left Immediate
- add %r3, %r10, %r11 # Add
- blr # Branch unconditionally
- # End of function Compute_XOR
Advertisement
Add Comment
Please, Sign In to add comment