             { c:uchar  [ STBX ] }
             { c:short  [ STHX ] }
             { c:ushort [ STHX ] }
+            { c:int    [ STWX ] }
+            { c:uint   [ STWX ] }
         } case
     ] [
         {

        } case
    ] ?if ;

: (%memory) ( val base displacement scale offset rep c-type -- base val displacement rep c-type )
    [ [ 0 assert= ] bi@ swapd ] 2dip ; inline

M: ppc %load-memory ( dst base displacement scale offset rep c-type -- )
    (%memory) [
        {

            { c:uchar  [ LBZX ] }
            { c:short  [ LHAX ] }
            { c:ushort [ LHZX ] }
            { c:int    [ LWZX ] }
            { c:uint   [ LWZX ] }
        } case
    ] [
        {
