| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
lib dir and move all the libraries into it. This follows the main
llvm tree, and allows the libraries to be built in parallel. The
top level now enforces that all the libs are built before Driver,
but we don't care what order the libs are built in. This speeds
up parallel builds, particularly incremental ones.
llvm-svn: 48402
|
|
|
|
|
|
| |
Chisnall
llvm-svn: 48362
|
|
|
|
|
|
| |
Patch by David Chisnall!
llvm-svn: 47789
|
|
|
|
| |
llvm-svn: 47754
|
|
|
|
|
|
|
|
|
|
|
| |
void g() {
static char a[10];
static char *b = a;
}
Now we can compile wget!
llvm-svn: 47627
|
|
|
|
| |
llvm-svn: 47346
|
|
|
|
|
|
|
|
| |
is an array type not a pointer type. This requires updating some
diags that change and updating the code generator to handle the
proper form of strings.
llvm-svn: 46941
|
|
|
|
| |
llvm-svn: 46801
|
|
|
|
|
|
|
| |
eliminating a bunch of forwarding methods and generally
simplifying things.
llvm-svn: 46792
|
|
|
|
|
|
| |
simplify the code and generally make it more robust.
llvm-svn: 46745
|
|
|
|
| |
llvm-svn: 46386
|
|
|
|
|
|
| |
extern "C" in C++ mode. Patch by Mike Stump!
llvm-svn: 45904
|
|
|
|
| |
llvm-svn: 45530
|
|
|
|
|
|
| |
discussion of this change.
llvm-svn: 45410
|
|
|
|
|
|
| |
reported by Seo.
llvm-svn: 45156
|
|
|
|
|
|
| |
Intrinsic::getDeclaration, allowing much more terse code.
llvm-svn: 45136
|
|
|
|
| |
llvm-svn: 44510
|
|
|
|
|
|
|
|
|
|
|
| |
such as:
extern int x[];
void foo() { x[0] = 1; }
int x[10];
void bar() { x[0] = 1; }
llvm-svn: 44509
|
|
|
|
|
|
| |
their prototype.
llvm-svn: 44506
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
t.c:3322:5: warning: cannot codegen this yet
__asm__ ("bswap %0" : "+r" (_data));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
instead of:
Unimplemented stmt!
(AsmStmt 0x80eaa0 <t.c:3331:5, line:3334:28>)
llvm-svn: 44501
|
|
|
|
|
|
|
|
| |
We now use the CodeGenModule logic for generating the constant
initialiser expression, so happily further initialiser fixes should
automatically work for statics as well.
llvm-svn: 44495
|
|
|
|
|
|
| |
merge string literals when it is not provided.
llvm-svn: 44394
|
|
|
|
|
|
|
|
| |
Make target info available to clang code generator. This is far from complete but this helps clang codegen module make progress.
At the moment target triplet and target description strings are hard coded in clang::TargetInfo
llvm-svn: 43572
|
|
|
|
| |
llvm-svn: 43544
|
|
|
|
|
|
|
| |
This is far from complete but this helps clang codegen module
make progress.
llvm-svn: 43536
|
|
|
|
| |
llvm-svn: 43519
|
|
|
|
|
|
|
|
| |
Move Identifier/Loc instance variables (and associated getters/setters) down from Decl to ScopedDecl/FieldDecl.
Objc AST's can now inherit from Decl without getting instance variables and types that are C specific. For now, I am keeping NextDeclarator, since I believe it may be useful to ObjC. If not, it can be moved later.
llvm-svn: 41934
|
|
|
|
| |
llvm-svn: 41633
|
|
|
|
| |
llvm-svn: 41206
|
|
|
|
| |
llvm-svn: 39848
|
|
|
|
| |
llvm-svn: 39795
|
|
|
|
|
|
|
|
|
|
| |
void test(int A, _Complex float Y) {
_Complex float X;
X = X;
}
llvm-svn: 39669
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
int X, bar(int,int,int);
short Y;
double foo() {
return bar(X, Y, 3);
}
into:
@X = external global i32 ; <i32*> [#uses=1]
@Y = external global i16 ; <i16*> [#uses=1]
define double @foo() {
entry:
%tmp = load i32* @X ; <i32> [#uses=1]
%tmp1 = load i16* @Y ; <i16> [#uses=1]
%promote = sext i16 %tmp1 to i32 ; <i32> [#uses=1]
%call = tail call i32 @bar( i32 %tmp, i32 %promote, i32 3 ) ; <i32> [#uses=1]
%conv = sitofp i32 %call to double ; <double> [#uses=1]
ret double %conv
}
declare i32 @bar(i32, i32, i32)
llvm-svn: 39663
|
|
|
|
|
|
| |
and globals.
llvm-svn: 39661
|
|
|
|
|
|
|
|
| |
evaluation
is ready.
llvm-svn: 39660
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
out of the llvm namespace. This makes the clang namespace be a sibling of
llvm instead of being a child.
The good thing about this is that it makes many things unambiguous. The
bad things is that many things in the llvm namespace (notably data structures
like smallvector) now require an llvm:: qualifier. IMO, libsystem and libsupport
should be split out of llvm into their own namespace in the future, which will fix
this issue.
llvm-svn: 39659
|
|
|
|
| |
llvm-svn: 39522
|
|
|
|
|
|
| |
cases.
llvm-svn: 39519
|
|
llvm-svn: 39504
|