diff --git a/juno_samples/cava/src/cava.jn b/juno_samples/cava/src/cava.jn index f95f1ebc89dfaa4a798f561899963b734c766b90..839e80e201b1eb3cf5c477a9df4cdf04fe0401c7 100644 --- a/juno_samples/cava/src/cava.jn +++ b/juno_samples/cava/src/cava.jn @@ -29,7 +29,7 @@ fn scale<row : usize, col : usize>(input : u8[CHAN, row, col]) -> f32[CHAN, row, for chan = 0 to CHAN { for r = 0 to row { for c = 0 to col { - res[chan, r, c] = input[chan, r, c] as f32 * (1.0 / 255.0); + res[chan, r, c] = input[chan, r, c] as f32 / 255.0; } } } diff --git a/juno_samples/cava/src/cpu.sch b/juno_samples/cava/src/cpu.sch index 246d10d496faa56f61628d970adffb9d355e2ebd..5c5428ae2947d10bca292832e1f41f47cfad6508 100644 --- a/juno_samples/cava/src/cpu.sch +++ b/juno_samples/cava/src/cpu.sch @@ -27,92 +27,92 @@ inline(fuse5); ip-sroa(*); sroa(*); -simpl!(*); +//simpl!(*); no-memset(fuse1@res1); no-memset(fuse1@res2); -fixpoint { - forkify(fuse1); - fork-guard-elim(fuse1); - fork-coalesce(fuse1); -} -simpl!(fuse1); -array-slf(fuse1); -simpl!(fuse1); -unforkify(fuse1); +//fixpoint { +// forkify(fuse1); +// fork-guard-elim(fuse1); +// fork-coalesce(fuse1); +//} +//simpl!(fuse1); +//array-slf(fuse1); +//simpl!(fuse1); +//unforkify(fuse1); inline(fuse2); no-memset(fuse2@res); no-memset(fuse2@filter); no-memset(fuse2@tmp); -fixpoint { - forkify(fuse2); - fork-guard-elim(fuse2); - fork-coalesce(fuse2); -} -simpl!(fuse2); -predication(fuse2); -simpl!(fuse2); - -let median = outline(fuse2@median); -fork-unroll(median@medianOuter); -simpl!(median); -fixpoint { - forkify(median); - fork-guard-elim(median); -} -simpl!(median); -fixpoint { - fork-unroll(median); -} -ccp(median); -array-to-product(median); -sroa(median); -predication(median); -simpl!(median); - -inline(fuse2); -ip-sroa(*); -sroa(*); -array-slf(fuse2); -write-predication(fuse2); -simpl!(fuse2); -fork-split(fuse2); -unforkify(fuse2); +//fixpoint { +// forkify(fuse2); +// fork-guard-elim(fuse2); +// fork-coalesce(fuse2); +//} +//simpl!(fuse2); +//predication(fuse2); +//simpl!(fuse2); +// +//let median = outline(fuse2@median); +//fork-unroll(median@medianOuter); +//simpl!(median); +//fixpoint { +// forkify(median); +// fork-guard-elim(median); +//} +//simpl!(median); +//fixpoint { +// fork-unroll(median); +//} +//ccp(median); +//array-to-product(median); +//sroa(median); +//predication(median); +//simpl!(median); +// +//inline(fuse2); +//ip-sroa(*); +//sroa(*); +//array-slf(fuse2); +//write-predication(fuse2); +//simpl!(fuse2); +//fork-split(fuse2); +//unforkify(fuse2); no-memset(fuse3@res); -fixpoint { - forkify(fuse3); - fork-guard-elim(fuse3); - fork-coalesce(fuse3); -} -simpl!(fuse3); -fork-split(fuse3); -unforkify(fuse3); +//fixpoint { +// forkify(fuse3); +// fork-guard-elim(fuse3); +// fork-coalesce(fuse3); +//} +//simpl!(fuse3); +//fork-split(fuse3); +//unforkify(fuse3); no-memset(fuse4@res); no-memset(fuse4@l2); -fixpoint { - forkify(fuse4); - fork-guard-elim(fuse4); - fork-coalesce(fuse4); -} -simpl!(fuse4); -fork-split(fuse4); -unforkify(fuse4); +//fixpoint { +// forkify(fuse4); +// fork-guard-elim(fuse4); +// fork-coalesce(fuse4); +//} +//simpl!(fuse4); +//fork-split(fuse4); +//unforkify(fuse4); no-memset(fuse5@res1); no-memset(fuse5@res2); -fixpoint { - forkify(fuse5); - fork-guard-elim(fuse5); - fork-coalesce(fuse5); -} -simpl!(fuse5); -array-slf(fuse5); -simpl!(fuse5); -fork-split(fuse5); -unforkify(fuse5); +//fixpoint { +// forkify(fuse5); +// fork-guard-elim(fuse5); +// fork-coalesce(fuse5); +//} +//simpl!(fuse5); +//array-slf(fuse5); +//simpl!(fuse5); +//fork-split(fuse5); +//unforkify(fuse5); simpl!(*); delete-uncalled(*);