aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@ppc970.osdl.org>2004-11-29 13:52:14 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-04-07 21:05:16 -0700
commit19903f1a69a4ebd0e6de92dc926b309e5ed87b3a (patch)
tree2f54baf7e6451adc9be2d35fca0cc0e1753df191 /linearize.h
parentBe more forgiving about missing types in linearization. (diff)
downloadsparse-19903f1a69a4ebd0e6de92dc926b309e5ed87b3a.tar.gz
sparse-19903f1a69a4ebd0e6de92dc926b309e5ed87b3a.tar.bz2
sparse-19903f1a69a4ebd0e6de92dc926b309e5ed87b3a.zip
Simplify trivial casts (and handle pointers specially).
This does trivial simplification of casting to the same typesize. HOWEVER. We split casts up into whether they cast to a dereferencable pointer type or not, and we don't simplify pointer casts. This should mean that if we ever want to do type-based alias analysis, we can still avoid casted accesses. (If we do type-based alias analysis, we'll also need to make a union access do a cast. Which we probably should do anyway).
Diffstat (limited to 'linearize.h')
-rw-r--r--linearize.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/linearize.h b/linearize.h
index 0db5a43..c1ba1b8 100644
--- a/linearize.h
+++ b/linearize.h
@@ -151,6 +151,7 @@ enum opcode {
OP_PHI,
OP_PHISOURCE,
OP_CAST,
+ OP_PTRCAST,
OP_CALL,
OP_VANEXT,
OP_VAARG,