Allow inlining of head and friends.
authorMatthijs Kooijman <matthijs@stdin.nl>
Wed, 3 Mar 2010 13:05:19 +0000 (14:05 +0100)
committerMatthijs Kooijman <matthijs@stdin.nl>
Wed, 3 Mar 2010 13:05:19 +0000 (14:05 +0100)
cλash/CLasH/Normalize/NormalizeTools.hs

index c67b9e1511e10f3c30646c981f0bffd7ce930d54..187c6f9ba76946990b5f78473dcab71556c9af05 100644 (file)
@@ -199,7 +199,7 @@ isUserDefined bndr = str `notElem` compiler_names
     -- These are names of bindings usually generated by the compiler. For some
     -- reason these are not marked as system, probably because the name itself
     -- is not made up by the compiler, just this particular binding is.
-    compiler_names = ["fromInteger", "+", "*", "-", "!"]
+    compiler_names = ["fromInteger", "head", "tail", "init", "last", "+", "*", "-", "!"]
 
 -- Is the given binder normalizable? This means that its type signature can be
 -- represented in hardware, which should (?) guarantee that it can be made