summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
94076c3)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@3851
4a8a32a2-be11-0410-ad9d-
d568d2c75423
- ; Peephole 108 removed ljmp by inverse jump logic
+ ; Peephole 108.a removed ljmp by inverse jump logic
jnc %5
%1:
} if labelInRange(), labelRefCountChange(%1 -1)
jnc %5
%1:
} if labelInRange(), labelRefCountChange(%1 -1)
- ; Peephole 109 removed ljmp by inverse jump logic
+ ; Peephole 108.b removed ljmp by inverse jump logic
jnz %5
%1:
} if labelInRange(), labelRefCountChange(%1 -1)
jnz %5
%1:
} if labelInRange(), labelRefCountChange(%1 -1)
- ; Peephole 110 removed ljmp by inverse jump logic
+ ; Peephole 108.c removed ljmp by inverse jump logic
jz %5
%1:
} if labelInRange(), labelRefCountChange(%1 -1)
jz %5
%1:
} if labelInRange(), labelRefCountChange(%1 -1)
- ; Peephole 111 removed ljmp by inverse jump logic
+ ; Peephole 108.d removed ljmp by inverse jump logic
jnb %1,%5
%2:
} if labelInRange(), labelRefCountChange(%2 -1)
jnb %1,%5
%2:
} if labelInRange(), labelRefCountChange(%2 -1)
- ; Peephole 112.a removed ljmp by inverse jump logic
+ ; Peephole 108.e removed ljmp by inverse jump logic
jb %1,%5
%2:
} if labelInRange(), labelRefCountChange(%2 -1)
jb %1,%5
%2:
} if labelInRange(), labelRefCountChange(%2 -1)
- ; Peephole 113 optimized misc sequence
+ ; Peephole 113.a optimized misc sequence
clr %4
cjne %1,%2,%3
setb %4
clr %4
cjne %1,%2,%3
setb %4
- ; Peephole 114 optimized misc sequence
+ ; Peephole 113.b optimized misc sequence
clr %4
cjne %1,%2,%3
cjne %10,%11,%3
clr %4
cjne %1,%2,%3
cjne %10,%11,%3
- ; Peephole 116 jump optimization (acc not set)
+ ; Peephole 115.c jump optimization (acc not set)
cjne %1,%2,%3
cjne %9,%10,%3
sjmp %4
cjne %1,%2,%3
cjne %9,%10,%3
sjmp %4
- ; Peephole 117 jump optimization (acc not set)
+ ; Peephole 115.d jump optimization (acc not set)
cjne %1,%2,%3
cjne %9,%10,%3
cjne %11,%12,%3
cjne %1,%2,%3
cjne %9,%10,%3
cjne %11,%12,%3
- ; Peephole 118 jump optimization (acc not set)
+ ; Peephole 115.e jump optimization (acc not set)
cjne %1,%2,%3
cjne %9,%10,%3
cjne %11,%12,%3
cjne %1,%2,%3
cjne %9,%10,%3
cjne %11,%12,%3
- ; Peephole 119 jump optimization (acc not set)
+ ; Peephole 115.f jump optimization (acc not set)
cjne %1,%2,%4
%3:
} if labelRefCount(%3 1), labelRefCountChange(%3 -1)
cjne %1,%2,%4
%3:
} if labelRefCount(%3 1), labelRefCountChange(%3 -1)
- ; Peephole 120 jump optimization (acc not set)
+ ; Peephole 115.g jump optimization (acc not set)
cjne %1,%2,%4
cjne %10,%11,%4
%3:
cjne %1,%2,%4
cjne %10,%11,%4
%3:
- ; Peephole 121 jump optimization (acc not set)
+ ; Peephole 115.h jump optimization (acc not set)
cjne %1,%2,%4
cjne %10,%11,%4
cjne %12,%13,%4
cjne %1,%2,%4
cjne %10,%11,%4
cjne %12,%13,%4
- ; Peephole 122 jump optimization (acc not set)
+ ; Peephole 115.i jump optimization (acc not set)
cjne %1,%2,%4
cjne %10,%11,%4
cjne %12,%13,%4
cjne %1,%2,%4
cjne %10,%11,%4
cjne %12,%13,%4
- ; Peephole 123 jump optimization (acc not set)
+ ; Peephole 115.j jump optimization (acc not set)
cjne %1,%2,%3
sjmp %4
%3:
cjne %1,%2,%3
sjmp %4
%3:
- ; Peephole 124 jump optimization (acc not set)
+ ; Peephole 115.k jump optimization (acc not set)
cjne %1,%2,%3
cjne %10,%11,%3
sjmp %4
cjne %1,%2,%3
cjne %10,%11,%3
sjmp %4
- ; Peephole 125 jump optimization (acc not set)
+ ; Peephole 115.l jump optimization (acc not set)
cjne %1,%2,%3
cjne %10,%11,%3
cjne %12,%13,%3
cjne %1,%2,%3
cjne %10,%11,%3
cjne %12,%13,%3
- ; Peephole 126 jump optimization (acc not set)
+ ; Peephole 115.m jump optimization (acc not set)
cjne %1,%2,%3
cjne %10,%11,%3
cjne %12,%13,%3
cjne %1,%2,%3
cjne %10,%11,%3
cjne %12,%13,%3
anl ar%1,%2
mov a,r%1
} by {
anl ar%1,%2
mov a,r%1
} by {
- ; Peephole 139 removed redundant mov
+ ; Peephole 139.a removed redundant mov
orl ar%1,%2
mov a,r%1
} by {
orl ar%1,%2
mov a,r%1
} by {
- ; Peephole 140 removed redundant mov
+ ; Peephole 139.b removed redundant mov
xrl ar%1,%2
mov a,r%1
} by {
xrl ar%1,%2
mov a,r%1
} by {
- ; Peephole 141 removed redundant mov
+ ; Peephole 139.c removed redundant mov
- ; Peephole 143 converted rlc to rl
+ ; Peephole 143.a converted rlc to rl
- ; Peephole 144 converted rrc to rc
+ ; Peephole 143.b converted rrc to rc
- ; Peephole 145 changed to add without carry
+ ; Peephole 145.a changed to add without carry
mov a,%1
addc a,%2
} by {
mov a,%1
addc a,%2
} by {
- ; Peephole 146 changed to add without carry
+ ; Peephole 145.b changed to add without carry
+// what are #147-#149 for?
replace {
orl r%1,a
} by {
replace {
orl r%1,a
} by {
- ; Peephole 150 removed misc moves via dpl before return
+ ; Peephole 150.a removed misc moves via dpl before return
- ; Peephole 151 removed misc moves via dph, dpl before return
+ ; Peephole 150.b removed misc moves via dph, dpl before return
- ; Peephole 152 removed misc moves via dph, dpl before return
+ ; Peephole 150.c removed misc moves via dph, dpl before return
- ; Peephole 153 removed misc moves via dph, dpl, b before return
+ ; Peephole 150.d removed misc moves via dph, dpl, b before return
- ; Peephole 154 removed misc moves via dph, dpl, b before return
+ ; Peephole 150.e removed misc moves via dph, dpl, b before return
- ; Peephole 155 removed misc moves via dph, dpl, b before return
+ ; Peephole 150.f removed misc moves via dph, dpl, b before return
- ; Peephole 156 removed misc moves via dph, dpl, b, a before return
+ ; Peephole 150.g removed misc moves via dph, dpl, b, a before return
- ; Peephole 157 removed misc moves via dph, dpl, b, a before return
+ ; Peephole 150.h removed misc moves via dph, dpl, b, a before return
- ; Peephole 158 removed misc moves via dph, dpl, b, a before return
+ ; Peephole 150.i removed misc moves via dph, dpl, b, a before return
- ; Peephole 160 removed sjmp by inverse jump logic
+ ; Peephole 160.a removed sjmp by inverse jump logic
jc %2
%1:
} labelRefCountChange(%1 -1)
jc %2
%1:
} labelRefCountChange(%1 -1)
- ; Peephole 161 removed sjmp by inverse jump logic
+ ; Peephole 160.b removed sjmp by inverse jump logic
jnc %2
%1:
} labelRefCountChange(%1 -1)
jnc %2
%1:
} labelRefCountChange(%1 -1)
- ; Peephole 162 removed sjmp by inverse jump logic
+ ; Peephole 160.c removed sjmp by inverse jump logic
jz %2
%1:
} labelRefCountChange(%1 -1)
jz %2
%1:
} labelRefCountChange(%1 -1)
- ; Peephole 163 removed sjmp by inverse jump logic
+ ; Peephole 160.d removed sjmp by inverse jump logic
jnz %2
%1:
} labelRefCountChange(%1 -1)
jnz %2
%1:
} labelRefCountChange(%1 -1)
- ; Peephole 164 removed sjmp by inverse jump logic
+ ; Peephole 160.e removed sjmp by inverse jump logic
jb %3,%2
%1:
} labelRefCountChange(%1 -1)
jb %3,%2
%1:
} labelRefCountChange(%1 -1)
- ; Peephole 165 removed sjmp by inverse jump logic
+ ; Peephole 160.f removed sjmp by inverse jump logic
jnb %3,%2
%1:
} labelRefCountChange(%1 -1)
jnb %3,%2
%1:
} labelRefCountChange(%1 -1)
subb a,#0x01
mov %2,a
} by {
subb a,#0x01
mov %2,a
} by {
- ; Peephole 174 optimized decrement (acc not set to %2, flags undefined)
+ ; Peephole 174.a optimized decrement (acc not set to %2, flags undefined)
add a,#0x01
mov %2,a
} by {
add a,#0x01
mov %2,a
} by {
- ; Peephole 175 optimized increment (acc not set to %2, flags undefined)
+ ; Peephole 174.b optimized increment (acc not set to %2, flags undefined)
inc %1
mov @r%2,%1
} by {
inc %1
mov @r%2,%1
} by {
- ; Peephole 176 optimized increment, removed redundant mov
+ ; Peephole 174.c optimized increment, removed redundant mov
inc @r%2
mov %1,@r%2
} if notVolatile
inc @r%2
mov %1,@r%2
} if notVolatile
- ; Peephole 198 optimized misc jump sequence
+ ; Peephole 198.a optimized misc jump sequence
cjne %1,%2,%8
cjne %5,%6,%8
sjmp %7
cjne %1,%2,%8
cjne %5,%6,%8
sjmp %7
- ; Peephole 199 optimized misc jump sequence
+ ; Peephole 198.b optimized misc jump sequence
cjne %1,%2,%5
sjmp %4
%3:
cjne %1,%2,%5
sjmp %4
%3:
- ; Peephole 200 removed redundant sjmp
+ ; Peephole 200.a removed redundant sjmp
%1:
} labelRefCountChange(%1 -1)
%1:
} labelRefCountChange(%1 -1)
- ; Peephole 201 removed redundant sjmp
+ ; Peephole 200.b removed redundant sjmp
%2:
%1:
} labelRefCountChange(%1 -1)
%2:
%1:
} labelRefCountChange(%1 -1)
dec r%1
mov @r%1,a
} by {
dec r%1
mov @r%1,a
} by {
- ; Peephole 216 simplified clear (2bytes)
+ ; Peephole 216.a simplified clear (2bytes)
mov r%1,%2
clr a
mov @r%1,a
mov r%1,%2
clr a
mov @r%1,a
dec r%1
mov @r%1,a
} by {
dec r%1
mov @r%1,a
} by {
- ; Peephole 217 simplified clear (3bytes)
+ ; Peephole 216.b simplified clear (3bytes)
mov r%1,%2
clr a
mov @r%1,a
mov r%1,%2
clr a
mov @r%1,a
dec r%1
mov @r%1,a
} by {
dec r%1
mov @r%1,a
} by {
- ; Peephole 218 simplified clear (4bytes)
+ ; Peephole 216.c simplified clear (4bytes)
mov r%1,%2
clr a
mov @r%1,a
mov r%1,%2
clr a
mov @r%1,a
clr a
movx @dptr,a
} by {
clr a
movx @dptr,a
} by {
- ; Peephole 219 removed redundant clear
+ ; Peephole 219.a removed redundant clear
clr a
movx @dptr,a
mov dptr,%1
clr a
movx @dptr,a
mov dptr,%1
clr a
movx @dptr,a
} by {
clr a
movx @dptr,a
} by {
- ; Peephole 219.a removed redundant clear
+ ; Peephole 219.b removed redundant clear
clr a
movx @dptr,a
mov dptr,%1
clr a
movx @dptr,a
mov dptr,%1
mov dpl,%1
mov dph,%2
} by {
mov dpl,%1
mov dph,%2
} by {
- ; Peephole 223 removed redundant dph/dpl moves
+ ; Peephole 223.a removed redundant dph/dpl moves
mov %1,dpl
mov %2,dph
} if notVolatile %1 %2
mov %1,dpl
mov %2,dph
} if notVolatile %1 %2
mov dpl,%1
mov dph,(%1 + 1)
} by {
mov dpl,%1
mov dph,(%1 + 1)
} by {
- ; Peephole 224 removed redundant dph/dpl moves
+ ; Peephole 223.b removed redundant dph/dpl moves
mov %1,dpl
mov (%1 + 1),dph
} if notVolatile %1
mov %1,dpl
mov (%1 + 1),dph
} if notVolatile %1
lcall __decdptr
movx @dptr,a
} by {
lcall __decdptr
movx @dptr,a
} by {
- ; Peephole 227 replaced inefficient 32 bit clear
+ ; Peephole 227.a replaced inefficient 32 bit clear
mov dptr,#%1
clr a
movx @dptr,a
mov dptr,#%1
clr a
movx @dptr,a
mov a,#%2
movx @dptr,a
} by {
mov a,#%2
movx @dptr,a
} by {
- ; Peephole 228 replaced inefficient 32 constant
+ ; Peephole 227.b replaced inefficient 32 constant
mov dptr,#%1
mov a,#%2
movx @dptr,a
mov dptr,#%1
mov a,#%2
movx @dptr,a
lcall __decdptr
movx @dptr,a
} by {
lcall __decdptr
movx @dptr,a
} by {
- ; Peephole 229 replaced inefficient 16 bit clear
+ ; Peephole 227.c replaced inefficient 16 bit clear
mov dptr,#%1
clr a
movx @dptr,a
mov dptr,#%1
clr a
movx @dptr,a
mov a,#%2
movx @dptr,a
} by {
mov a,#%2
movx @dptr,a
} by {
- ; Peephole 230 replaced inefficient 16 bit constant
+ ; Peephole 227.d replaced inefficient 16 bit constant
mov dptr,#%1
mov a,#%2
movx @dptr,a
mov dptr,#%1
mov a,#%2
movx @dptr,a
-// this last peephole often removes the last mov from 227-230
+// this last peephole often removes the last mov from 227.a - 227.d
replace {
mov dptr,#%1
mov dptr,#%2
} by {
replace {
mov dptr,#%1
mov dptr,#%2
} by {
- ; Peephole 231 removed redundant mov to dptr
+ ; Peephole 227.e removed redundant mov to dptr
- ; Peephole 234 loading dpl directly from a(ccumulator), r%1 not set
+ ; Peephole 234.a loading dpl directly from a(ccumulator), r%1 not set
- ; Peephole 235 loading dph directly from a(ccumulator), r%1 not set
+ ; Peephole 234.b loading dph directly from a(ccumulator), r%1 not set
mov dpl,r%2
mov dph,a
%3:
mov dpl,r%2
mov dph,a
%3: