Chris Lattner
76fd170cbc
adjust for asmprinter change.
...
llvm-svn: 65741
2009-03-01 00:26:51 +00:00
Chris Lattner
f8c9dfe644
adjust for asmprinter change.
...
llvm-svn: 65740
2009-03-01 00:25:46 +00:00
Chris Lattner
3680a9598e
adjust test to make it more robust
...
llvm-svn: 65739
2009-03-01 00:24:40 +00:00
Chris Lattner
f270618038
Fix a long-standing bug and misfeature of the disassembler: when dealing with a
...
stripped .bc file, it didn't make any attempt to try to reuse anonymous types.
This causes an amazing type explosion due to types getting duplicated everywhere
they are referenced and other problems.
This also caused correctness issues, because opaque types are unique for each time
they are uttered in the file. This means that stripping a .bc file could produce
a .ll file that could not be assembled (e.g. 2009-02-28-StripOpaqueName.ll).
This patch fixes both of these issues.
llvm-svn: 65738
2009-03-01 00:03:38 +00:00
Chris Lattner
1a7eac8434
move type name population out of TypePrinting class into a static
...
AsmWriter.cpp method.
llvm-svn: 65736
2009-02-28 23:20:19 +00:00
Chris Lattner
666bf65fa3
switch to densemap for pointer->word map.
...
llvm-svn: 65735
2009-02-28 23:03:55 +00:00
Chris Lattner
2396ce476a
delete a bunch of duplicated type printing logic, using the type printing
...
stuff in AsmWriter.cpp for Type::getDescription().
llvm-svn: 65734
2009-02-28 23:01:57 +00:00
Chris Lattner
2b04164c1d
make this work when constructed with a null module*
...
llvm-svn: 65733
2009-02-28 23:01:30 +00:00
Gabor Greif
2def3e8ae7
add description how the ilist_traits<Instruction> works
...
llvm-svn: 65732
2009-02-28 22:46:37 +00:00
Chris Lattner
34181d9bcc
the module is not required to exist, allow it to default, giving this
...
class a nice default ctor.
llvm-svn: 65731
2009-02-28 22:41:33 +00:00
Chris Lattner
28f2b3c2a4
disable copying and assignment.
...
llvm-svn: 65730
2009-02-28 22:35:24 +00:00
Chris Lattner
03e16b833f
expose TypePrinting as a public API.
...
llvm-svn: 65729
2009-02-28 22:34:45 +00:00
Chris Lattner
d3bb67a595
one less space, fixes failure with rebuilt llvm-gcc.
...
llvm-svn: 65728
2009-02-28 22:20:02 +00:00
Bill Wendling
012bf508b5
Fix grammaro.
...
llvm-svn: 65727
2009-02-28 22:12:54 +00:00
Chris Lattner
5b8bf4f327
rename 'Result' to 'OS' in CalcTypeName for consistency
...
llvm-svn: 65724
2009-02-28 21:27:31 +00:00
Chris Lattner
5eaaf4a96d
do not embed the raw_ostream into TypePrinting, pass it as an argument to print etc.
...
llvm-svn: 65723
2009-02-28 21:26:53 +00:00
Chris Lattner
e0a45a4296
stop calling Type::getDescription().
...
llvm-svn: 65722
2009-02-28 21:18:43 +00:00
Chris Lattner
c75ef1bf12
simplifications
...
llvm-svn: 65721
2009-02-28 21:11:05 +00:00
Chris Lattner
f47615197e
Change WriteTypeSymbolic to not put a space out before types, also, remove
...
the old std::ostream version.
llvm-svn: 65720
2009-02-28 21:05:51 +00:00
Chris Lattner
9e0c90d568
make CalcTypeName take a stream instead of a string to concat onto,
...
eliminate redundant opaque handling code.
llvm-svn: 65716
2009-02-28 20:49:40 +00:00
Chris Lattner
e89d5cf8ea
remove a bunch of nearly-duplicated code.
...
llvm-svn: 65715
2009-02-28 20:40:29 +00:00
Chris Lattner
6a44ecb340
fix indentation, remove dead integer case.
...
llvm-svn: 65714
2009-02-28 20:35:42 +00:00
Chris Lattner
ad8d445e97
pull calcTypeName into TypePrinting class, make its type stack
...
be a smallvector instead of vector.
llvm-svn: 65713
2009-02-28 20:34:19 +00:00
Chris Lattner
e0fb715ace
inline method into its only use and simplify the result.
...
llvm-svn: 65712
2009-02-28 20:31:14 +00:00
Chris Lattner
0d6a6602c5
simplify condition
...
llvm-svn: 65711
2009-02-28 20:28:50 +00:00
Chris Lattner
9fd658a250
start refactoring the .ll printer: introduce a new TypePrinting class
...
and move all related stuff to it.
llvm-svn: 65710
2009-02-28 20:25:14 +00:00
Chris Lattner
7138f9c917
add a stub for Roadsend PHP
...
llvm-svn: 65705
2009-02-28 18:58:01 +00:00
Chris Lattner
0472bd03d4
don't use the word 'aggregate' with constants, it is confusing.
...
llvm-svn: 65702
2009-02-28 18:32:25 +00:00
Chris Lattner
61fca97b76
don't redescribe bitcast constraints in two places. It is not valid to
...
bitcast from one aggregate to another.
llvm-svn: 65700
2009-02-28 18:27:03 +00:00
Chris Lattner
af8467a57f
reject 0 element vectors with:
...
@a = internal constant void bitcast(<0 x i8> <> to void)
^
Fixes PR3685
llvm-svn: 65698
2009-02-28 18:12:41 +00:00
Nick Lewycky
3134ef23bb
Update this text for first-class aggregates.
...
llvm-svn: 65697
2009-02-28 17:30:06 +00:00
Bill Wendling
a054357656
Fix typo. Found by William Moss.
...
llvm-svn: 65693
2009-02-28 12:26:34 +00:00
Bill Wendling
0b35200185
There is a way to specify targets that should succeed. It's the "XTARGET"
...
keyword.
llvm-svn: 65692
2009-02-28 12:11:01 +00:00
Gabor Greif
5d9be2cffd
make traits more flexible by splitting out node-related fragment
...
llvm-svn: 65690
2009-02-28 10:17:32 +00:00
Evan Cheng
9c3ce7905e
Last commit accidentially deleted this code.
...
llvm-svn: 65679
2009-02-28 06:02:14 +00:00
Evan Cheng
c26c11bbd0
Avoid unused parameter warning.
...
llvm-svn: 65670
2009-02-28 01:10:24 +00:00
Stuart Hastings
2df75807ab
Unable to say "TARGET: *-*-darwin*"; falling back to "XFAIL: linux,ia64,alpha,sparc".
...
llvm-svn: 65667
2009-02-28 00:56:37 +00:00
Mon P Wang
0258a27c5a
Added another darwin subtarget
...
llvm-svn: 65662
2009-02-28 00:25:30 +00:00
Stuart Hastings
ccf3b20973
Testcase to insure C strings go to the cstring
...
section. Darwin-specific.
llvm-svn: 65655
2009-02-27 22:35:12 +00:00
Devang Patel
c908eb0dba
It is possible that subprgoram definition is only encoding return value directly, instsad of an DIArray of all argument types.
...
llvm-svn: 65643
2009-02-27 18:05:21 +00:00
Gabor Greif
078dabaf4a
group friendship
...
llvm-svn: 65633
2009-02-27 15:46:23 +00:00
Rafael Espindola
880e63bf01
Refactor TLS code and add some tests. The tests and expected results are:
...
pic | declaration | linkage | visibility |
!pic | declaration | external | default | tls1.ll tls2.ll | local exec
pic | declaration | external | default | tls1-pic.ll tls2-pic.ll | general dynamic
!pic | !declaration | external | default | tls3.ll tls4.ll | initial exec
pic | !declaration | external | default | tls3-pic.ll tls4-pic.ll | general dynamic
!pic | declaration | external | hidden | tls7.ll tls8.ll | local exec
pic | declaration | external | hidden | X | local dynamic
!pic | !declaration | external | hidden | tls9.ll tls10.ll | local exec
pic | !declaration | external | hidden | X | local dynamic
!pic | declaration | internal | default | tls5.ll tls6.ll | local exec
pic | declaration | internal | default | X | local dynamic
The ones marked with an X have not been implemented since local dynamic is not implemented.
llvm-svn: 65632
2009-02-27 13:37:18 +00:00
Gabor Greif
97657f3984
document ilist_traits
...
llvm-svn: 65631
2009-02-27 13:28:07 +00:00
Gabor Greif
55ffced15e
Expand a bit on iplist. If you are more expert on this class, please review!
...
llvm-svn: 65630
2009-02-27 12:02:19 +00:00
Gabor Greif
f727fa8225
update ilist documentation and add some blurb on ilist_node
...
llvm-svn: 65629
2009-02-27 11:37:41 +00:00
Gabor Greif
a60fa9b553
update year
...
llvm-svn: 65628
2009-02-27 11:28:46 +00:00
Gabor Greif
154b0b2765
fix comments
...
llvm-svn: 65627
2009-02-27 09:33:37 +00:00
Gabor Greif
9b51fe4ab1
Introduce a new technique for merging BasicBlock with Instruction sentinel by superposition.
...
This looks dangerous, but isn't because the sentinel is accessed in special way only,
namely the Next and Prev fields of it, and these are guaranteed to exist.
llvm-svn: 65626
2009-02-27 08:41:37 +00:00
Ted Kremenek
c72e0a278d
Update release notes for static analyzer.
...
llvm-svn: 65624
2009-02-27 07:01:32 +00:00
Mikhail Glushenkov
65cb3e0861
'append_cmd' should split its argument.
...
Makes '(append_cmd "-foo a b c")' work.
llvm-svn: 65623
2009-02-27 06:46:55 +00:00