Lines Matching full:name
52 name = operand_parts[0]
56 name, type = operand_parts
59 name, srcdst, type = operand_parts
63 [name, srcdst, type]
79 def frozen?(name) argument
80 defined?(@frozen) && @frozen[name]
83 def method_added(name) argument
84 raise "Method '#{name}' has been already defined" if frozen?(name)
118 name = dig(:prefix)
119 Panda.prefixes_hash[name] if name
122 # Suggested handler name
147 # Format instance for raw-data format name
162 name, srcdst, type = Util.parse_operand_signature(operand)
163 if name.end_with?('id')
170 name, srcdst, type = Util.parse_operand_signature(operand)
171 key = name
172 if name.end_with?('id')
179 Operand.new(name, srcdst, type, ops_encoding[key].width, ops_encoding[key].offset)
190 ops << Operand.new(op.name, 'out', op.type, op.width, op.offset)
191 ops << Operand.new(op.name, 'in', op.type, op.width, op.offset)
272 # Suggested handler name
274 name.upcase
288 attr_reader :name accessor in Format
290 def initialize(name) argument
291 @name = name
295 …name.sub('op_', '').gsub(/id[0-9]?/, 'id').gsub(/imm[0-9]?/, 'imm').gsub(/v[0-9]?/, 'v').gsub(/_([…
299 name.start_with?('pref_')
304 raise "Incorrect format name #{name}" if bits % 8 != 0
311 return {} if name.end_with?('_none')
316 name.sub('pref_', '').sub('op_', '').split('_').each_slice(2).map do |name, width|
318 op.name = name
322 encoding[name] = op
334 attr_reader :name, :type, :offset, :width accessor in Operand
336 def initialize(name, srcdst, type, width = 0, offset = 0) argument
337 @name = name.to_s.gsub(/[0-9]/, '').to_sym
338 unless %i[v acc imm method_id type_id field_id string_id literalarray_id].include?(@name)
339 raise "Incorrect operand #{name}"
352 @name == :v
356 @name == :acc
360 @name == :imm
364 %i[method_id type_id field_id string_id literalarray_id].include?(@name)
368 %i[method_id].include?(@name)
372 %i[string_id].include?(@name)
376 %i[literalarray_id].include?(@name)
409 ….instructions.select(&:prefix).stable_sort_by { |i| Panda.prefixes_hash[i.prefix.name].opcode_idx }
423 # Maximum value for secondary dispatch index for given prefix name
425 prefix_data[prefix.name][:number_of_insns] - 1
428 # Offset in dispatch table for handlers of instructions for given prefix name
430 256 + prefix_data[prefix.name][:delta]
438 …fix_instructions_num = Panda.instructions.select { |i| i.prefix && (i.prefix.name == p.name) }.size
439 obj[p.name] = { delta: cur_delta, number_of_insns: prefix_instructions_num }
516 hash = prefixes.map { |p| [p.name, p] }.to_h