| 273 | |
| 274 | template <class Range> |
| 275 | static std::vector<instruction_ref> |
| 276 | insert_generic_instructions(module& m, |
| 277 | instruction_ref ins, |
| 278 | Range&& instructions, |
| 279 | std::unordered_map<instruction_ref, instruction_ref>& map_ins, |
| 280 | module::inserter insert) |
| 281 | { |
| 282 | if(insert == nullptr) |
| 283 | return insert_generic_instructions_impl( |
| 284 | m, ins, static_cast<Range&&>(instructions), map_ins, [](module& mm, auto&&... xs) { |
| 285 | return mm.insert_instruction(std::forward<decltype(xs)>(xs)...); |
| 286 | }); |
| 287 | return insert_generic_instructions_impl( |
| 288 | m, ins, static_cast<Range&&>(instructions), map_ins, std::move(insert)); |
| 289 | } |
| 290 | |
| 291 | instruction_ref module::add_instruction(const operation& op, std::vector<instruction_ref> args) |
| 292 | { |
no test coverage detected