#
1aa0d5f3 |
| 09-May-2014 |
James Molloy <james.molloy@arm.com> |
Revert r208417 (olista01 'ARM: HFAs must be passed in consecutive registers'). This is a followon commit from r208413 which broke the LLVM bots.
llvm-svn: 208422
|
#
2ae250c3 |
| 09-May-2014 |
Rafael Espindola <rafael.espindola@gmail.com> |
Use auto to avoid duplicating the type.
llvm-svn: 208374
|
#
e033c8c5 |
| 08-May-2014 |
Rafael Espindola <rafael.espindola@gmail.com> |
Cleanup setFunctionDefinitionAttributes.
Use more specific type, update comments and name style.
llvm-svn: 208328
|
#
489c66b2 |
| 08-May-2014 |
Rafael Espindola <rafael.espindola@gmail.com> |
Small simplification: Reduce the use of cast<>.
llvm-svn: 208320
|
#
9959db5f |
| 06-May-2014 |
Alexey Bataev <a.bataev@hotmail.com> |
[OPENMP] Initial codegen for '#pragma omp parallel'
llvm-svn: 208077
|
#
502f65ae |
| 05-May-2014 |
Rafael Espindola <rafael.espindola@gmail.com> |
Fix pr19653.
Warn if an alias requests a section other than the aliasee section.
llvm-svn: 207997
|
#
c67b8152 |
| 05-May-2014 |
Rafael Espindola <rafael.espindola@gmail.com> |
Small refactoring, no functionality change.
llvm-svn: 207991
|
#
f80d6884 |
| 02-May-2014 |
Robert Lytton <robert@xmos.com> |
XCore target: fix bug in dereferencing null pointer.
Also add basic cpp ABI tests where they differ from C ABI output.
llvm-svn: 207834
|
#
844aeeb1 |
| 02-May-2014 |
Robert Lytton <robert@xmos.com> |
XCore target: Add TypeString meta data to IR output.
This includes the addition of the virtual function: TargetCodeGenInfo::EmitTargetMD()
llvm-svn: 207832
|
#
daff3701 |
| 01-May-2014 |
David Majnemer <david.majnemer@gmail.com> |
AST: Mangle reference temporaries reliably
Summary: Previously, we would generate a single name for all reference temporaries and allow LLVM to rename them for us. Instead, number the reference tem
AST: Mangle reference temporaries reliably
Summary: Previously, we would generate a single name for all reference temporaries and allow LLVM to rename them for us. Instead, number the reference temporaries as we build them in Sema.
Reviewers: rsmith
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D3554
llvm-svn: 207776
show more ...
|
#
846c2833 |
| 29-Apr-2014 |
David Majnemer <david.majnemer@gmail.com> |
CodeGen: Reference temporaries inherit visibility
Reference temporaries inherited many properties from the variable that they correspond to but visibility wasn't one of them.
llvm-svn: 207496
|
#
27d69dbb |
| 28-Apr-2014 |
David Majnemer <david.majnemer@gmail.com> |
CodeGen: Fix linkage of reference temporaries
Summary: A reference temporary should inherit the linkage of the variable it initializes. Otherwise, we may hit cases where a reference temporary would
CodeGen: Fix linkage of reference temporaries
Summary: A reference temporary should inherit the linkage of the variable it initializes. Otherwise, we may hit cases where a reference temporary wouldn't have the same value in all translation units.
Reviewers: rsmith
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D3515
llvm-svn: 207451
show more ...
|
Revision tags: llvmorg-3.4.1, llvmorg-3.4.1-rc2 |
|
#
01bbd1b1 |
| 25-Apr-2014 |
David Majnemer <david.majnemer@gmail.com> |
CodeGen: Cleanup variable linkage calculation
Almost all linkage calculation for VarDecls occured inside of GetLLVMLinkageVarDefinition except for static data members. Centralize the logic so that
CodeGen: Cleanup variable linkage calculation
Almost all linkage calculation for VarDecls occured inside of GetLLVMLinkageVarDefinition except for static data members. Centralize the logic so that it can be more readily reused.
No functionality change.
llvm-svn: 207241
show more ...
|
#
f6acb76c |
| 25-Apr-2014 |
David Majnemer <david.majnemer@gmail.com> |
CodeGen: Refactor linkage/visibility calculation
It turns out that linkage and visibility have rather similar logic for both functions and non-variable globals. Split the calculation out so that bo
CodeGen: Refactor linkage/visibility calculation
It turns out that linkage and visibility have rather similar logic for both functions and non-variable globals. Split the calculation out so that both sides may share this code.
No functionality change.
llvm-svn: 207239
show more ...
|
#
5f072d81 |
| 19-Apr-2014 |
Alp Toker <alp@nuanti.com> |
Remove some empty statements
Cleanup only.
llvm-svn: 206709
|
#
837a6f6f |
| 18-Apr-2014 |
Justin Bogner <mail@justinbogner.com> |
CodeGen: Use LLVM's InstrProfReader in -fprofile-instr-use=
Update clang to use the InstrProfReader from LLVM to read instrumentation based profile data. This also switches us from the naive text fo
CodeGen: Use LLVM's InstrProfReader in -fprofile-instr-use=
Update clang to use the InstrProfReader from LLVM to read instrumentation based profile data. This also switches us from the naive text format to the binary format, since that's what's implemented in the reader.
llvm-svn: 206658
show more ...
|
#
e2ef2a09 |
| 15-Apr-2014 |
Justin Bogner <mail@justinbogner.com> |
CodeGen: Emit warnings for out of date profile data during PGO
This adds a warning that triggers when profile data doesn't match for the source that's being compiled with -fprofile-instr-use=. This
CodeGen: Emit warnings for out of date profile data during PGO
This adds a warning that triggers when profile data doesn't match for the source that's being compiled with -fprofile-instr-use=. This fires only once per translation unit, as warning on every mismatched function would be quite noisy.
llvm-svn: 206322
show more ...
|
Revision tags: llvmorg-3.4.1-rc1 |
|
#
f2ea775e |
| 10-Apr-2014 |
Justin Bogner <mail@justinbogner.com> |
CodeGen: Move PGO initialization into Release()
Emitting the PGO initialization in EmitGlobalFunctionDefinition is inefficient, since this only has an effect once per module. We move this to Releas
CodeGen: Move PGO initialization into Release()
Emitting the PGO initialization in EmitGlobalFunctionDefinition is inefficient, since this only has an effect once per module. We move this to Release() with the rest of the once-per-module logic.
llvm-svn: 205977
show more ...
|
#
9832a3d1 |
| 10-Apr-2014 |
David Majnemer <david.majnemer@gmail.com> |
CodeGen: Clean up CommonLinkage calculation
No functionality change.
llvm-svn: 205972
|
#
54e3ba5a |
| 02-Apr-2014 |
David Majnemer <david.majnemer@gmail.com> |
CodeGen: Emit some functions as weak_odr under -fms-compatibility
Summary: MSVC always emits inline functions marked with the extern storage class specifier. The result is something similar to the
CodeGen: Emit some functions as weak_odr under -fms-compatibility
Summary: MSVC always emits inline functions marked with the extern storage class specifier. The result is something similar to the opposite of __attribute__((gnu_inline)).
This extension is also available in C.
This fixes PR19264.
Reviewers: rnk, rsmith
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D3207
llvm-svn: 205485
show more ...
|
#
fc6297f3 |
| 01-Apr-2014 |
Bob Wilson <bob.wilson@apple.com> |
Disable this-return optimizations when targeting iOS 5 and earlier.
Clang implements the part of the ARM ABI saying that certain functions (e.g., constructors and destructors) return "this", but App
Disable this-return optimizations when targeting iOS 5 and earlier.
Clang implements the part of the ARM ABI saying that certain functions (e.g., constructors and destructors) return "this", but Apple's version of gcc and llvm-gcc did not. The libstdc++ dylib on iOS 5 was built with llvm-gcc, which means that clang cannot safely assume that code from the C++ runtime will correctly follow the ABI. It is also possible to run into this problem when linking with other libraries built with gcc or llvm-gcc. Even though there is no way to reliably detect that situation, it is most likely to come up when targeting older versions of iOS. Disabling the optimization for any code targeting iOS 5 solves the libstdc++ problem and has a reasonably good chance of fixing the issue for other older libraries as well. <rdar://problem/16377159>
llvm-svn: 205272
show more ...
|
#
f0674350 |
| 31-Mar-2014 |
Paul Robinson <paul_robinson@playstation.sony.com> |
Implement the 'optnone' attribute, which suppresses most optimizations on a function.
llvm-svn: 205255
|
#
a2ee433c |
| 29-Mar-2014 |
Tim Northover <tnorthover@apple.com> |
ARM64: initial clang support commit.
This adds Clang support for the ARM64 backend. There are definitely still some rough edges, so please bring up any issues you see with this patch.
As with the L
ARM64: initial clang support commit.
This adds Clang support for the ARM64 backend. There are definitely still some rough edges, so please bring up any issues you see with this patch.
As with the LLVM commit though, we think it'll be more useful for merging with AArch64 from within the tree.
llvm-svn: 205100
show more ...
|
#
af369806 |
| 29-Mar-2014 |
David Majnemer <david.majnemer@gmail.com> |
CodeGen: Don't crash when replacing functions
The peculiarities of C99 create scenario where an LLVM IR function declaration may need to be replaced with a definition baring a different type because
CodeGen: Don't crash when replacing functions
The peculiarities of C99 create scenario where an LLVM IR function declaration may need to be replaced with a definition baring a different type because the prototype and definition are not required to agree.
However, we were not properly deferring this when it occurred.
This fixes PR19280.
llvm-svn: 205099
show more ...
|
#
a39fc6dd |
| 27-Mar-2014 |
Rafael Espindola <rafael.espindola@gmail.com> |
Handle and warn on aliases to weak aliases.
This produces valid IR now that llvm rejects aliases to weak aliases and warns the user that the resolution is not changed if the weak alias is overridden
Handle and warn on aliases to weak aliases.
This produces valid IR now that llvm rejects aliases to weak aliases and warns the user that the resolution is not changed if the weak alias is overridden.
llvm-svn: 204935
show more ...
|