no need for len(j) > 1 test, half of 1 is zero which stops swap anyway
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Mon, 19 Jul 2021 13:46:25 +0000 (14:46 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Mon, 19 Jul 2021 13:46:25 +0000 (14:46 +0100)
src/openpower/decoder/isa/fastdctlee.py

index 15e3923ccd9bb484e7b6dbd48d2f7b8f54329b30..d6647ac1172ed5f1ed34b50693b75842ce18dd55 100644 (file)
@@ -173,13 +173,12 @@ def transform2(vec):
             # actually: swap the *indices*... not the actual data.
             # incredibly... bizarrely... this works *without* having
             # to do anything else.
-            if len(j) > 1:
-                hz2 = halfsize // 2
-                for ci, (jl, jh) in enumerate(zip(j[:hz2], jr[:hz2])):
-                    tmp = ri[jl+halfsize]
-                    ri[jl+halfsize] = ri[jh]
-                    ri[jh] = tmp
-                    print ("     swap", size, i, ri[jl+halfsize], ri[jh])
+            hz2 = halfsize // 2 # can be zero which stops reversing 1-item lists
+            for ci, (jl, jh) in enumerate(zip(j[:hz2], jr[:hz2])):
+                tmp = ri[jl+halfsize]
+                ri[jl+halfsize] = ri[jh]
+                ri[jh] = tmp
+                print ("     swap", size, i, ri[jl+halfsize], ri[jh])
         size //= 2
 
     print("post-swapped", ri)