fuzz_with_unicorn: Move instruction generator vector into GenRandomInst

Keeps scope localized and prevents potential static initialization issues.
This commit is contained in:
Lioncash 2018-02-04 14:33:34 -05:00 committed by MerryMage
parent 4491746eae
commit f96e83c486

View file

@ -31,7 +31,8 @@ static Vector RandomVector() {
return {RandInt<u64>(0, ~u64(0)), RandInt<u64>(0, ~u64(0))};
}
static std::vector<InstructionGenerator> instruction_generators = []{
static u32 GenRandomInst(u64 pc, bool is_last_inst) {
static const std::vector<InstructionGenerator> instruction_generators = []{
const std::vector<std::tuple<const char*, const char*>> list {
#define INST(fn, name, bitstring) {#fn, bitstring},
#include "frontend/A64/decoder/a64.inc"
@ -53,9 +54,8 @@ static std::vector<InstructionGenerator> instruction_generators = []{
InstructionGenerator::AddInvalidInstruction("00011110111iiiiiiii10000000ddddd");
return result;
}();
}();
static u32 GenRandomInst(u64 pc, bool is_last_inst) {
const A64::LocationDescriptor location{pc, {}};
restart: