dmd.backend.oper

Compiler implementation of the D programming language.

Authors

Walter Bright

Source: backend/oper.d

  • Declaration

    nothrow @nogc @safe OPER rel_not(OPER op);

    Determine things about relational operators.

  • Declaration

    nothrow @nogc @safe int convidx(OPER op);

    Conversion operators. Convert from conversion operator to conversion index parallel array invconvtab[] in cgelem.c

    Parameters

    OPER op

    conversion operator

  • Declaration

    immutable ubyte[OPMAX] optab1;

    Determine properties of an elem. EBIN binary node? EUNA unary node? EOP operator node (unary or binary)? ERTOL right to left evaluation (left to right is default) Eunambig unambiguous definition elem?

  • Declaration

    immutable ubyte[OPMAX] optab2;

    Determine properties of an elem. EBIN binary node? EUNA unary node? EOP operator node (unary or binary)? ERTOL right to left evaluation (left to right is default) Eunambig unambiguous definition elem?

  • Declaration

    immutable ubyte[OPMAX] optab3;

    Determine properties of an elem. EBIN binary node? EUNA unary node? EOP operator node (unary or binary)? ERTOL right to left evaluation (left to right is default) Eunambig unambiguous definition elem?

  • Declaration

    immutable ubyte[RELMAX] _rel_exception;

    Determine properties of an elem. EBIN binary node? EUNA unary node? EOP operator node (unary or binary)? ERTOL right to left evaluation (left to right is default) Eunambig unambiguous definition elem?

  • Declaration

    immutable ubyte[RELMAX] _rel_unord;

    Determine properties of an elem. EBIN binary node? EUNA unary node? EOP operator node (unary or binary)? ERTOL right to left evaluation (left to right is default) Eunambig unambiguous definition elem?

  • Declaration

    immutable ubyte[RELMAX] _rel_not;

    Logical negation

    Discussion

    Determine properties of an elem. EBIN binary node? EUNA unary node? EOP operator node (unary or binary)? ERTOL right to left evaluation (left to right is default) Eunambig unambiguous definition elem?

  • Declaration

    immutable ubyte[RELMAX] _rel_swap;

    Operand swap

    Discussion

    Determine properties of an elem. EBIN binary node? EUNA unary node? EOP operator node (unary or binary)? ERTOL right to left evaluation (left to right is default) Eunambig unambiguous definition elem?

  • Declaration

    immutable ubyte[RELMAX] _rel_integral;

    If operands are integral types

    Discussion

    Determine properties of an elem. EBIN binary node? EUNA unary node? EOP operator node (unary or binary)? ERTOL right to left evaluation (left to right is default) Eunambig unambiguous definition elem?

  • Declaration

    immutable ubyte[OPMAX] opcost;

    Determine the cost of evaluating an operator.

    Discussion

    Used for reordering elem trees to minimize register usage.

    Determine properties of an elem. EBIN binary node? EUNA unary node? EOP operator node (unary or binary)? ERTOL right to left evaluation (left to right is default) Eunambig unambiguous definition elem?

  • Declaration

    const(char)*[OPMAX] debtab;

    Determine properties of an elem. EBIN binary node? EUNA unary node? EOP operator node (unary or binary)? ERTOL right to left evaluation (left to right is default) Eunambig unambiguous definition elem?