| Commit message (Collapse) | Author | Age | Files | Lines | 
| ... |  | 
| | 
| 
| 
| 
| 
|  | 
for target definitions.
llvm-svn: 143731
 | 
| | 
| 
| 
| 
| 
|  | 
added a layer of indirection with no value (not even conciseness).
llvm-svn: 143727
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
DW_AT_specification to
point back in the file in the included testcase. Fixes PR11300.
llvm-svn: 143726
 | 
| | 
| 
| 
|  | 
llvm-svn: 143719
 | 
| | 
| 
| 
|  | 
llvm-svn: 143712
 | 
| | 
| 
| 
|  | 
llvm-svn: 143695
 | 
| | 
| 
| 
|  | 
llvm-svn: 143683
 | 
| | 
| 
| 
| 
| 
|  | 
affect codegen.
llvm-svn: 143675
 | 
| | 
| 
| 
|  | 
llvm-svn: 143670
 | 
| | 
| 
| 
|  | 
llvm-svn: 143669
 | 
| | 
| 
| 
| 
| 
|  | 
the end of it is dead.", which appears to break bootstrapping LLVM.
llvm-svn: 143668
 | 
| | 
| 
| 
| 
| 
| 
|  | 
across calls, and only check for nested dependences on the special
call-sequence-resource register.
llvm-svn: 143660
 | 
| | 
| 
| 
|  | 
llvm-svn: 143646
 | 
| | 
| 
| 
|  | 
llvm-svn: 143640
 | 
| | 
| 
| 
|  | 
llvm-svn: 143634
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
Only currently done if the later store is writing to a power of 2 address or 
has the same alignment as the earlier store as then its likely to not break up
large stores into smaller ones
Fixes <rdar://problem/10140300>
llvm-svn: 143630
 | 
| | 
| 
| 
|  | 
llvm-svn: 143612
 | 
| | 
| 
| 
|  | 
llvm-svn: 143603
 | 
| | 
| 
| 
| 
| 
|  | 
hoist them out of loops.  Fixes <rdar://problem/6027699>
llvm-svn: 143600
 | 
| | 
| 
| 
| 
| 
|  | 
compatibility in the BitcodeReader.
llvm-svn: 143598
 | 
| | 
| 
| 
|  | 
llvm-svn: 143594
 | 
| | 
| 
| 
|  | 
llvm-svn: 143591
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
into the function. Reflect that here so that the array will be placed next to
the SP.
<rdar://problem/10128329>
llvm-svn: 143590
 | 
| | 
| 
| 
| 
| 
|  | 
alignment permits.
llvm-svn: 143582
 | 
| | 
| 
| 
| 
| 
|  | 
implied by directory index zero.
llvm-svn: 143570
 | 
| | 
| 
| 
|  | 
llvm-svn: 143562
 | 
| | 
| 
| 
|  | 
llvm-svn: 143561
 | 
| | 
| 
| 
|  | 
llvm-svn: 143559
 | 
| | 
| 
| 
| 
| 
|  | 
One-register lists are legal on LDM/STM instructions, but we should not print the PUSH/POP aliases when they appear.  This fixes round tripping on this instruction.
llvm-svn: 143557
 | 
| | 
| 
| 
| 
| 
|  | 
Thanks to Nick for spotting this!
llvm-svn: 143556
 | 
| | 
| 
| 
| 
| 
|  | 
alias, not to LDM/STM instructions.  Revert r143552.
llvm-svn: 143553
 | 
| | 
| 
| 
| 
| 
|  | 
Alternate encodings are used in that case.
llvm-svn: 143552
 | 
| | 
| 
| 
|  | 
llvm-svn: 143549
 | 
| | 
| 
| 
|  | 
llvm-svn: 143547
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
We've been hitting asserts in this code due to the many supported
combintions of modes (iv-rewrite/no-iv-rewrite) and IV types. This
second rewrite of the code attempts to deal with these cases systematically.
llvm-svn: 143546
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
the mailing list. Suggestions for other statistics to collect would be
awesome. =]
Currently these are implemented as a separate pass guarded by a separate
flag. I'm not thrilled by that, but I wanted to be able to collect the
statistics for the old code placement as well as the new in order to
have a point of comparison. I'm planning on folding them into the single
pass if / when there is only one pass of interest.
llvm-svn: 143537
 | 
| | 
| 
| 
|  | 
llvm-svn: 143536
 | 
| | 
| 
| 
| 
| 
|  | 
silence -Wparentheses.
llvm-svn: 143534
 | 
| | 
| 
| 
|  | 
llvm-svn: 143529
 | 
| | 
| 
| 
| 
| 
|  | 
links functions marked with specific linkage (internal, private, linker_private, linker_private_weak, linker_private_weak_def_auto, linkonce, linkonce_odr, and available_externally) if they have uses in the destination module. Instead of automatically linking, these functions are placed onto a worklist to be processed in the final stage of linking. We iterate over the list and if any functions on the list have uses in the destination module, we link them in and repeat the process until no changes in the state (uses) has changed. This means that any functions in the LazilyLink worklist that have a use in the destination module will be linked in and none that don't.
llvm-svn: 143524
 | 
| | 
| 
| 
|  | 
llvm-svn: 143523
 | 
| | 
| 
| 
| 
| 
|  | 
Narrowest possible fix for PR11279.
llvm-svn: 143522
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
it is separating the directory part from the basename of the FileName.  Noticed 
that this:
  .file 1 "dir/foo"
when assembled got the two parts switched.  Using the Mac OS X dwarfdump tool
it can be seen easily:
% dwarfdump -a a.out
include_directories[  1] = 'foo'
                Dir  Mod Time   File Len   File Name
                ---- ---------- ---------- ---------------------------
file_names[  1]    1 0x00000000 0x00000000 dir
...
Which should be:
...
include_directories[  1] = 'dir'
                Dir  Mod Time   File Len   File Name
                ---- ---------- ---------- ---------------------------
file_names[  1]    1 0x00000000 0x00000000 foo
llvm-svn: 143521
 | 
| | 
| 
| 
| 
| 
|  | 
For example, labels from Objective-C sources.
llvm-svn: 143511
 | 
| | 
| 
| 
|  | 
llvm-svn: 143510
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
-g flag.  In this part we generate the .file for the source being assembled and
the .loc's for the assembled instructions.
The next part will be to generate the dwarf Compile Unit DIE and a dwarf
subprogram DIE for each non-temporary label.
Once the next part is done test cases will be added.  rdar://9275556
llvm-svn: 143509
 | 
| | 
| 
| 
|  | 
llvm-svn: 143507
 | 
| | 
| 
| 
|  | 
llvm-svn: 143502
 | 
| | 
| 
| 
|  | 
llvm-svn: 143501
 | 
| | 
| 
| 
| 
| 
|  | 
constant splat value.  Fixes PR11289.
llvm-svn: 143498
 |