1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2024-12-22 21:29:50 +00:00

Working on deprecating lo/hi operators. Closes #667

This commit is contained in:
jespergravgaard 2021-06-14 08:08:54 +02:00
parent 9965ad9ede
commit 6e32444f9f
2 changed files with 7 additions and 7 deletions

View File

@ -143,7 +143,7 @@ main::@52: scope:[main] from main::@51
to:main::@53 to:main::@53
main::@53: scope:[main] from main::@52 main::@53: scope:[main] from main::@52
[75] main::mul1#0 = mul16u::return#3 [75] main::mul1#0 = mul16u::return#3
[76] mul16u::a#3 = _word0_ main::mul1#0 [76] mul16u::a#3 = word0 main::mul1#0
[77] main::$61 = entries + main::$42 [77] main::$61 = entries + main::$42
[78] mul16u::b#2 = *main::$61 [78] mul16u::b#2 = *main::$61
[79] call mul16u [79] call mul16u

View File

@ -1741,7 +1741,7 @@ main::@56: scope:[main] from main::@55
mul16u::return#7 = phi( main::@55/mul16u::return#3 ) mul16u::return#7 = phi( main::@55/mul16u::return#3 )
main::$27 = mul16u::return#7 main::$27 = mul16u::return#7
main::mul1#0 = main::$27 main::mul1#0 = main::$27
main::$28 = _word0_ main::mul1#0 main::$28 = word0 main::mul1#0
main::$46 = main::j1#8 * SIZEOF_WORD main::$46 = main::j1#8 * SIZEOF_WORD
mul16u::a#3 = main::$28 mul16u::a#3 = main::$28
mul16u::b#2 = entries[main::$46] mul16u::b#2 = entries[main::$46]
@ -5155,7 +5155,7 @@ main::@52: scope:[main] from main::@51
to:main::@53 to:main::@53
main::@53: scope:[main] from main::@52 main::@53: scope:[main] from main::@52
[75] main::mul1#0 = mul16u::return#3 [75] main::mul1#0 = mul16u::return#3
[76] mul16u::a#3 = _word0_ main::mul1#0 [76] mul16u::a#3 = word0 main::mul1#0
[77] main::$61 = entries + main::$42 [77] main::$61 = entries + main::$42
[78] mul16u::b#2 = *main::$61 [78] mul16u::b#2 = *main::$61
[79] call mul16u [79] call mul16u
@ -6286,7 +6286,7 @@ Statement [71] main::$60 = entries + main::$43 [ main::i1#2 main::j1#2 main::k#1
Statement [72] mul16u::b#1 = *main::$60 [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::a#2 mul16u::b#1 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::a#2 mul16u::b#1 printf_buffer ] { { mul16u::b#1 = mul16u::b#3 } { mul16u::a#2 = mul16u::a#7 } { mul16u::return#3 = mul16u::res#2 } } ) always clobbers reg byte a reg byte y Statement [72] mul16u::b#1 = *main::$60 [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::a#2 mul16u::b#1 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::a#2 mul16u::b#1 printf_buffer ] { { mul16u::b#1 = mul16u::b#3 } { mul16u::a#2 = mul16u::a#7 } { mul16u::return#3 = mul16u::res#2 } } ) always clobbers reg byte a reg byte y
Statement [74] mul16u::return#3 = mul16u::res#2 [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::return#3 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::return#3 printf_buffer ] { { mul16u::b#1 = mul16u::b#3 } { mul16u::a#2 = mul16u::a#7 } { mul16u::return#3 = mul16u::res#2 } } ) always clobbers reg byte a Statement [74] mul16u::return#3 = mul16u::res#2 [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::return#3 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::return#3 printf_buffer ] { { mul16u::b#1 = mul16u::b#3 } { mul16u::a#2 = mul16u::a#7 } { mul16u::return#3 = mul16u::res#2 } } ) always clobbers reg byte a
Statement [75] main::mul1#0 = mul16u::return#3 [ main::i1#2 main::j1#2 main::k#10 main::$42 main::mul1#0 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 main::$42 main::mul1#0 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a Statement [75] main::mul1#0 = mul16u::return#3 [ main::i1#2 main::j1#2 main::k#10 main::$42 main::mul1#0 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 main::$42 main::mul1#0 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a
Statement [76] mul16u::a#3 = _word0_ main::mul1#0 [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::a#3 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::a#3 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a Statement [76] mul16u::a#3 = word0 main::mul1#0 [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::a#3 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::a#3 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a
Statement [77] main::$61 = entries + main::$42 [ main::i1#2 main::j1#2 main::k#10 mul16u::a#3 main::$61 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 mul16u::a#3 main::$61 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a Statement [77] main::$61 = entries + main::$42 [ main::i1#2 main::j1#2 main::k#10 mul16u::a#3 main::$61 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 mul16u::a#3 main::$61 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a
Statement [78] mul16u::b#2 = *main::$61 [ main::i1#2 main::j1#2 main::k#10 mul16u::a#3 mul16u::b#2 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 mul16u::a#3 mul16u::b#2 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a reg byte y Statement [78] mul16u::b#2 = *main::$61 [ main::i1#2 main::j1#2 main::k#10 mul16u::a#3 mul16u::b#2 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 mul16u::a#3 mul16u::b#2 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a reg byte y
Statement [80] mul16u::return#4 = mul16u::res#2 [ main::i1#2 main::j1#2 main::k#10 mul16u::return#4 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 mul16u::return#4 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a Statement [80] mul16u::return#4 = mul16u::res#2 [ main::i1#2 main::j1#2 main::k#10 mul16u::return#4 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 mul16u::return#4 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a
@ -6442,7 +6442,7 @@ Statement [71] main::$60 = entries + main::$43 [ main::i1#2 main::j1#2 main::k#1
Statement [72] mul16u::b#1 = *main::$60 [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::a#2 mul16u::b#1 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::a#2 mul16u::b#1 printf_buffer ] { { mul16u::b#1 = mul16u::b#3 } { mul16u::a#2 = mul16u::a#7 } { mul16u::return#3 = mul16u::res#2 } } ) always clobbers reg byte a reg byte y Statement [72] mul16u::b#1 = *main::$60 [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::a#2 mul16u::b#1 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::a#2 mul16u::b#1 printf_buffer ] { { mul16u::b#1 = mul16u::b#3 } { mul16u::a#2 = mul16u::a#7 } { mul16u::return#3 = mul16u::res#2 } } ) always clobbers reg byte a reg byte y
Statement [74] mul16u::return#3 = mul16u::res#2 [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::return#3 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::return#3 printf_buffer ] { { mul16u::b#1 = mul16u::b#3 } { mul16u::a#2 = mul16u::a#7 } { mul16u::return#3 = mul16u::res#2 } } ) always clobbers reg byte a Statement [74] mul16u::return#3 = mul16u::res#2 [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::return#3 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::return#3 printf_buffer ] { { mul16u::b#1 = mul16u::b#3 } { mul16u::a#2 = mul16u::a#7 } { mul16u::return#3 = mul16u::res#2 } } ) always clobbers reg byte a
Statement [75] main::mul1#0 = mul16u::return#3 [ main::i1#2 main::j1#2 main::k#10 main::$42 main::mul1#0 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 main::$42 main::mul1#0 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a Statement [75] main::mul1#0 = mul16u::return#3 [ main::i1#2 main::j1#2 main::k#10 main::$42 main::mul1#0 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 main::$42 main::mul1#0 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a
Statement [76] mul16u::a#3 = _word0_ main::mul1#0 [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::a#3 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::a#3 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a Statement [76] mul16u::a#3 = word0 main::mul1#0 [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::a#3 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 main::$42 mul16u::a#3 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a
Statement [77] main::$61 = entries + main::$42 [ main::i1#2 main::j1#2 main::k#10 mul16u::a#3 main::$61 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 mul16u::a#3 main::$61 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a Statement [77] main::$61 = entries + main::$42 [ main::i1#2 main::j1#2 main::k#10 mul16u::a#3 main::$61 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 mul16u::a#3 main::$61 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a
Statement [78] mul16u::b#2 = *main::$61 [ main::i1#2 main::j1#2 main::k#10 mul16u::a#3 mul16u::b#2 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 mul16u::a#3 mul16u::b#2 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a reg byte y Statement [78] mul16u::b#2 = *main::$61 [ main::i1#2 main::j1#2 main::k#10 mul16u::a#3 mul16u::b#2 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 mul16u::a#3 mul16u::b#2 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a reg byte y
Statement [80] mul16u::return#4 = mul16u::res#2 [ main::i1#2 main::j1#2 main::k#10 mul16u::return#4 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 mul16u::return#4 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a Statement [80] mul16u::return#4 = mul16u::res#2 [ main::i1#2 main::j1#2 main::k#10 mul16u::return#4 printf_buffer ] ( [ main::i1#2 main::j1#2 main::k#10 mul16u::return#4 printf_buffer ] { { mul16u::b#2 = mul16u::b#3 } { mul16u::a#3 = mul16u::a#7 } { mul16u::return#4 = mul16u::res#2 } } ) always clobbers reg byte a
@ -7431,7 +7431,7 @@ main: {
// main::@53 // main::@53
__b53: __b53:
// [75] main::mul1#0 = mul16u::return#3 // [75] main::mul1#0 = mul16u::return#3
// [76] mul16u::a#3 = _word0_ main::mul1#0 -- vwuz1=_word0_vduz2 // [76] mul16u::a#3 = word0 main::mul1#0 -- vwuz1=_word0_vduz2
lda.z mul1 lda.z mul1
sta.z mul16u.a sta.z mul16u.a
lda.z mul1+1 lda.z mul1+1
@ -10348,7 +10348,7 @@ main: {
// unsigned long mul1 = mul16u(entries[i],entries[k]) // unsigned long mul1 = mul16u(entries[i],entries[k])
// [75] main::mul1#0 = mul16u::return#3 // [75] main::mul1#0 = mul16u::return#3
// mul16u( WORD0(mul1) ,entries[j] ) // mul16u( WORD0(mul1) ,entries[j] )
// [76] mul16u::a#3 = _word0_ main::mul1#0 -- vwuz1=_word0_vduz2 // [76] mul16u::a#3 = word0 main::mul1#0 -- vwuz1=_word0_vduz2
lda.z mul1 lda.z mul1
sta.z mul16u.a sta.z mul16u.a
lda.z mul1+1 lda.z mul1+1