Open nushio3 opened 13 years ago
These kind of repeated terms may be eliminated anyway by common subexpression eliminator, but is ugly, so let us unify them manually.
const int a5_0_0 = a1[((((i) % size0()) + 1 + size0())%size0()) + size0() * (((((i / size0()) % size1()) + 1 + size1())%size1()))]; const int a7_0_0 = a1[((((i) % size0()) + 0 + size0())%size0()) + size0() * (((((i / size0()) % size1()) + 1 + size1())%size1()))]; const int a9_0_0 = a1[((((i) % size0()) + -1 + size0())%size0()) + size0() * (((((i / size0()) % size1()) + 1 + size1())%size1()))]; const int a11_0_0 = a1[((((i) % size0()) + 1 + size0())%size0()) + size0() * (((((i / size0()) % size1()) + 0 + size1())%size1()))]; const int a13_0_0 = a1[((((i) % size0()) + -1 + size0())%size0()) + size0() * (((((i / size0()) % size1()) + 0 + size1())%size1()))]; const int a15_0_0 = a1[((((i) % size0()) + 1 + size0())%size0()) + size0() * (((((i / size0()) % size1()) + -1 + size1())%size1()))]; const int a17_0_0 = a1[((((i) % size0()) + 0 + size0())%size0()) + size0() * (((((i / size0()) % size1()) + -1 + size1())%size1()))]; const int a19_0_0 = a1[((((i) % size0()) + -1 + size0())%size0()) + size0() * (((((i / size0()) % size1()) + -1 + size1())%size1()))];
These kind of repeated terms may be eliminated anyway by common subexpression eliminator, but is ugly, so let us unify them manually.