diff options
Diffstat (limited to 'contrib/llvm/tools/clang/lib/CodeGen')
-rw-r--r-- | contrib/llvm/tools/clang/lib/CodeGen/CMakeLists.txt | 41 | ||||
-rw-r--r-- | contrib/llvm/tools/clang/lib/CodeGen/Makefile | 19 | ||||
-rw-r--r-- | contrib/llvm/tools/clang/lib/CodeGen/README.txt | 47 |
3 files changed, 0 insertions, 107 deletions
diff --git a/contrib/llvm/tools/clang/lib/CodeGen/CMakeLists.txt b/contrib/llvm/tools/clang/lib/CodeGen/CMakeLists.txt deleted file mode 100644 index b5a2329..0000000 --- a/contrib/llvm/tools/clang/lib/CodeGen/CMakeLists.txt +++ /dev/null @@ -1,41 +0,0 @@ -set(LLVM_NO_RTTI 1) - -add_clang_library(clangCodeGen - BackendUtil.cpp - CGBlocks.cpp - CGBuiltin.cpp - CGCall.cpp - CGClass.cpp - CGCXX.cpp - CGDebugInfo.cpp - CGDecl.cpp - CGDeclCXX.cpp - CGException.cpp - CGExpr.cpp - CGExprAgg.cpp - CGExprComplex.cpp - CGExprConstant.cpp - CGExprCXX.cpp - CGExprScalar.cpp - CGObjC.cpp - CGObjCGNU.cpp - CGObjCMac.cpp - CGRecordLayoutBuilder.cpp - CGRTTI.cpp - CGStmt.cpp - CGTemporaries.cpp - CGVTables.cpp - CGVTT.cpp - CodeGenAction.cpp - CodeGenFunction.cpp - CodeGenModule.cpp - CodeGenTypes.cpp - ItaniumCXXABI.cpp - Mangle.cpp - MicrosoftCXXABI.cpp - ModuleBuilder.cpp - TargetInfo.cpp - ) - -add_dependencies(clangCodeGen ClangAttrClasses ClangAttrList ClangDeclNodes - ClangStmtNodes) diff --git a/contrib/llvm/tools/clang/lib/CodeGen/Makefile b/contrib/llvm/tools/clang/lib/CodeGen/Makefile deleted file mode 100644 index 6032dff..0000000 --- a/contrib/llvm/tools/clang/lib/CodeGen/Makefile +++ /dev/null @@ -1,19 +0,0 @@ -##===- clang/lib/CodeGen/Makefile --------------------------*- Makefile -*-===## -# -# The LLVM Compiler Infrastructure -# -# This file is distributed under the University of Illinois Open Source -# License. See LICENSE.TXT for details. -# -##===----------------------------------------------------------------------===## -# -# This implements the AST -> LLVM code generation library for the -# C-Language front-end. -# -##===----------------------------------------------------------------------===## - -CLANG_LEVEL := ../.. -LIBRARYNAME := clangCodeGen - -include $(CLANG_LEVEL)/Makefile - diff --git a/contrib/llvm/tools/clang/lib/CodeGen/README.txt b/contrib/llvm/tools/clang/lib/CodeGen/README.txt deleted file mode 100644 index e6d6109..0000000 --- a/contrib/llvm/tools/clang/lib/CodeGen/README.txt +++ /dev/null @@ -1,47 +0,0 @@ -IRgen optimization opportunities. - -//===---------------------------------------------------------------------===// - -The common pattern of --- -short x; // or char, etc -(x == 10) --- -generates an zext/sext of x which can easily be avoided. - -//===---------------------------------------------------------------------===// - -Bitfields accesses can be shifted to simplify masking and sign -extension. For example, if the bitfield width is 8 and it is -appropriately aligned then is is a lot shorter to just load the char -directly. - -//===---------------------------------------------------------------------===// - -It may be worth avoiding creation of alloca's for formal arguments -for the common situation where the argument is never written to or has -its address taken. The idea would be to begin generating code by using -the argument directly and if its address is taken or it is stored to -then generate the alloca and patch up the existing code. - -In theory, the same optimization could be a win for block local -variables as long as the declaration dominates all statements in the -block. - -NOTE: The main case we care about this for is for -O0 -g compile time -performance, and in that scenario we will need to emit the alloca -anyway currently to emit proper debug info. So this is blocked by -being able to emit debug information which refers to an LLVM -temporary, not an alloca. - -//===---------------------------------------------------------------------===// - -We should try and avoid generating basic blocks which only contain -jumps. At -O0, this penalizes us all the way from IRgen (malloc & -instruction overhead), all the way down through code generation and -assembly time. - -On 176.gcc:expr.ll, it looks like over 12% of basic blocks are just -direct branches! - -//===---------------------------------------------------------------------===// |