- Feb 14, 2014
-
-
Howard Hinnant authored
llvm-svn: 201432
-
Eli Bendersky authored
llvm-svn: 201430
-
David Blaikie authored
Recommitting r201380 (reverted in r201389) Recommitting r201351 and r201355 (reverted in r201351 and r201355) We weren't emitting the an empty (header only) line table when the line table was empty - this made the DWARF invalid (the compile unit would point to the zero-size debug_lines section where there should've been an empty line table but there was nothing at all). Fix that, and as a consequence this works around/addresses PR18809. Also, we emit a non-empty line table to workaround a darwin linker bug, so XFAILing on darwin too. Also, mark the test as 'REQUIRES: object-emission' because it does. llvm-svn: 201429
-
Diego Novillo authored
Summary: This adds support for emitting DWARF path discriminator values in the object streamer. It also changes the DWARF dumper to show discriminator values in the line table output. Reviewers: echristo CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D2794 llvm-svn: 201427
-
Reed Kotler authored
1) Fix a specific bug when certain conversion functions are called in a program compiled as mips16 with hard float and the program is linked as c++. There are two libraries that are reversed in the link order with gcc/g++ and clang/clang++ for mips16 in this case and the proper stubs will then not be called. These stubs are normally handled in the Mips16HardFloat pass but in this case we don't know at that time that we need to generate the stubs. This must all be handled later in code generation and we have moved this functionality to MipsAsmPrinter. When linked as C (gcc or clang) the proper stubs are linked in from libc. 2) Set up the infrastructure to handle 90% of what is in the Mips16HardFloat pass in this new area of MipsAsmPrinter. This is a more logical place to handle this and we have known for some time that we needed to move the code later and not implement it using inline asm as we do now but it was not clear exactly where to do this and what mechanism should be used. Now it's clear to us how to do this and this patch contains the infrastructure to move most of this to MipsAsmPrinter but the actual moving will be done in a follow on patch. The same infrastructure is used to fix this current bug as described in #1. This change was requested by the list during the original putback of the Mips16HardFloat pass but was not practical for us do at that time. llvm-svn: 201426
-
Rafael Espindola authored
Extracted while trying to understand http://llvm-reviews.chandlerc.com/D1764. Patch by Matt Arsenault. llvm-svn: 201425
-
Artyom Skrobov authored
Patch by Keith Walker! llvm-svn: 201423
-
Kevin Qin authored
llvm-svn: 201395
-
Eric Christopher authored
Revert "DebugInfo: Don't include the name of the CU file in the line table file list when it's unneeded" This reverts commit r201380 for now while we investigate. llvm-svn: 201389
-
NAKAMURA Takumi authored
llvm-svn: 201388
-
Jiangning Liu authored
llvm-svn: 201385
-
NAKAMURA Takumi authored
I added it in r201211. llvm-svn: 201383
-
Hao Liu authored
As v1i1 is illegal, the type legalizer tries to scalarize such node. But if the type operands of SETCC is legal, the scalarization algorithm will cause an assertion failure. llvm-svn: 201381
-
David Blaikie authored
Recommitting r201351 and r201355 (reverted in r201351 and r201355) We weren't emitting the an empty (header only) line table when the line table was empty - this made the DWARF invalid (the compile unit would point to the zero-size debug_lines section where there should've been an empty line table but there was nothing at all). Fix that, and as a consequence this works around/addresses PR18809. llvm-svn: 201380
-
Eric Christopher authored
option to enable again that will be matched with a commit to enable in clang. llvm-svn: 201378
-
Juergen Ributzka authored
A simple register copy on X86 is just 3 bytes, whereas movabsq is a 10 byte instruction. Marking movabsq as not beeing cheap will allow LICM to move it out of the loop and it also prevents unnecessary rematerializations if the value is needed in more than one register. llvm-svn: 201377
-
Matt Arsenault authored
Makes addrspacecast (gep) do addrspacecast (gep) instead. llvm-svn: 201376
-
Tom Stellard authored
llvm-svn: 201371
-
Tom Stellard authored
Reviewed-by:
Michel Dänzer <michel.daenzer@amd.com> llvm-svn: 201370
-
Tom Stellard authored
llvm-svn: 201369
-
Tom Stellard authored
llvm-svn: 201368
-
Tom Stellard authored
llvm-svn: 201367
-
Rafael Espindola authored
llvm-svn: 201365
-
- Feb 13, 2014
-
-
Hans Wennborg authored
It was pointing to lib\clang\3.4, but now we're on 3.5. Make CMake insert the right version automatically. llvm-svn: 201363
-
Stephen Hines authored
llvm-svn: 201362
-
Diego Novillo authored
llvm-svn: 201361
-
Diego Novillo authored
Summary: There should be a space before each of these two keywords to avoid generating invalid assembly files. NOTE: I could not find an obvious maintainers in CODE_OWNERS.TXT, but this seems related to debug info. Reviewers: echristo CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D2791 llvm-svn: 201359
-
Reid Kleckner authored
In theory, Clang should figure out how to parse this correctly without typename, but since this is the last TU that Clang falls back on in the self-host, I'm going to compromise and check for __clang__. And now Clang can self-host on -win32 without fallback! The 'check' and 'check-clang' targets both pass. llvm-svn: 201358
-
NAKAMURA Takumi authored
llvm-svn: 201355
-
Rafael Espindola authored
An alias is always in the section of its aliasee and has the same alignment (since it has the same address). llvm-svn: 201354
-
Duncan P. N. Exon Smith authored
This patch merges MinVisitNumStack with VisitStack using a StackElement struct. Patch by Mehdi Amini! llvm-svn: 201353
-
Benjamin Kramer authored
llvm-svn: 201352
-
NAKAMURA Takumi authored
[PR18809] Revert r201187, "DebugInfo: Don't include the name of the CU file in the line table file list when it's unneeded" It really crashes cygwin's stage2 configure with "clang -g". llvm-svn: 201351
-
Rafael Espindola authored
This is an optimistic version of create_diretories: it tries to create the directory first and looks at the parent only if that fails. Running strace on "mkdir -p" shows that it is pessimistic, calling mkdir on every element of the path. We could implement that if needed. In any case, with both strategies there is no reason to call stat, just check the return of mkdir. llvm-svn: 201347
-
Rafael Espindola authored
llvm-svn: 201345
-
Benjamin Kramer authored
No intended functionality change. llvm-svn: 201344
-
Rafael Espindola authored
llvm-svn: 201337
-
Rafael Espindola authored
llvm-svn: 201336
-
Rafael Espindola authored
llvm-svn: 201335
-
Daniel Sanders authored
Re-commit: Demote EmitRawText call in AsmPrinter::EmitInlineAsm() and remove hasRawTextSupport() call Summary: AsmPrinter::EmitInlineAsm() will no longer use the EmitRawText() call for targets with mature MC support. Such targets will always parse the inline assembly (even when emitting assembly). Targets without mature MC support continue to use EmitRawText() for assembly output. The hasRawTextSupport() check in AsmPrinter::EmitInlineAsm() has been replaced with MCAsmInfo::UseIntegratedAs which when true, causes the integrated assembler to parse inline assembly (even when emitting assembly output). UseIntegratedAs is set to true for targets that consider any failure to parse valid assembly to be a bug. Target specific subclasses generally enable the integrated assembler in their constructor. The default value can be overridden with -no-integrated-as. All tests that rely on inline assembly supporting invalid assembly (for example, those that use mnemonics such as 'foo' or 'hello world') have been updated to disable the integrated assembler. Changes since review (and last commit attempt): - Fixed test failures that were missed due to configuration of local build. (fixes crash.ll and a couple others). - Fixed tests that happened to pass because the local build was on X86 (should fix 2007-12-17-InvokeAsm.ll) - mature-mc-support.ll's should no longer require all targets to be compiled. (should fix ARM and PPC buildbots) - Object output (-filetype=obj and similar) now forces the integrated assembler to be enabled regardless of default setting or -no-integrated-as. (should fix SystemZ buildbots) Reviewers: rafael Reviewed By: rafael CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D2686 llvm-svn: 201333
-