- Oct 16, 2013
-
-
Eric Christopher authored
1) Make sure we emit static member variables by checking at the end of createGlobalVariableDIE rather than piecemeal in the function. (As a note, createGlobalVariableDIE needs rewriting.) 2) Make sure we use the definition rather than declaration DIE for two things: a) determining linkage for gnu pubnames, and b) as the address of the DIE for global variables. (As a note, createGlobalVariableDIE really needs rewriting.) Adjust the testcase to make sure we're checking the correct DIEs. llvm-svn: 192761
-
Rafael Espindola authored
We had a MCAsmInfoCOFF, but no common class for all the ELF MCAsmInfos before. llvm-svn: 192760
-
Hans Wennborg authored
llvm-svn: 192759
-
Hans Wennborg authored
Because of win32 mangling, we produce symbol and section names with funny characters in them, most notably @ characters. MC would choke on trying to parse its own assembly output. This patch addresses that by: - Making @ trigger quoting of symbol names - Also quote section names in the same way - Just parse section names like other identifiers (to allow for quotes) - Don't assume @ signifies a symbol variant if it is in a string. Differential Revision: http://llvm-reviews.chandlerc.com/D1945 llvm-svn: 192758
-
Rafael Espindola authored
No functionality change, but exposes the API so that codegen can use it too. Patch by Katya Romanova. llvm-svn: 192757
-
Andrew Kaylor authored
llvm-svn: 192756
-
David Blaikie authored
llvm-svn: 192755
-
Andrew Kaylor authored
llvm-svn: 192754
-
Andrew Kaylor authored
Patch by Yaron Keren llvm-svn: 192753
-
Matt Arsenault authored
llvm-svn: 192752
-
Matt Arsenault authored
llvm-svn: 192751
-
Andrew Trick authored
This changes the SelectionDAG scheduling preference to source order. Soon, the SelectionDAG scheduler can be bypassed saving a nice chunk of compile time. Performance differences that result from this change are often a consequence of register coalescing. The register coalescer is far from perfect. Bugs can be filed for deficiencies. On x86 SandyBridge/Haswell, the source order schedule is often preserved, particularly for small blocks. Register pressure is generally improved over the SD scheduler's ILP mode. However, we are still able to handle large blocks that require latency hiding, unlike the SD scheduler's BURR mode. MI scheduler also attempts to discover the critical path in single-block loops and adjust heuristics accordingly. The MI scheduler relies on the new machine model. This is currently unimplemented for AVX, so we may not be generating the best code yet. Unit tests are updated so they don't depend on SD scheduling heuristics. llvm-svn: 192750
-
Eric Christopher authored
twice and just look up the value. Fix the one case where we were trying to create a subprogram DIE and we should already have had one. Reflow formatting in collectDeadVariables while fixing. llvm-svn: 192749
-
Eric Christopher authored
and remove a call to getNonCompileUnitScope as a method shouldn't be in the compile unit scope. llvm-svn: 192748
-
Eric Christopher authored
llvm-svn: 192747
-
Richard Smith authored
merged declarations of a class template. llvm-svn: 192746
-
NAKAMURA Takumi authored
llvm-svn: 192745
-
David Blaikie authored
Also minor using namespace move so it's not hard-up against the function definition and outside the namespace as is usual. llvm-svn: 192744
-
Vincent Lejeune authored
llvm-svn: 192743
-
Rui Ueyama authored
Some background: One can pass compiled resource files (.res files) directly to the linker on Windows. If a resource file is given, the linker will run "cvtres" command in background to convert the resource file to a COFF file to link it. What I'm trying to do with this patch is to make the linker to recognize the resource file by file magic, so that it can run cvtres command. Differential Revision: http://llvm-reviews.chandlerc.com/D1943 llvm-svn: 192742
-
rdar://problem/15235492Enrico Granata authored
Extend DummySyntheticProvider to actually use debug-info vended children as the source of information Make Python synthetic children either be valid, or fallback to the dummy, like their C++ counterparts This allows LLDB to actually stop bailing out upon encountering an invalid synthetic children provider front-end, and still displaying the non synthetized ivar info llvm-svn: 192741
-
Richard Smith authored
(eg through template instantiations in multiple modules). llvm-svn: 192740
-
- Oct 15, 2013
-
-
Richard Smith authored
llvm-svn: 192739
-
Yunzhong Gao authored
reject this test case at the Sema stage, so no CodeGen test should be needed. llvm-svn: 192738
-
Andrew Kaylor authored
llvm-svn: 192737
-
Eric Christopher authored
llvm-svn: 192736
-
Eric Christopher authored
llvm-svn: 192735
-
Chad Rosier authored
scalar signed saturating negate instructions. llvm-svn: 192734
-
Chad Rosier authored
scalar signed saturating negate instructions. llvm-svn: 192733
-
Andrew Kaylor authored
llvm-svn: 192732
-
Adrian Prantl authored
llvm-svn: 192731
-
Manman Ren authored
PR17309 llvm-svn: 192730
-
Richard Smith authored
__builtin_isnan, and __builtin_isnormal. Patch by Karthik Bhat! Tests by me. llvm-svn: 192729
-
Benjamin Kramer authored
+ 80 cols fix. llvm-svn: 192728
-
Reid Kleckner authored
If unqualified id lookup fails while parsing a class template with a dependent base, clang with -fms-compatibility will pretend the user prefixed the name with 'this->' in order to delay the lookup. However, if there was a unary ampersand, Sema::ActOnDependentIdExpression() will create a DependentDeclRefExpr, which is not what we wanted at all. Fix this by building the CXXDependentScopeMemberExpr directly instead. In order to be fully MSVC compatible, we would have to defer all attempts at name lookup to instantiation time. However, until we have real problems with system headers that can't be parsed, we'll put off implementing that. Fixes PR16014. Reviewers: rsmith Differential Revision: http://llvm-reviews.chandlerc.com/D1892 llvm-svn: 192727
-
Enrico Granata authored
llvm-svn: 192725
-
Enrico Granata authored
llvm-svn: 192724
-
Rui Ueyama authored
Clang-modernize uses clang-apply-replacements internally but its CMakefile.txt lacked the dependency. llvm-svn: 192723
-
Michael Liao authored
- Type of index used in extract_vector_elt or insert_vector_elt supposes to be TLI.getVectorIdxTy() which is pointer type on most targets. It'd better to truncate (or zero-extend in case it's changed later) it to mask element type to guarantee they are matching instead of asserting that. llvm-svn: 192722
-
Michael Liao authored
- Lower signed division by constant powers-of-2 to target-independent DAG operators instead of target-dependent ones to support them better on targets where vector types are legal but shift operators on that types are illegal. E.g., on AVX, PSRAW is only available on <8 x i16> though <16 x i16> is a legal type. llvm-svn: 192721
-