llvm-project/clang/test/CodeGen
Douglas Gregor e62c0a45dd Improve merging of function declarations. Specifically:
- When we are declaring a function in local scope, we can merge with
    a visible declaration from an outer scope if that declaration
    refers to an entity with linkage. This behavior now works in C++
    and properly ignores entities without linkage.
  - Diagnose the use of "static" on a function declaration in local
    scope.
  - Diagnose the declaration of a static function after a non-static
    declaration of the same function.
  - Propagate the storage specifier to a function declaration from a
    prior declaration (PR3425)
  - Don't name-mangle "main"

llvm-svn: 65360
2009-02-24 01:23:02 +00:00
..
2007-11-29-ArraySizeFromInitializer.c Update a number of CodeGen tests to not create .ll files in the test 2008-08-21 02:51:29 +00:00
2008-02-07-bitfield-bug.c Update a number of CodeGen tests to not create .ll files in the test 2008-08-21 02:51:29 +00:00
2008-02-08-bitfield-bug.c Update a number of CodeGen tests to not create .ll files in the test 2008-08-21 02:51:29 +00:00
2008-02-26-inline-asm-bug.c Fix a bug in ConvertAsmString function. 2008-02-26 19:19:58 +00:00
2008-07-17-no-emit-on-error.c Prevent clang from emitting output when input has errors 2008-07-18 16:38:05 +00:00
2008-07-21-mixed-var-fn-decl.c Fix codegen of chained declarations 2008-07-29 17:47:36 +00:00
2008-07-22-bitfield-init-after-zero-len-array.c Fix crash during initialization of a bitfield which followed a zero 2008-08-10 07:00:24 +00:00
2008-07-22-packed-bitfield-access.c Fix bitfield accesses which straddle the boundary of the underlying 2008-08-06 05:08:45 +00:00
2008-07-29-override-alias-decl.c Change CodeGen of global decls to key off of the name (instead of 2008-08-05 23:31:02 +00:00
2008-07-30-implicit-initialization.c Force triple for codegen tests which have expectations on output 2009-02-03 21:54:49 +00:00
2008-07-30-redef-of-bitcasted-decl.c Change CodeGenModule GlobalDeclMap to directly reference globals 2008-07-30 16:32:24 +00:00
2008-07-31-asm-labels.c Implement GNU asm-label extension support in CodeGen. This fixes 2008-08-06 00:03:29 +00:00
2008-07-31-promotion-of-compound-pointer-arithmetic.c Force triple for codegen tests which have expectations on output 2009-02-03 21:54:49 +00:00
2008-08-04-void-pointer-arithmetic.c Bug fix, CodeGen of (void*) - (void*) was broken. 2008-08-05 00:47:03 +00:00
2008-08-19-cast-of-typedef.c Fix subtle bug introduced in r54852. 2008-08-20 03:55:42 +00:00
2008-08-25-incompatible-cond-expr.m Add missing RUN line 2008-09-08 18:01:15 +00:00
2008-09-22-bad-switch-type.c Bug fix, result of isIntegerConstantExpr could be of incorrect width 2008-09-22 23:53:24 +00:00
2008-12-02-logical-or-fold.c Fix for PR3150: obvious copy-paste bug in 2008-12-02 16:02:46 +00:00
2009-01-21-invalid-debug-info.m Allow creation of "dummy" compile units for debug information. 2009-01-22 00:09:25 +00:00
OpaqueStruct.c Update a number of CodeGen tests to not create .ll files in the test 2008-08-21 02:51:29 +00:00
PR2001-bitfield-reload.c Force triple for codegen tests which have expectations on output 2009-02-03 21:54:49 +00:00
PR2413-void-address-cast-error.c Forgot the newline :) 2008-11-24 05:13:45 +00:00
PR2643-null-store-to-bitfield.c Fix EmitNullInitializationToLValue for bitfield lvalues. 2008-08-06 05:32:55 +00:00
PR2743-reference-missing-static.c Fix a number of issues w.r.t. emission of global for functions and 2008-09-08 23:44:31 +00:00
PR3130-cond-constant.c Make Sema::CheckForConstantInitializer use Expr::Evaluate. This fixes PR3130. 2008-12-05 05:09:56 +00:00
PR3589-freestanding-libcalls.c PR3589: Don't simplify libcalls with -ffreestanding. 2009-02-15 20:00:15 +00:00
PR3613-static-decl.c Emission of global variable initialializer was broken in rare 2009-02-19 05:36:41 +00:00
address-space-cast.c Fix crash with conversion to an address-space-qualified pointer. Bug 2008-06-07 17:27:51 +00:00
address-space.c These tests have no needed to redirect stderr to stdout. 2008-11-11 04:09:47 +00:00
align-local.c Calculate alignment for local variables. 2008-05-31 21:20:41 +00:00
alignof.c Eek! getDeclAlign sometimes returned alignment in bits. 2009-02-17 22:16:19 +00:00
array.c Update a number of CodeGen tests to not create .ll files in the test 2008-08-21 02:51:29 +00:00
asm.c Match gcc and always perform array/function conversion for asm input exprs. Fixes PR3641. 2009-02-22 02:11:23 +00:00
atomic.c fix this testcase after Mon Ping's intrinsic rename. 2008-06-26 04:06:27 +00:00
attr-nodebug.c Add CodeGen support for the nodebug attribute. 2009-02-13 08:11:52 +00:00
attr-noinline.c Add irgen support for the noinline attribute. 2009-02-19 19:22:11 +00:00
attr-used.c IRgen support for attribute used. 2009-02-13 22:08:43 +00:00
attributes.c Honor attribute section on static block var decls. 2009-02-12 23:32:54 +00:00
bitfield-assign.c Force triple for codegen tests which have expectations on output 2009-02-03 21:54:49 +00:00
bitfield-init.c Update a number of CodeGen tests to not create .ll files in the test 2008-08-21 02:51:29 +00:00
bitfield.c Force triple for codegen tests which have expectations on output 2009-02-03 21:54:49 +00:00
bool-bitfield.c Update a number of CodeGen tests to not create .ll files in the test 2008-08-21 02:51:29 +00:00
bool-init.c Make sure _Bool globals have the correct type. 2008-06-01 15:31:44 +00:00
boolassign.c Update a number of CodeGen tests to not create .ll files in the test 2008-08-21 02:51:29 +00:00
builtin-count-zeros.c Multiple tests in a single test file must be linked with '&&'. 2008-06-12 12:40:02 +00:00
builtin-memfns.c Fix IRgen of __builtin_memset. 2009-02-16 21:52:05 +00:00
builtin-stackaddress.c Multiple tests in a single test file must be linked with '&&'. 2008-06-12 12:40:02 +00:00
builtinmemcpy.c Implement CodeGen for __builtin_memcpy. 2008-05-19 23:27:48 +00:00
builtins-ffs_parity_popcount.c Implement ffs, parity, and popcount builtins. 2008-07-21 17:19:41 +00:00
builtins-powi.c Add __builtin_powi[fl] support 2008-07-21 18:44:41 +00:00
builtins-x86.c Fix definition of __builtin_ia32_vec_set_v2di and de-XFAIL 2009-01-26 23:43:02 +00:00
builtins.c Add some stdlib builtins 2009-02-20 06:36:40 +00:00
builtinshufflevector.c These tests have no needed to redirect stderr to stdout. 2008-11-11 04:09:47 +00:00
c-strings.c make sure the size of constant arrays is respected 2008-08-13 23:28:57 +00:00
cast-to-union.c add support for usage of cast to union thing with static vars 2009-01-17 00:48:48 +00:00
cast.c Update a number of CodeGen tests to not create .ll files in the test 2008-08-21 02:51:29 +00:00
cfstring.c Make the constant folder aware of 2009-01-25 01:54:01 +00:00
cfstring2.c fix incorrect rdar number. 2008-10-06 07:43:28 +00:00
complex.c Handle returning complex types that get coerced. Fixes PR3131 2008-11-25 22:21:48 +00:00
compound-literal.c Remove illegal test. 2008-05-19 20:17:34 +00:00
compound.c implement codegen support for aggregates casted to void. 2008-02-16 23:55:16 +00:00
conditional-gnu-ext.c fix rdar://6586493, a bug in codegen of the GNU 2009-02-13 23:35:32 +00:00
conditional.c Update a number of CodeGen tests to not create .ll files in the test 2008-08-21 02:51:29 +00:00
const-init.c Cleanp code with some recent suggestions. 2009-02-22 13:27:11 +00:00
const-label-addr.c Fix the address of a label to be properly considered and emitted as a 2009-01-25 01:21:06 +00:00
constant-comparison.c Multiple tests in a single test file must be linked with '&&'. 2008-06-12 12:40:02 +00:00
constructor-attribute.c Pull MayDeferGeneration out of EmitGlobal. 2009-02-13 21:18:01 +00:00
cxx-condition.cpp Implement CodeGen support for the 'CXXConditionDeclExpr' expression node, which represents a 'condition' declaration, e.g: "if (int x=0) {...}". 2008-09-10 02:36:38 +00:00
cxx-default-arg.cpp Missed a test case writing a .ll file. 2008-08-21 04:30:23 +00:00
cxx-value-init.cpp Line endings: CRLF -> LF 2008-09-05 08:53:53 +00:00
debug-info.c fix PR3427: fix debuginfo for incomplete array types 2009-01-28 00:35:17 +00:00
designated-initializers.c Force triple for codegen tests which have expectations on output 2009-02-03 21:54:49 +00:00
dllimport-dllexport.c Add full dllimport / dllexport support: both sema checks and codegen. 2008-12-26 00:52:02 +00:00
dostmt.c Fix rdar://6103124, the only dummy blocks are ones without names. Named blocks 2008-07-25 23:40:10 +00:00
emit-all-decls.c Test case for -femit-all-decls. 2009-02-04 21:20:25 +00:00
empty-union-init.c "This moves built-in Objective-C types up the scope chains to where they can be replaced by versions included from the runtime library's headers." 2008-06-21 20:20:39 +00:00
enum.c Force triple for codegen tests which have expectations on output 2009-02-03 21:54:49 +00:00
exprs.c finish off codegen support for sub of pointer to functions, 2009-02-11 07:21:43 +00:00
ext-vector-shuffle.c Vector codegen improvements 2009-01-18 06:42:49 +00:00
ext-vector.c Support evaluation of vector constant expressions, and codegen of same. 2009-01-18 03:20:47 +00:00
extern-block-var.c Update a number of CodeGen tests to not create .ll files in the test 2008-08-21 02:51:29 +00:00
func-decl-cleanup.c Don't swap function decls, and add them to the scope as they are 2008-05-27 05:07:37 +00:00
func-return-member.c Enable CodeGen for member expressions based on call expressions returning aggregate types. This enables expressions like 'foo().member.submember'. 2007-12-29 05:02:41 +00:00
function-attributes.c Set call attribute for direct calls (i.e. noreturn). 2009-02-20 18:06:48 +00:00
functions.c Don't emit K&R unprototyped function definitions as varargs. 2009-02-19 07:15:39 +00:00
global-decls.c Emit extern_weak when needed. 2009-02-21 00:24:10 +00:00
global-init.c If a global var decl has an initializer, make sure to always set its linkage to external. 2008-12-03 05:51:23 +00:00
global-with-initialiser.c Update a number of CodeGen tests to not create .ll files in the test 2008-08-21 02:51:29 +00:00
globalinit.c Upgrade the "excess elements in array initializer" warning to an 2009-01-30 22:26:29 +00:00
indirect-goto.c Force triple for codegen tests which have expectations on output 2009-02-03 21:54:49 +00:00
init-with-member-expr.c Fix PR2049, updating Eli's patch that fixes to mainline. This produces incorrect 2008-04-04 18:42:16 +00:00
init.c Set constant bit on static block vars as well. Patch by Anders Johnson!q 2009-02-13 22:58:39 +00:00
int-to-pointer.c Update a number of CodeGen tests to not create .ll files in the test 2008-08-21 02:51:29 +00:00
kr-func-promote.c Force triple for codegen tests which have expectations on output 2009-02-03 21:54:49 +00:00
libcalls.c Support IRgen of sqrt -> llvm.sqrt, pow -> llvm.pow. 2009-02-16 22:43:43 +00:00
linkage-redecl.c Improve merging of function declarations. Specifically: 2009-02-24 01:23:02 +00:00
long-double-x86.c Fix long double test case 2008-07-25 20:54:30 +00:00
mandel.c Update a number of CodeGen tests to not create .ll files in the test 2008-08-21 02:51:29 +00:00
mangle.c We must always mangle attribute overloadable functions; even if in a 2009-02-20 23:09:27 +00:00
merge-attrs.c Implicitly declare certain C library functions (malloc, strcpy, memmove, 2009-02-13 23:20:09 +00:00
merge-statics.c pull .ll and .bc writing out of the ASTConsumer destructors into some top 2008-02-06 01:42:25 +00:00
mmintrin-test.c stdlib.h is the wrong header for printf, and introduces test-breaking definitions of inlines on Linux 2008-12-13 15:31:28 +00:00
offsetof.c Fix for PR2910: implement CodeGen for non-constant offsetof. 2009-01-24 22:38:55 +00:00
opaque-pointer.c eliminate some random .ll file outputs 2009-01-27 18:56:08 +00:00
overloadable.c Add mangling for variadic functions and conversion functions 2009-02-13 01:28:03 +00:00
parameter-passing.c Enable parameter passing test for x86_64. 2009-02-10 01:53:22 +00:00
pointer-arithmetic.c eliminate some random .ll file outputs 2009-01-27 18:56:08 +00:00
pointer-cmp-type.c Fix an extremely subtle bug with pointer comparisons: they have to be 2008-05-29 15:09:15 +00:00
pointer-to-int.c Fix a codegen crash on: 2008-07-23 06:31:27 +00:00
private-extern.c Bug fix, __private_extern__ globals were always introducing a definition. 2009-01-13 02:25:00 +00:00
rdr-6095112-alias-references-inline.c Force triple for codegen tests which have expectations on output 2009-02-03 21:54:49 +00:00
rdr-6098585-default-after-caserange.c Force triple for codegen tests which have expectations on output 2009-02-03 21:54:49 +00:00
rdr-6098585-default-fallthrough-to-caserange.c Force triple for codegen tests which have expectations on output 2009-02-03 21:54:49 +00:00
rdr-6098585-empty-case-range.c Force triple for codegen tests which have expectations on output 2009-02-03 21:54:49 +00:00
rdr-6098585-fallthrough-to-empty-range.c Force triple for codegen tests which have expectations on output 2009-02-03 21:54:49 +00:00
rdr-6098585-unsigned-caserange.c Force triple for codegen tests which have expectations on output 2009-02-03 21:54:49 +00:00
rdr-6140807-alias-references-forward.c Force triple for codegen tests which have expectations on output 2009-02-03 21:54:49 +00:00
shared-string-literals.c Update a number of CodeGen tests to not create .ll files in the test 2008-08-21 02:51:29 +00:00
sizeof-vla.c Make sure to cast the VLA size of array to the type of size_t. Fixes PR3442. 2009-01-30 16:41:04 +00:00
statements.c explicitly document that return statement argument does not necessarily follow the result type of the function. Add testcase. 2008-02-06 21:20:34 +00:00
static-forward-decl-fun.c Update a number of CodeGen tests to not create .ll files in the test 2008-08-21 02:51:29 +00:00
static-forward-decl.c Add a more reliable check for whether a static declaration has already 2008-05-27 04:58:01 +00:00
static-local-union.c Don't crash emitting an initializer for a static local with union type. 2008-06-08 01:23:18 +00:00
static-order.c Fix the bug that would cause Python to crash at startup. 2009-01-04 02:08:04 +00:00
staticinit.c Change EmitConstantExpr to allow failure. 2009-02-17 18:43:32 +00:00
stdcall-fastcall.c Codegen support for fastcall & stdcall CC. 2008-11-11 20:21:14 +00:00
string-init.c Fix broken test. 2008-06-12 12:44:52 +00:00
string-literal.c eliminate some random .ll file outputs 2009-01-27 18:56:08 +00:00
struct-comma.c eliminate some random .ll file outputs 2009-01-27 18:56:08 +00:00
struct-init.c eliminate some random .ll file outputs 2009-01-27 18:56:08 +00:00
struct-x86-darwin.c Multiple tests in a single test file must be linked with '&&'. 2008-06-12 12:40:02 +00:00
struct.c Test case for emitting va_arg as l-value; apparently I only *thought* I had committed this. 2009-02-12 08:41:10 +00:00
switch.c Emit basic block for switch body; fixes PR2307. 2008-05-12 16:08:04 +00:00
tentative-array.c PR1893: Fix up the type of tentative definitions of incomplete array 2008-05-30 20:39:54 +00:00
typedef-func.c For setting attributes, don't assume there are ParamVarDecls available, 2008-06-04 19:41:28 +00:00
typedef.c eliminate some random .ll file outputs 2009-01-27 18:56:08 +00:00
types.c Fix PR2081 (problems codegen'ing some recursive structures) patch 2008-04-03 05:50:42 +00:00
union-init.c Fix and enable generating general union initializers. Essentially, what 2008-05-30 19:58:50 +00:00
union.c eliminate some random .ll file outputs 2009-01-27 18:56:08 +00:00
unsupported.c Update test case; VLA's are now supported. 2009-02-09 21:19:23 +00:00
unwind-attr.c Fix test case RUN: line (thanks Argiris) 2008-08-18 17:52:17 +00:00
var-align.c Add CodeGen support for alignment on globals, both for unusual natural 2008-05-29 11:10:27 +00:00
vector.c Upgrade the "excess elements in array initializer" warning to an 2009-01-30 22:26:29 +00:00
vla.c Handle the case where EmitBlock might be called multiple times for the same block. Fixes PR3536. 2009-02-10 22:50:24 +00:00
volatile.c Fix redundant load of bit-fields on assignment (to get the updated 2008-11-19 09:36:46 +00:00
weak-global.c Tentative declarations are supposed to have common linkage, not weak. 2008-05-29 11:03:17 +00:00
whilestmt.c eliminate some random .ll file outputs 2009-01-27 18:56:08 +00:00
writable-strings.c eliminate some random .ll file outputs 2009-01-27 18:56:08 +00:00
x86-inline-asm.c Multiple tests in a single test file must be linked with '&&'. 2008-06-12 12:40:02 +00:00
x86_64-arguments.c x86_64 ABI: Pass simple types directly when possible. This is 2009-02-14 02:09:24 +00:00