Lines Matching defs:assert
14 def assert(name)
33 assert('Unique opcodes') { Panda.instructions.map(&:opcode).uniq? }
35 assert('Non-prefixed instruction opcodes and prefixes should fit one byte') do
39 assert('Non-prefixed instruction opcode indexes are sorted') do
43 assert('Prefix opcode indexes are sorted') do
47 assert('All instructions for a prefix should fit one byte') do
53 assert('Prefixed instruction should have some prefix specified') do
59 assert('Prefix should be defined') do
67 assert('All prefixes should have unique name') do
71 assert('There should be non-zero gap between non-prefixed and prefixes') do
75 assert('There should be non-zero gap between public and private prefixes') do
79 assert('All tags are unique between categories') do
83 assert('All tags are used') do
91 assert('All tags are defined') do
99 assert('Format operands are parseable') { Panda.instructions.each(&:operands) }
101 assert('Verification, exceptions and properties are not empty for every instruction group') do
107 assert('Mnemonic defines operand types') do
113 assert('Dtype should be none when bytecode doesn\'t write into accumulator or registers') do
121 assert('Instruction::float? should play well with operand types') do
127 assert('Conditionals should be jumps') do # At least currently
131 assert('Acc_none should not be specified along with other accumulator properties') do
137 assert('All calls write into accumulator') do
141 assert('Jumps differ from other control-flow') do # At least currently
147 assert('Conversions should correspond to source and destination type') do
157 assert('Operand type should be one of none, ref, u1, u2, i8, u8, i16, u16, i32, u32, b32, i64, u64, b64, f64, top, any') do
164 assert('Instruction should have not more than one destination') do
171 assert('Instruction should have not more than one ID operand') do
178 assert('Register encoding width should be the same in instruction') do
186 assert('Calls should have call property and x_call exception tag') do
194 assert('Virtual calls should have call_virt property') do