micro-opt: replace stmGetEnclosingTRec() with a field access
[ghc-hetmet.git] / rules / c-suffix-rules.mk
index 5134b6a..cc7c219 100644 (file)
@@ -20,55 +20,40 @@ define c-suffix-rules
 # UseGhcForCc is only relevant when not booting from HC files.
 ifeq "$4 $$(BootingFromHc)" "YES NO"
 
-$1/$2/build/%.$$($3_osuf) : $1/%.c $$(MKDIRHIER) $$($1_$2_HC_DEP)
-       $$(RM) $$@
-       $$(MKDIRHIER) $$(dir $$@)
-       $$($1_$2_HC) $$($1_$2_$3_GHC_CC_OPTS) -c $$< -o $$@
+$1/$2/build/%.$$($3_osuf) : $1/%.c $$($1_$2_HC_DEP) | $$$$(dir $$$$@)/.
+       "$$($1_$2_HC)" $$($1_$2_$3_GHC_CC_OPTS) -c $$< -o $$@
 
 $1/$2/build/%.$$($3_osuf) : $1/$2/build/%.c $$($1_$2_HC_DEP)
-       $$(RM) $$@
-       $$($1_$2_HC) $$($1_$2_$3_GHC_CC_OPTS) -c $$< -o $$@
+       "$$($1_$2_HC)" $$($1_$2_$3_GHC_CC_OPTS) -c $$< -o $$@
 
 $1/$2/build/%.$$($3_osuf) : $1/$2/build/%.$$($3_way_)s $$($1_$2_HC_DEP)
-       $$(RM) $$@
-       $$($1_$2_HC) $$($1_$2_$3_GHC_CC_OPTS) -c $$< -o $$@
+       "$$($1_$2_HC)" $$($1_$2_$3_GHC_CC_OPTS) -c $$< -o $$@
 
-$1/$2/build/%.$$($3_osuf) : $1/%.S $$(MKDIRHIER) $$($1_$2_HC_DEP)
-       $$(RM) $$@
-       $$(MKDIRHIER) $$(dir $$@)
-       $$($1_$2_HC) $$($1_$2_$3_GHC_CC_OPTS) -c $$< -o $$@
+$1/$2/build/%.$$($3_osuf) : $1/%.S $$($1_$2_HC_DEP) | $$$$(dir $$$$@)/.
+       "$$($1_$2_HC)" $$($1_$2_$3_GHC_CC_OPTS) -c $$< -o $$@
 
 $1/$2/build/%.$$($3_way_)s : $1/$2/build/%.c $$($1_$2_HC_DEP)
-       $$(RM) $$@
-       $$($1_$2_HC) $$($1_$2_$3_GHC_CC_OPTS) -S $$< -o $$@
+       "$$($1_$2_HC)" $$($1_$2_$3_GHC_CC_OPTS) -S $$< -o $$@
 
 $1/$2/build/%.$$($3_way_)s : $1/%.c $$($1_$2_HC_DEP)
-       $$(RM) $$@
-       $$($1_$2_HC) $$($1_$2_$3_GHC_CC_OPTS) -S $$< -o $$@
+       "$$($1_$2_HC)" $$($1_$2_$3_GHC_CC_OPTS) -S $$< -o $$@
 
 else
 
-$1/$2/build/%.$$($3_osuf) : $1/%.c $$(MKDIRHIER)
-       $$(RM) $$@
-       $$(MKDIRHIER) $$(dir $$@)
-       $$(CC) $$($1_$2_$3_ALL_CC_OPTS) -c $$< -o $$@
+$1/$2/build/%.$$($3_osuf) : $1/%.c | $$$$(dir $$$$@)/.
+       "$$(CC)" $$($1_$2_$3_ALL_CC_OPTS) -c $$< -o $$@
 
 $1/$2/build/%.$$($3_osuf) : $1/$2/build/%.c
-       $$(RM) $$@
-       $$(CC) $$($1_$2_$3_ALL_CC_OPTS) -c $$< -o $$@
+       "$$(CC)" $$($1_$2_$3_ALL_CC_OPTS) -c $$< -o $$@
 
 $1/$2/build/%.$$($3_osuf) : $1/$2/build/%.$$($3_way_)s
-       $$(RM) $$@
-       $$(AS) $$($1_$2_$3_ALL_AS_OPTS) -o $$@ $$<
+       "$$(AS)" $$($1_$2_$3_ALL_AS_OPTS) -o $$@ $$<
 
-$1/$2/build/%.$$($3_osuf) : $1/%.S $$(MKDIRHIER)
-       $$(RM) $$@
-       $$(MKDIRHIER) $$(dir $$@)
-       $$(CC) $$($1_$2_$3_ALL_CC_OPTS) -c $$< -o $$@
+$1/$2/build/%.$$($3_osuf) : $1/%.S | $$$$(dir $$$$@)/.
+       "$$(CC)" $$($1_$2_$3_ALL_CC_OPTS) -c $$< -o $$@
 
 $1/$2/build/%.$$($3_way_)s : $1/$2/build/%.c
-       $$(RM) $$@
-       $$(CC) $$($1_$2_$3_ALL_CC_OPTS) -S $$< -o $$@
+       "$$(CC)" $$($1_$2_$3_ALL_CC_OPTS) -S $$< -o $$@
 
 endif