--with-cpu-opt=sparc32 and --with-cpu-opt=sparc64
diff --git a/auto/cc/sunc b/auto/cc/sunc
index f4a1c02..247d92a 100644
--- a/auto/cc/sunc
+++ b/auto/cc/sunc
@@ -35,9 +35,6 @@
     ;;
 
     sun4u | sun4v)
-        # "-xarch=v9" enables the "casa" assembler instruction
-        CPU_OPT="-xarch=v9"
-        CORE_LINK="$CORE_LINK -xarch=v9"
         NGX_AUX=" src/os/unix/ngx_sunpro_sparc64.il"
     ;;
 
@@ -81,6 +78,22 @@
         CPU_OPT="$CPU_OPT -xcache=64/64/2:1024/64/16"
     ;;
 
+    sparc32)
+        # build 32-bit UltraSparc binary
+        CPU_OPT="-m32"
+        CORE_LINK="$CORE_LINK -m32"
+        CC_AUX_FLAGS="$CC_AUX_FLAGS -m32"
+        NGX_CPU_CACHE_LINE=64
+    ;;
+
+    sparc64)
+        # build 64-bit UltraSparc binary
+        CPU_OPT="-m64"
+        CORE_LINK="$CORE_LINK -m64"
+        CC_AUX_FLAGS="$CC_AUX_FLAGS -m64"
+        NGX_CPU_CACHE_LINE=64
+    ;;
+
     amd64)
         # build 64-bit amd64 binary
         CPU_OPT="-xarch=amd64"