# -----------------------------------------------------------------------------
# specific generated files
+/bindist-list
+/bindistprep/
+/bindisttest/HelloWorld
+/bindisttest/a/
+/bindisttest/install\ dir/
+/bindisttest/output
/ch01.html
/ch02.html
/compiler/cmm/CmmLex.hs
/docs/man/ghc.1
/docs/users_guide/ug-book.xml
/docs/users_guide/ug-ent.xml
+/docs/users_guide/users_guide.xml
+/docs/users_guide/users_guide/
+/docs/users_guide/what_glasgow_exts_does.gen.xml
/driver/ghci/ghc-pkg-inplace
/driver/ghci/ghci-inplace
/driver/mangler/dist/ghc-asm
/libraries/bin-package-db/ghc.mk
/libraries/bootstrapping.conf
/libraries/prologue.txt
+/libraries/doc-index*.html
+/libraries/frames.html
+/libraries/haddock-util.js
+/libraries/hslogo-16.png
+/libraries/index-frames.html
+/libraries/index.html
+/libraries/minus.gif
+/libraries/ocean.css
+/libraries/plus.gif
+/libraries/synopsis.png
/libraries/stamp/
/libraries/time/
/libraries/*/dist-boot/
/rts/sm/Evac_thr.c
/rts/sm/Scav_thr.c
/stage3.package.conf
+/testsuite_summary.txt
/testlog
/utils/*/dist*/
/utils/ext-core/Driver
| otherwise
#endif
= concatOL push_codes
+
+ -- Deallocate parameters after call for ccall;
+ -- but not for stdcall (callee does it)
+ --
+ -- We have to pop any stack padding we added
+ -- on Darwin even if we are doing stdcall, though (#5052)
+ pop_size | cconv /= StdCallConv = tot_arg_size
+ | otherwise
+#if darwin_TARGET_OS
+ = arg_pad_size
+#else
+ = 0
+#endif
+
call = callinsns `appOL`
toOL (
- -- Deallocate parameters after call for ccall;
- -- but not for stdcall (callee does it)
- (if cconv == StdCallConv || tot_arg_size==0 then [] else
- [ADD II32 (OpImm (ImmInt tot_arg_size)) (OpReg esp)])
+ (if pop_size==0 then [] else
+ [ADD II32 (OpImm (ImmInt pop_size)) (OpReg esp)])
++
[DELTA (delta + tot_arg_size)]
)