reported that it is a nmigen bug that sign-extension is not being respected.
this is technically incorrect. because nmigen does not have this capability
it is *our* reponsibility to call the utility function nmutil.extend.exts
until such time as nmigen adds the capability to do what nmutil.extend.exts
putting the priority up a bit on this one as we're supposed to be under
a functionality code-freeze (bar optional icache/dcache)
nmigen totally can sign extend if the lhs of an assignment is a signed Signal, the workaround I previously added passes the tests:
nmigen's bug was using the lhs signedness instead of the rhs signedness to decide if it should sign or zero extend.