diff options
author | John van Groningen | 2003-05-16 14:53:22 +0000 |
---|---|---|
committer | John van Groningen | 2003-05-16 14:53:22 +0000 |
commit | 925708830090dcdd6a0fa08ce89a1f10cdd89027 (patch) | |
tree | 277a0dca8d93f084b3132f370bb90d808aef6747 /pstartup.a | |
parent | macintosh files (diff) |
optimize toString for Int by computing the remainder of 10
using multiplication
Diffstat (limited to 'pstartup.a')
-rw-r--r-- | pstartup.a | 17 |
1 files changed, 14 insertions, 3 deletions
@@ -1763,17 +1763,28 @@ calculate_digits: cmplwi 0,d0,10 blt last_digit + if 1 + lis o0,-13107 + subi o0,o0,13107 + mulhwu o0,o0,d0 + srwi o0,o0,3 + + slwi o1,o0,1 + sub a1,d0,o1 + slwi o1,o0,3 + sub a1,a1,o1 + else li o1,10 divwu o0,d0,o1 mullw a1,o0,o1 sub a1,d0,a1 + endif addi a1,a1,48 + mr d0,o0 stb a1,0(a2) - addi a2,a2,1 - - mr d0,o0 + addi a2,a2,1 b calculate_digits last_digit: |