All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] add some notes about pseudos being typeless
@ 2021-04-10 19:02 Luc Van Oostenryck
  0 siblings, 0 replies; only message in thread
From: Luc Van Oostenryck @ 2021-04-10 19:02 UTC (permalink / raw)
  To: linux-sparse; +Cc: Luc Van Oostenryck

Pseudos are untyped. It's usually OK because their type can nevertheless
be retrieved in a simple way. But it also complicates things and
worse in some cases the type is completely lost.

Tell a bit more about it in the TODO file.

Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
---
 Documentation/TODO.md | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/Documentation/TODO.md b/Documentation/TODO.md
index 3f00bb1104d1..bb25c714a212 100644
--- a/Documentation/TODO.md
+++ b/Documentation/TODO.md
@@ -56,6 +56,15 @@ Optimization
 
 IR
 --
+* pseudos are untyped, it's usually OK but often it complicates things:
+  - PSEUDO_REGs are defined by instructions and their type is normally
+    retrievable via this defining instruction but in some case they're not:
+    for example, pseudos defined by ASM output.
+  - PSEUDO_ARGs are considered as defined by OP_ENTRY and are used like
+    for liveness trackability but their type can't simply be retrieved via
+    this instruction like PSEUDO_REGs are (with ->def->type).
+  - PSEUDO_VALs are completely typeless.
+  Maybe a few bits should be used to store some kind of low-level type.
 * OP_SET should return a bool, always
 * add IR instructions for va_arg() & friends
 * add a possibility to import of file in "IR assembly"
-- 
2.31.1


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2021-04-10 19:02 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-10 19:02 [PATCH] add some notes about pseudos being typeless Luc Van Oostenryck

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.