diff options
| author | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2017-04-14 14:52:36 +0200 |
|---|---|---|
| committer | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2018-03-18 19:02:28 +0100 |
| commit | aa35b472057ea8eea0853e4e88f1568e1921b1eb (patch) | |
| tree | fb236826a027cc67621556a529fe025b2be8f30a /linearize.c | |
| parent | 16af95f8e0b235ee036ed30a2b0c48728a365060 (diff) | |
| download | sparse-dev-aa35b472057ea8eea0853e4e88f1568e1921b1eb.tar.gz | |
small code reorg of add_store()
No functional changes here. Just prepare for upcoming changes.
Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Diffstat (limited to 'linearize.c')
| -rw-r--r-- | linearize.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/linearize.c b/linearize.c index 80bc9e29..6b79864e 100644 --- a/linearize.c +++ b/linearize.c @@ -949,15 +949,16 @@ static pseudo_t add_load(struct entrypoint *ep, struct access_data *ad) static void add_store(struct entrypoint *ep, struct access_data *ad, pseudo_t value) { struct basic_block *bb = ep->active; + struct instruction *store; - if (bb_reachable(bb)) { - struct symbol *btype = bitfield_base_type(ad->type); - struct instruction *store = alloc_typed_instruction(OP_STORE, btype); - store->offset = ad->offset; - use_pseudo(store, value, &store->target); - use_pseudo(store, ad->address, &store->src); - add_one_insn(ep, store); - } + if (!bb) + return; + + store = alloc_typed_instruction(OP_STORE, bitfield_base_type(ad->type)); + store->offset = ad->offset; + use_pseudo(store, value, &store->target); + use_pseudo(store, ad->address, &store->src); + add_one_insn(ep, store); } static pseudo_t linearize_store_gen(struct entrypoint *ep, |
