Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | AnalyzeBranch doesn't change which successors a bb has, just the order | Rafael Espindola | 2011-06-12 | 1 | -4/+11 | |
| | | | | | | | | | | | | | | | | | | we try to branch to them. Before we were creating successor lists with duplicated entries. Fixing that found a bug in isBlockOnlyReachableByFallthrough that would causes it to return the wrong answer for ----------- ... jne foo jmp bar foo: ---------- llvm-svn: 132882 | |||||
* | Ensure that EmitGlobalVariable is correctly differentiating between declarations | Chad Rosier | 2011-06-10 | 1 | -1/+1 | |
| | | | | | | | | and definitions when emitting global variables. This was causing global declarations to be emitted as if they were definitions. Fixes <rdar://problem/9429892>. llvm-svn: 132825 | |||||
* | When generating code for Win64 EH, emit StartProc and EndProc directives. | Charles Davis | 2011-05-28 | 1 | -0/+5 | |
| | | | | llvm-svn: 132250 | |||||
* | Fix the root cause of the bootstrap failure: | Rafael Espindola | 2011-05-28 | 1 | -1/+1 | |
| | | | | | | | | There was no way to check if a given register/mode pair was valid. We now return an error code (-2) instead of asserting. If anyone thinks that an assert at this point is really needed, we can autogen a hasValidDwarfRegNum instead. llvm-svn: 132236 | |||||
* | Stub out support for Win64-style exceptions. Note that this is merely using | Charles Davis | 2011-05-27 | 1 | -0/+3 | |
| | | | | | | | the Win64 EH mechanism to implement GCC-style exceptions. LLVM supports hardly anything else at this point! llvm-svn: 132234 | |||||
* | Fix a regression I recently introduced by removing DwarfRegNum of | Rafael Espindola | 2011-05-27 | 1 | -1/+18 | |
| | | | | | | | | | | subregisters: When a value is in a subregister, at least report the location as being the superregister. We should extend the .td files to encode the bit range so that we can produce a DW_OP_bit_piece. llvm-svn: 132224 | |||||
* | Make size computation less brittle. | Rafael Espindola | 2011-05-27 | 1 | -20/+0 | |
| | | | | llvm-svn: 132222 | |||||
* | Replace the -unwind-tables option with a per function flag. This is more | Rafael Espindola | 2011-05-25 | 1 | -7/+3 | |
| | | | | | | | LTO friendly as we can now correctly merge files compiled with or without -fasynchronous-unwind-tables. llvm-svn: 132033 | |||||
* | Produce a __debug_frame section on darwin ARM when appropriate. | Rafael Espindola | 2011-05-10 | 1 | -6/+6 | |
| | | | | llvm-svn: 131151 | |||||
* | Use .cfi_sections to put the unwind info in .debug_frame when possible. With | Rafael Espindola | 2011-05-10 | 1 | -8/+8 | |
| | | | | | | | | | this clang will use .debug_frame in, for example, clang -g -c -m32 test.c This matches gcc's behaviour. It looks like .debug_frame is a bit bigger than .eh_frame, but has the big advantage of not being allocated. llvm-svn: 131140 | |||||
* | Nothing else uses this label. | Rafael Espindola | 2011-05-06 | 1 | -3/+0 | |
| | | | | llvm-svn: 130989 | |||||
* | Dead code elimination. | Rafael Espindola | 2011-05-06 | 1 | -3/+2 | |
| | | | | llvm-svn: 130984 | |||||
* | Remove the DwarfTable enum. | Rafael Espindola | 2011-05-05 | 1 | -3/+0 | |
| | | | | llvm-svn: 130959 | |||||
* | Implement a really simple DwarfSjLjException. | Rafael Espindola | 2011-05-05 | 1 | -0/+2 | |
| | | | | llvm-svn: 130947 | |||||
* | List all exception types in a switch. | Rafael Espindola | 2011-05-05 | 1 | -14/+15 | |
| | | | | llvm-svn: 130944 | |||||
* | Hoist MCLineEntry construction AsmPrinter so that anyone who derives from ↵ | Devang Patel | 2011-04-29 | 1 | -0/+3 | |
| | | | | | | | | AsmPrinter can have line number entries. PR 9810 llvm-svn: 130518 | |||||
* | Factor some code to needsCFIMoves. Avoid printing moves when we don't have to. | Rafael Espindola | 2011-04-29 | 1 | -2/+18 | |
| | | | | llvm-svn: 130501 | |||||
* | Teach dwarf writer to handle complex address expression for .debug_loc entries. | Devang Patel | 2011-04-28 | 1 | -17/+33 | |
| | | | | | | | This fixes clang generated blocks' variables' debug info. Radar 9279956. llvm-svn: 130373 | |||||
* | Revert r130178. It turned out to be not the optimal path to emit complex ↵ | Devang Patel | 2011-04-27 | 1 | -4/+3 | |
| | | | | | | location expressions. llvm-svn: 130326 | |||||
* | Print the label if we will use it in debug_frame. | Rafael Espindola | 2011-04-26 | 1 | -2/+5 | |
| | | | | llvm-svn: 130232 | |||||
* | don't emit the symbol name twice for local bss and common | Chris Lattner | 2011-04-26 | 1 | -6/+0 | |
| | | | | | | | | | | | symbols. For example, don't emit: .comm _i,4,2 ## @i ## @i instead emit: .comm _i,4,2 ## @i llvm-svn: 130192 | |||||
* | Print all the moves at a given label instead of just the first one. | Rafael Espindola | 2011-04-26 | 1 | -5/+5 | |
| | | | | | | Remove previous DwarfCFI hack. llvm-svn: 130187 | |||||
* | Let dwarf writer allocate extra space in the debug location expression. This ↵ | Devang Patel | 2011-04-26 | 1 | -3/+4 | |
| | | | | | | space, if requested, will be used for complex addresses of the Blocks' variables. llvm-svn: 130178 | |||||
* | Refactor. | Devang Patel | 2011-04-21 | 1 | -0/+34 | |
| | | | | llvm-svn: 129938 | |||||
* | Reduce clutter in asm output. Do not emit source location as comment for ↵ | Devang Patel | 2011-04-18 | 1 | -28/+0 | |
| | | | | | | each instruction. llvm-svn: 129715 | |||||
* | Some refactoring suggested by Anton Korobeynikov. | Rafael Espindola | 2011-04-15 | 1 | -18/+1 | |
| | | | | llvm-svn: 129600 | |||||
* | Add 129518 back with a fix for when we are producing eh just because of ↵ | Rafael Espindola | 2011-04-15 | 1 | -0/+43 | |
| | | | | | | | | | debug info. Change ELF systems to use CFI for producing the EH tables. This reduces the size of the clang binary in Debug builds from 690MB to 679MB. llvm-svn: 129571 | |||||
* | Revert r129518, "Change ELF systems to use CFI for producing the EH tables. ↵ | NAKAMURA Takumi | 2011-04-15 | 1 | -43/+0 | |
| | | | | | | | | This reduces the" It broke several builds. llvm-svn: 129557 | |||||
* | Change ELF systems to use CFI for producing the EH tables. This reduces the | Rafael Espindola | 2011-04-14 | 1 | -0/+43 | |
| | | | | | | size of the clang binary in Debug builds from 690MB to 679MB. llvm-svn: 129518 | |||||
* | Print visibility info for external variables. | Rafael Espindola | 2011-04-05 | 1 | -10/+12 | |
| | | | | llvm-svn: 128887 | |||||
* | Tidy up. 80 columns and trailing whitespace. | Jim Grosbach | 2011-03-29 | 1 | -145/+146 | |
| | | | | llvm-svn: 128504 | |||||
* | Some first rudimentary support for ARM EHABI: print exception table in "text ↵ | Anton Korobeynikov | 2011-03-05 | 1 | -0/+3 | |
| | | | | | | mode". llvm-svn: 127099 | |||||
* | Omit private_extern declarations of extern symbols; followup to | Stuart Hastings | 2011-02-23 | 1 | -3/+7 | |
| | | | | | | r124468. Patch by Rafael Avila de Espindola! llvm-svn: 126297 | |||||
* | Spelling fix: consequtive -> consecutive. | Duncan Sands | 2011-02-15 | 1 | -1/+1 | |
| | | | | llvm-svn: 125563 | |||||
* | Assert on bad jump tables. | Jakob Stoklund Olesen | 2011-02-09 | 1 | -0/+1 | |
| | | | | llvm-svn: 125225 | |||||
* | Print the visibility of declarations. | Rafael Espindola | 2011-01-28 | 1 | -1/+14 | |
| | | | | llvm-svn: 124468 | |||||
* | Add a possibility to switch between CFI directives- and table-based frame ↵ | Anton Korobeynikov | 2011-01-14 | 1 | -1/+9 | |
| | | | | | | description emission. Currently all the backends use table-based stuff. llvm-svn: 123476 | |||||
* | Split stuff as a preparation for CFI directives-based frame information emission | Anton Korobeynikov | 2011-01-14 | 1 | -2/+2 | |
| | | | | llvm-svn: 123473 | |||||
* | split dom frontier handling stuff out to its own DominanceFrontier header, | Chris Lattner | 2011-01-02 | 1 | -0/+1 | |
| | | | | | | so that Dominators.h is *just* domtree. Also prune #includes a bit. llvm-svn: 122714 | |||||
* | remove the verbose-asm "constant pool double" comments that we were printing | Chris Lattner | 2010-12-13 | 1 | -8/+0 | |
| | | | | | | | | | | | for each constant pool entry. Using WriteTypeSymbolic here takes time proportional to the size of the module, for each constant pool entry. This speeds up -verbose-asm llc on 252.eon (a random testcase at my disposal) from 4.4s to 2.137s. llc takes 2.11s with asm-verbose off, so this is now a pretty reasonable cost for verbose comments. llvm-svn: 121691 | |||||
* | refactor the interface to EmitInlineAsm a bit, no functionality change. | Chris Lattner | 2010-11-17 | 1 | -1/+1 | |
| | | | | llvm-svn: 119482 | |||||
* | s/beginScope/beginInstruction/g | Devang Patel | 2010-10-26 | 1 | -2/+2 | |
| | | | | | | s/endScope/endInstruction/g llvm-svn: 117376 | |||||
* | the latest assembler that runs on powerpc 10.4 machines doesn't | Chris Lattner | 2010-09-27 | 1 | -2/+10 | |
| | | | | | | | support aligned comm. Detect when compiling for 10.4 and don't emit an alignment for comm. THis will hopefully fix PR8198. llvm-svn: 114817 | |||||
* | add a comment about where this should eventually move. | Chris Lattner | 2010-09-05 | 1 | -0/+7 | |
| | | | | llvm-svn: 113117 | |||||
* | There is no need to use .set here. | Devang Patel | 2010-09-02 | 1 | -8/+1 | |
| | | | | | | Thanks Chris! llvm-svn: 112900 | |||||
* | Fix .debug_range for linux. Patch by Krister Wombell. | Devang Patel | 2010-09-02 | 1 | -0/+23 | |
| | | | | llvm-svn: 112830 | |||||
* | remove unions from LLVM IR. They are severely buggy and not | Chris Lattner | 2010-08-28 | 1 | -18/+0 | |
| | | | | | | being actively maintained, improved, or extended. llvm-svn: 112356 | |||||
* | Create the new linker type "linker_private_weak_def_auto". | Bill Wendling | 2010-08-20 | 1 | -2/+8 | |
| | | | | | | | | | | | It's similar to "linker_private_weak", but it's known that the address of the object is not taken. For instance, functions that had an inline definition, but the compiler decided not to inline it. Note, unlike linker_private and linker_private_weak, linker_private_weak_def_auto may have only default visibility. The symbols are removed by the linker from the final linked image (executable or dynamic library). llvm-svn: 111684 | |||||
* | Improve whitespace. | Bill Wendling | 2010-08-18 | 1 | -1/+2 | |
| | | | | llvm-svn: 111384 | |||||
* | Reapply r110396, with fixes to appease the Linux buildbot gods. | Owen Anderson | 2010-08-06 | 1 | -1/+1 | |
| | | | | llvm-svn: 110460 |