- Jan 26, 2012
-
-
Eric Christopher authored
llvm-svn: 149015
-
Eric Christopher authored
llvm-svn: 149013
-
Eric Christopher authored
llvm-svn: 149012
-
- Jan 25, 2012
-
-
Eli Friedman authored
Add some ABI tweaks for i386-pc-win32 triple so that we return structs in an MSVC-compatible way. Patch by Joe Groff. llvm-svn: 148992
-
Eric Christopher authored
llvm-svn: 148982
-
NAKAMURA Takumi authored
llvm-svn: 148943
-
Chris Lattner authored
"use the new ConstantVector::getSplat method where it makes sense." Also simplify a bunch of code to use the Builder->getInt32 instead of doing it the hard and ugly way. Much more progress could be made here, but I don't plan to do it. llvm-svn: 148926
-
Eli Friedman authored
llvm-svn: 148923
-
Argyrios Kyrtzidis authored
Original log: use the new ConstantVector::getSplat method where it makes sense. llvm-svn: 148907
-
Eric Christopher authored
llvm-svn: 148904
-
Eric Christopher authored
llvm-svn: 148903
-
Chris Lattner authored
llvm-svn: 148902
-
- Jan 24, 2012
-
-
Kostya Serebryany authored
address safety analysis (such as e.g. AddressSanitizer or SAFECode) for a specific function. When building with AddressSanitizer, add AddressSafety function attribute to every generated function except for those that have __attribute__((no_address_safety_analysis)). With this patch we will be able to 1. disable AddressSanitizer for a particular function 2. disable AddressSanitizer-hostile optimizations (such as some cases of load widening) when AddressSanitizer is on. llvm-svn: 148842
-
Akira Hatanaka authored
type of pointers. llvm-svn: 148753
-
Akira Hatanaka authored
llvm-svn: 148744
-
- Jan 23, 2012
-
-
Nick Lewycky authored
X86 backend in LLVM. llvm-svn: 148689
-
- Jan 21, 2012
-
-
Eli Friedman authored
Add an assertion that our use-marking actually covers all uses of a variable. The assertion doesn't cover quite as much as it should, but it's a good start, at least. llvm-svn: 148625
-
- Jan 20, 2012
-
-
Eric Christopher authored
a forward declaration unless we already have a type. We can fill it in later if it's actually used. Fixes PR11345 llvm-svn: 148584
-
David Blaikie authored
llvm-svn: 148577
-
Kostya Serebryany authored
llvm-svn: 148554
-
- Jan 18, 2012
-
-
Seth Cantrell authored
llvm-svn: 148388
-
Nick Lewycky authored
llvm-svn: 148375
-
Nick Lewycky authored
llvm-svn: 148368
-
Fariborz Jahanian authored
llvm-svn: 148361
-
Fariborz Jahanian authored
patch (slightly revised) by Aaron Ballman. llvm-svn: 148359
-
Douglas Gregor authored
llvm-svn: 148358
-
- Jan 17, 2012
-
-
Eli Friedman authored
Add __builtin_labs and __builtin_llabs, to complete the set of __builtin_*abs. Patch by Ruben Van Boxem. llvm-svn: 148340
-
Richard Smith authored
that APValue-based constant emission knows how to emit member pointers. llvm-svn: 148336
-
Dan Gohman authored
llvm-svn: 148331
-
John McCall authored
or whatever else is required for the initialization instead of assuming it can be done with a simple store. Fixes PR11732. llvm-svn: 148325
-
Douglas Gregor authored
generation for Objective-C; it may not be needed. llvm-svn: 148317
-
David Blaikie authored
This allows -Wswitch-enum to find switches that need updating when these enums are modified. llvm-svn: 148281
-
- Jan 16, 2012
-
-
Tanya Lattner authored
llvm-svn: 148254
-
Fariborz Jahanian authored
statement which has an unscoped case inside it. Patch by Aaron Ballman llvm-svn: 148243
-
David Chisnall authored
- Add atomic-to/from-nonatomic cast types - Emit atomic operations for arithmetic on atomic types - Emit non-atomic stores for initialisation of atomic types, but atomic stores and loads for every other store / load - Add a __atomic_init() intrinsic which does a non-atomic store to an _Atomic() type. This is needed for the corresponding C11 stdatomic.h function. - Enables the relevant __has_feature() checks. The feature isn't 100% complete yet, but it's done enough that we want people testing it. Still to do: - Make the arithmetic operations on atomic types (e.g. Atomic(int) foo = 1; foo++;) use the correct LLVM intrinsic if one exists, not a loop with a cmpxchg. - Add a signal fence builtin - Properly set the fenv state in atomic operations on floating point values - Correctly handle things like _Atomic(_Complex double) which are too large for an atomic cmpxchg on some platforms (this requires working out what 'correctly' means in this context) - Fix the many remaining corner cases llvm-svn: 148242
-
- Jan 14, 2012
-
-
Douglas Gregor authored
we have a redeclarable type, and only use the new virtual versions (getPreviousDeclImpl() and getMostRecentDeclImpl()) when we don't have that type information. This keeps us from penalizing users with strict type information (and is the moral equivalent of a "final" method). Plus, settle on the names getPreviousDecl() and getMostRecentDecl() throughout. llvm-svn: 148187
-
Zhongxing Xu authored
llvm-svn: 148179
-
Richard Smith authored
APValue::Array and APValue::MemberPointer. All APValue values can now be emitted as constants. Add new CGCXXABI entry point for emitting an APValue MemberPointer. The other entrypoints dealing with constant member pointers are no longer necessary and will be removed in a later change. Switch codegen from using EvaluateAsRValue/EvaluateAsLValue to VarDecl::evaluateValue. This performs caching and deals with the nasty cases in C++11 where a non-const object's initializer can refer indirectly to previously-initialized fields within the same object. Building the intermediate APValue object incurs a measurable performance hit on pathological testcases with huge initializer lists, so we continue to build IR directly from the Expr nodes for array and record types outside of C++11. llvm-svn: 148178
-
- Jan 13, 2012
-
-
Eli Friedman authored
A base subobject type doesn't make sense for unions; don't try to compute it. Based on patch by Yin Ma. Fixes PR11751. llvm-svn: 148093
-
- Jan 12, 2012
-
-
Eric Christopher authored
llvm-svn: 147989
-