aboutsummaryrefslogtreecommitdiffstats
path: root/backend/ValueAnalysis.v
diff options
context:
space:
mode:
authorDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-09-04 06:55:27 +0200
committerDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-09-04 06:55:27 +0200
commit686f0aaff7a4c37e13bfbe823b4dd2a879556f0a (patch)
tree568191eb269200a854e5779ecc26e784ad860117 /backend/ValueAnalysis.v
parent1d90fa730df7d1cb2ee726d3b41b9915ae4e4e2e (diff)
downloadcompcert-kvx-686f0aaff7a4c37e13bfbe823b4dd2a879556f0a.tar.gz
compcert-kvx-686f0aaff7a4c37e13bfbe823b4dd2a879556f0a.zip
begin CSE
Diffstat (limited to 'backend/ValueAnalysis.v')
-rw-r--r--backend/ValueAnalysis.v3
1 files changed, 3 insertions, 0 deletions
diff --git a/backend/ValueAnalysis.v b/backend/ValueAnalysis.v
index 21dd2c35..084a4548 100644
--- a/backend/ValueAnalysis.v
+++ b/backend/ValueAnalysis.v
@@ -142,6 +142,9 @@ Definition transfer (f: function) (rm: romem) (pc: node) (ae: aenv) (am: amem) :
| Some(Iload TRAP chunk addr args dst s) =>
let a := loadv chunk rm am (eval_static_addressing addr (aregs ae args)) in
VA.State (AE.set dst a ae) am
+
+ (* TODO: maybe a case analysis on the results of loadv? *)
+
| Some(Iload NOTRAP chunk addr args dst s) =>
VA.State (AE.set dst Vtop ae) am
| Some(Istore chunk addr args src s) =>