diff --git a/ghc/compiler/nativeGen/StixPrim.lhs b/ghc/compiler/nativeGen/StixPrim.lhs
index f32bb99037990cd3de85a5c5a60673041589511a..9d694b915cfa4210716beb7e183109e14c0766ea 100644
--- a/ghc/compiler/nativeGen/StixPrim.lhs
+++ b/ghc/compiler/nativeGen/StixPrim.lhs
@@ -200,6 +200,15 @@ primCode [lhs] (IndexOffForeignObjOp pk) [obj, ix]
     in
     returnUs (\xs -> assign : xs)
 
+primCode [] (WriteOffAddrOp pk) [obj, ix, v]
+  = let
+	obj' = amodeToStix obj
+    	ix' = amodeToStix ix
+    	v' = amodeToStix v
+    	assign = StAssign pk (StInd pk (StIndex pk obj' ix')) v'
+    in
+    returnUs (\xs -> assign : xs)
+
 primCode [] (WriteByteArrayOp pk) [obj, ix, v]
   = let
 	obj' = amodeToStix obj