[llvm-commits] CVS: llvm/lib/Target/CBackend/CBackend.cpp
Anton Korobeynikov
asl at math.spbu.ru
Tue Apr 17 02:20:33 PDT 2007
Changes in directory llvm/lib/Target/CBackend:
CBackend.cpp updated: 1.337 -> 1.338
---
Log message:
Implemented correct stack probing on mingw/cygwin for dynamic alloca's.
Also, fixed static case in presence of eax livin. This fixes PR331: http://llvm.org/PR331
PS: Why don't we still have push/pop instructions? :)
---
Diffs of the changes: (+2 -2)
CBackend.cpp | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
Index: llvm/lib/Target/CBackend/CBackend.cpp
diff -u llvm/lib/Target/CBackend/CBackend.cpp:1.337 llvm/lib/Target/CBackend/CBackend.cpp:1.338
--- llvm/lib/Target/CBackend/CBackend.cpp:1.337 Fri Apr 13 17:52:03 2007
+++ llvm/lib/Target/CBackend/CBackend.cpp Tue Apr 17 04:20:00 2007
@@ -1281,8 +1281,8 @@
// Alloca is hard to get, and we don't want to include stdlib.h here.
Out << "/* get a declaration for alloca */\n"
<< "#if defined(__CYGWIN__) || defined(__MINGW32__)\n"
- << "extern void *_alloca(unsigned long);\n"
- << "#define alloca(x) _alloca(x)\n"
+ << "#define alloca(x) __builtin_alloca((x))\n"
+ << "#define _alloca(x) __builtin_alloca((x))\n"
<< "#elif defined(__APPLE__)\n"
<< "extern void *__builtin_alloca(unsigned long);\n"
<< "#define alloca(x) __builtin_alloca(x)\n"
More information about the llvm-commits
mailing list