From 78846b69ae617fbb242643de021f8b4c7f314afc Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Mon, 20 Aug 2007 02:14:33 +0000 Subject: [PATCH] add a note llvm-svn: 41178 --- llvm/lib/Target/X86/README.txt | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/llvm/lib/Target/X86/README.txt b/llvm/lib/Target/X86/README.txt index 5c75fc96b42c..467e02523992 100644 --- a/llvm/lib/Target/X86/README.txt +++ b/llvm/lib/Target/X86/README.txt @@ -1116,3 +1116,21 @@ _test1: addps %xmm1, %xmm0 ret +//===---------------------------------------------------------------------===// + +Leaf functions that require one 4-byte spill slot have a prolog like this: + +_foo: + pushl %esi + subl $4, %esp +... +and an epilog like this: + addl $4, %esp + popl %esi + ret + +It would be smaller, and potentially faster, to push eax on entry and to +pop into a dummy register instead of using addl/subl of esp. Just don't pop +into any return registers :) + +//===---------------------------------------------------------------------===//