summaryrefslogtreecommitdiff
path: root/compiler/nativeGen/NOTES
diff options
context:
space:
mode:
authorSylvain Henry <sylvain@haskus.fr>2020-02-22 15:05:20 +0100
committerMarge Bot <ben+marge-bot@smart-cactus.org>2020-02-24 20:55:25 -0500
commit1b1067d14b656bbbfa7c47f156ec2700c9751549 (patch)
tree32346e3c4c3f89117190b36364144d85dc260e05 /compiler/nativeGen/NOTES
parent354e2787be08fb6d973de1a39e58080ff8e107f8 (diff)
downloadhaskell-1b1067d14b656bbbfa7c47f156ec2700c9751549.tar.gz
Modules: CmmToAsm (#13009)
Diffstat (limited to 'compiler/nativeGen/NOTES')
-rw-r--r--compiler/nativeGen/NOTES41
1 files changed, 0 insertions, 41 deletions
diff --git a/compiler/nativeGen/NOTES b/compiler/nativeGen/NOTES
deleted file mode 100644
index 9068a7fc2c..0000000000
--- a/compiler/nativeGen/NOTES
+++ /dev/null
@@ -1,41 +0,0 @@
-TODO in new NCG
-~~~~~~~~~~~~~~~
-
-- Are we being careful enough about narrowing those out-of-range CmmInts?
-
-- Register allocator:
- - fixup code
- - keep track of free stack slots
-
- Optimisations:
-
- - picking the assignment on entry to a block: better to defer this
- until we know all the assignments. In a loop, we should pick
- the assignment from the looping jump (fixpointing?), so that any
- fixup code ends up *outside* the loop. Otherwise, we should
- pick the assignment that results in the least fixup code.
-
-- splitting?
-
--- -----------------------------------------------------------------------------
--- x86 ToDos
-
-- x86 genCCall needs to tack on the @size for stdcalls (might not be in the
- foreignlabel).
-
-- x86: should really clean up that IMUL64 stuff, and tell the code gen about
- Intel imul instructions.
-
-- x86: we're not careful enough about making sure that we only use
- byte-addressable registers in byte instructions. Should we do it this
- way, or stick to using 32-bit registers everywhere?
-
-- Use SSE for floating point, optionally.
-
-------------------------------------------------------------------------------
--- Further optimisations:
-
-- We might be able to extend the scope of the inlining phase so it can
- skip over more statements that don't affect the value of the inlined
- expr.
-