[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