[Libre-soc-bugs] [Bug 980] Implement C-based Power ISA pseudocode compiler

bugzilla-daemon at libre-soc.org bugzilla-daemon at libre-soc.org
Sun Jan 14 20:00:00 GMT 2024


https://bugs.libre-soc.org/show_bug.cgi?id=980

--- Comment #108 from Dmitry Selyutin <ghostmansd at gmail.com> ---
...and here goes fields initialization (with the rest of the code cut):

void
oppc_tdi(struct oppc_value const *insn) {
    struct oppc_value TO;

    oppc_assign(
        &TO,
        oppc_transient(&(struct oppc_value){}, UINT64_C(0), 5)
    );
    oppc_subscript_assign(
        &TO,
        oppc_transient(&(struct oppc_value){}, 0, (uint8_t)OPPC_XLEN),
        oppc_subscript(
            insn,
            oppc_transient(&(struct oppc_value){}, 6, (uint8_t)OPPC_XLEN)
        )
    );
    oppc_subscript_assign(
        &TO,
        oppc_transient(&(struct oppc_value){}, 1, (uint8_t)OPPC_XLEN),
        oppc_subscript(
            insn,
            oppc_transient(&(struct oppc_value){}, 7, (uint8_t)OPPC_XLEN)
        )
    );
    oppc_subscript_assign(
        &TO,
        oppc_transient(&(struct oppc_value){}, 2, (uint8_t)OPPC_XLEN),
        oppc_subscript(
            insn,
            oppc_transient(&(struct oppc_value){}, 8, (uint8_t)OPPC_XLEN)
        )
    );
    oppc_subscript_assign(
        &TO,
        oppc_transient(&(struct oppc_value){}, 3, (uint8_t)OPPC_XLEN),
        oppc_subscript(
            insn,
            oppc_transient(&(struct oppc_value){}, 9, (uint8_t)OPPC_XLEN)
        )
    );
    oppc_subscript_assign(
        &TO,
        oppc_transient(&(struct oppc_value){}, 4, (uint8_t)OPPC_XLEN),
        oppc_subscript(
            insn,
            oppc_transient(&(struct oppc_value){}, 10, (uint8_t)OPPC_XLEN)
        )
    );
}

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the libre-soc-bugs mailing list