GCC Middle and Back End API Reference
long_mul_row Struct Reference

Data Structures

struct  [struct].sig

Public Types

enum  long_mul_row_part { HIGH_PART , LOW_PART }

Data Fields

enum long_mul_row::long_mul_row_part part
tree_code outer
unsigned char count
struct  sig [LONG_MUL_MAX_SUMMANDS]
bool(*) extra_check (const vec< long_mul_summand > &, gimple *)

Detailed Description

One row of the long-multiply variant table.  COUNT is how many entries
of SIG carry the row's signature (2 to LONG_MUL_MAX_SUMMANDS); a row
with fewer summands leaves the remaining SIG entries zero-initialized.
Those zeros are not a terminator -- {LMK_MUL_HIHI, LMX_NONE} is itself a
valid signature -- so long_mul_signature_matches is bounded by COUNT,
never by a sentinel entry.   

Member Enumeration Documentation

◆ long_mul_row_part

Enumerator
HIGH_PART 
LOW_PART 

Field Documentation

◆ count

unsigned char long_mul_row::count

◆ extra_check

bool(*) long_mul_row::extra_check(const vec< long_mul_summand > &, gimple *)

◆ outer

tree_code long_mul_row::outer

◆ part

enum long_mul_row::long_mul_row_part long_mul_row::part

◆ sig


The documentation for this struct was generated from the following file: