From rafael.espindola at gmail.com Thu Dec 28 06:51:55 2006
From: rafael.espindola at gmail.com (Rafael Espindola)
Date: Thu, 28 Dec 2006 06:51:55 -0600
Subject: [llvm-commits] CVS: llvm/lib/Target/ARM/ARMInstrInfo.td
Message-ID: <200612281251.kBSCpt1f028336@zion.cs.uiuc.edu>
Changes in directory llvm/lib/Target/ARM:
ARMInstrInfo.td updated: 1.80 -> 1.81
---
Log message:
remove duplicated line
bug noticed by Lauro
---
Diffs of the changes: (+0 -1)
ARMInstrInfo.td | 1 -
1 files changed, 1 deletion(-)
Index: llvm/lib/Target/ARM/ARMInstrInfo.td
diff -u llvm/lib/Target/ARM/ARMInstrInfo.td:1.80 llvm/lib/Target/ARM/ARMInstrInfo.td:1.81
--- llvm/lib/Target/ARM/ARMInstrInfo.td:1.80 Tue Dec 26 13:30:42 2006
+++ llvm/lib/Target/ARM/ARMInstrInfo.td Thu Dec 28 06:51:40 2006
@@ -344,7 +344,6 @@
// zextload bool -> zextload byte
def : Pat<(i32 (zextloadi1 IntRegs:$addr)), (LDRB IntRegs:$addr)>;
-def : Pat<(i32 (zextloadi1 IntRegs:$addr)), (LDRB IntRegs:$addr)>;
// truncstore bool -> truncstore byte.
def : Pat<(truncstorei1 IntRegs:$src, IntRegs:$addr),
From reid at x10sys.com Thu Dec 28 10:56:10 2006
From: reid at x10sys.com (Reid Spencer)
Date: Thu, 28 Dec 2006 10:56:10 -0600
Subject: [llvm-commits] CVS: llvm/docs/LangRef.html
Message-ID: <200612281656.kBSGuAbt032233@zion.cs.uiuc.edu>
Changes in directory llvm/docs:
LangRef.html updated: 1.179 -> 1.180
---
Log message:
Preview of new calling conventions: cextcc and csretextcc to handle explicit
sign and zero extension in function calls.
---
Diffs of the changes: (+27 -2)
LangRef.html | 29 +++++++++++++++++++++++++++--
1 files changed, 27 insertions(+), 2 deletions(-)
Index: llvm/docs/LangRef.html
diff -u llvm/docs/LangRef.html:1.179 llvm/docs/LangRef.html:1.180
--- llvm/docs/LangRef.html:1.179 Fri Dec 8 11:13:00 2006
+++ llvm/docs/LangRef.html Thu Dec 28 10:55:55 2006
@@ -519,9 +519,26 @@
This calling convention (the default if no other calling convention is
specified) matches the target C calling conventions. This calling convention
supports varargs function calls and tolerates some mismatch in the declared
- prototype and implemented declaration of the function (as does normal C).
+ prototype and implemented declaration of the function (as does normal C). For
+ integer arguments less than 32-bits, the value will be sign-extended to
+ 32-bits before the call is made. If zero-extension is required, use the
+ cextcc calling convention.
+ "cextcc(bitmask)" - The C with explicit extend calling
+ convention :
+ This calling convention is exactly like the C calling convention except
+ that it is parameterized to provide a bitmask that indicates how
+ integer arguments of less than 32-bits should be extended. A zero bit
+ indicates zero-extension while a 1-bit indicates sign-extension. The least
+ significant bit always corresponds to the return type of the function. The
+ bits in the bitmask are assigned to the integer parameters of the
+ function that are smaller than 32-bits. For example, a bitmask of value
+ 5 (0b0101) indicates that the return value is to be sign extended, the first
+ small integer argument is to be zero extended and the second small integer
+ argument is to be sign extended.
+
+
"csretcc" - The C struct return calling convention:
This calling convention matches the target C calling conventions, except
@@ -535,6 +552,14 @@
pointer to a struct as the first argument.
+ "csretextcc(bitmask)" - The C struct return with explicit
+ extend calling convention:
+ This calling convention is exactly like the csret calling
+ convention except that it is parameterized to provide a bitmask
+ that indicates how integer arguments of less than 32-bits should be extended.
+ A zero bit indicates zero-extension while a 1-bit indicates sign-extension.
+
+
"fastcc" - The fast calling convention:
This calling convention attempts to make calls as fast as possible
@@ -4468,7 +4493,7 @@
Chris Lattner
The LLVM Compiler Infrastructure
- Last modified: $Date: 2006/12/08 17:13:00 $
+ Last modified: $Date: 2006/12/28 16:55:55 $