[llvm-commits] CVS: llvm/include/llvm/CodeGen/RuntimeLibcalls.h

Evan Cheng evan.cheng at apple.com
Fri Jan 12 14:49:52 PST 2007



Changes in directory llvm/include/llvm/CodeGen:

RuntimeLibcalls.h added (r1.1)
---
Log message:

- Move RTLIB::Libcall enum to a separate file.
- Code clean up.

---
Diffs of the changes:  (+107 -0)

 RuntimeLibcalls.h |  107 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 107 insertions(+)


Index: llvm/include/llvm/CodeGen/RuntimeLibcalls.h
diff -c /dev/null llvm/include/llvm/CodeGen/RuntimeLibcalls.h:1.1
*** /dev/null	Fri Jan 12 16:49:43 2007
--- llvm/include/llvm/CodeGen/RuntimeLibcalls.h	Fri Jan 12 16:49:32 2007
***************
*** 0 ****
--- 1,107 ----
+ //===-- CodeGen/RuntimeLibcall.h - Runtime Library Calls --------*- C++ -*-===//
+ //
+ //                     The LLVM Compiler Infrastructure
+ //
+ // This file was developed by the Evan Cheng and is distributed under
+ // the University of Illinois Open Source License. See LICENSE.TXT for details.
+ //
+ //===----------------------------------------------------------------------===//
+ //
+ // This file defines the enum representing the list of runtime library calls
+ // the backend may emit during code generation.
+ //
+ //===----------------------------------------------------------------------===//
+ 
+ #ifndef LLVM_CODEGEN_RUNTIMELIBCALLS_H
+ #define LLVM_CODEGEN_RUNTIMELIBCALLS_H
+ 
+ namespace llvm {
+ namespace RTLIB {
+   /// RTLIB::Libcall enum - This enum defines all of the runtime library calls
+   /// the backend can emit.
+   ///
+   enum Libcall {
+     // Integer
+     SHL_I32,
+     SHL_I64,
+     SRL_I32,
+     SRL_I64,
+     SRA_I32,
+     SRA_I64,
+     MUL_I32,
+     MUL_I64,
+     SDIV_I32,
+     SDIV_I64,
+     UDIV_I32,
+     UDIV_I64,
+     SREM_I32,
+     SREM_I64,
+     UREM_I32,
+     UREM_I64,
+     NEG_I32,
+     NEG_I64,
+ 
+     // FLOATING POINT
+     ADD_F32,
+     ADD_F64,
+     SUB_F32,
+     SUB_F64,
+     MUL_F32,
+     MUL_F64,
+     DIV_F32,
+     DIV_F64,
+     REM_F32,
+     REM_F64,
+     NEG_F32,
+     NEG_F64,
+     POWI_F32,
+     POWI_F64,
+     SQRT_F32,
+     SQRT_F64,
+     SIN_F32,
+     SIN_F64,
+     COS_F32,
+     COS_F64,
+ 
+     // CONVERSION
+     FPEXT_F32_F64,
+     FPROUND_F64_F32,
+     FPTOSINT_F32_I32,
+     FPTOSINT_F32_I64,
+     FPTOSINT_F64_I32,
+     FPTOSINT_F64_I64,
+     FPTOUINT_F32_I32,
+     FPTOUINT_F32_I64,
+     FPTOUINT_F64_I32,
+     FPTOUINT_F64_I64,
+     SINTTOFP_I32_F32,
+     SINTTOFP_I32_F64,
+     SINTTOFP_I64_F32,
+     SINTTOFP_I64_F64,
+     UINTTOFP_I32_F32,
+     UINTTOFP_I32_F64,
+     UINTTOFP_I64_F32,
+     UINTTOFP_I64_F64,
+ 
+     // COMPARISON
+     OEQ_F32,
+     OEQ_F64,
+     UNE_F32,
+     UNE_F64,
+     OGE_F32,
+     OGE_F64,
+     OLT_F32,
+     OLT_F64,
+     OLE_F32,
+     OLE_F64,
+     OGT_F32,
+     OGT_F64,
+     UO_F32,
+     UO_F64,
+ 
+     UNKNOWN_LIBCALL
+   };
+ }
+ }
+ 
+ #endif






More information about the llvm-commits mailing list