aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
-rw-r--r--linearize.c4
-rw-r--r--validation/optim/volatile-bitfield.c1
2 files changed, 2 insertions, 3 deletions
diff --git a/linearize.c b/linearize.c
index fc4c4271..c4f38456 100644
--- a/linearize.c
+++ b/linearize.c
@@ -991,7 +991,7 @@ static pseudo_t add_load(struct entrypoint *ep, struct access_data *ad)
insn->target = new;
insn->offset = ad->offset;
- insn->is_volatile = insn->type && (insn->type->ctype.modifiers & MOD_VOLATILE);
+ insn->is_volatile = ad->type && (ad->type->ctype.modifiers & MOD_VOLATILE);
use_pseudo(insn, ad->address, &insn->src);
add_one_insn(ep, insn);
return new;
@@ -1007,7 +1007,7 @@ static void add_store(struct entrypoint *ep, struct access_data *ad, pseudo_t va
store = alloc_typed_instruction(OP_STORE, ad->btype);
store->offset = ad->offset;
- store->is_volatile = store->type && (store->type->ctype.modifiers & MOD_VOLATILE);
+ store->is_volatile = ad->type && (ad->type->ctype.modifiers & MOD_VOLATILE);
use_pseudo(store, value, &store->target);
use_pseudo(store, ad->address, &store->src);
add_one_insn(ep, store);
diff --git a/validation/optim/volatile-bitfield.c b/validation/optim/volatile-bitfield.c
index c28efb09..99db4401 100644
--- a/validation/optim/volatile-bitfield.c
+++ b/validation/optim/volatile-bitfield.c
@@ -10,7 +10,6 @@ void foo(volatile struct s *p)
/*
* check-name: volatile-bitfield
* check-command: test-linearize -Wno-decl $file
- * check-known-to-fail
*
* check-output-ignore
* check-output-contains: load\\.