Chris Lattner
48b753ef9f
remove a redundant test, filecheckize another.
...
llvm-svn: 93774
2010-01-18 21:55:43 +00:00
Evan Cheng
88b65bc835
Canonicalize -1 - x to ~x.
...
Instcombine does this but apparently there are situations where this pattern will escape the optimizer and / or created by isel. Here is a case that's seen in JavaScriptCore:
%t1 = sub i32 0, %a
%t2 = add i32 %t1, -1
The dag combiner pattern: ((c1-A)+c2) -> (c1+c2)-A
will fold it to -1 - %a.
llvm-svn: 93773
2010-01-18 21:38:44 +00:00
Chris Lattner
5a52727ad0
update mkpatch, patch by Garrison Venn!
...
llvm-svn: 93771
2010-01-18 21:09:05 +00:00
Daniel Dunbar
c02aaa7812
Add missing newline.
...
llvm-svn: 93767
2010-01-18 20:55:52 +00:00
Victor Hernandez
870913f707
Make findDbgDeclare/findDbgGlobalDeclare local static functions; avoid Elts array
...
llvm-svn: 93764
2010-01-18 20:42:09 +00:00
Douglas Gregor
c35b54396c
float, double, and long double do need extra data in the
...
BuiltinTypeLoc structure. Thanks, Enea!
llvm-svn: 93763
2010-01-18 20:37:56 +00:00
Victor Hernandez
fdf27a61ea
Simplify MDNode::getFunction() and assertLocalFunction() by avoiding extra Function* variable and smallptrset since function-local metadata cannot be cyclic
...
llvm-svn: 93762
2010-01-18 20:36:54 +00:00
Ted Kremenek
473c7a72f1
Replace clang_getDeclUSR() with clang_getCursorUSR(). Also remove printing 'contexts' from c-index-test output; it wasn't helpful and was extremely brittle.
...
llvm-svn: 93760
2010-01-18 20:23:29 +00:00
Johnny Chen
27f000a9af
The most significant encoding bit of GPR:$src or GPR:$dst was over-specified in
...
the various MOV (register) instructions (16-bit Thumb), including tBRIND (the
indirect branch). Instead of '1', it should be specified as '?', because GPR
only specifies the register class, which includes both hi-and-lo registers.
llvm-svn: 93759
2010-01-18 20:15:56 +00:00
Jim Grosbach
8546ec9c14
Patch by David Conrad:
...
"On ARMv6T2 this turns cttz into rbit, clz instead of the 4 instruction
sequence it is now."
llvm-svn: 93758
2010-01-18 19:58:49 +00:00
Devang Patel
696cb8d410
While mapping llvm.dbg.declare intrinsic manually map its operand, if possible,
...
because it points to an alloca instruction through metadata.
llvm-svn: 93757
2010-01-18 19:52:14 +00:00
Chris Lattner
ffcec8f0d8
reject some invalid IR. We already assert and reject this from the
...
.ll parser, but PR6070 wants it in the verifier too.
llvm-svn: 93756
2010-01-18 19:50:32 +00:00
Bill Wendling
748ceca695
Add FIXME comment.
...
llvm-svn: 93755
2010-01-18 19:47:53 +00:00
Bill Wendling
a73e471c62
- Add a comment to the callback indicating that it's *extremely* not a good
...
idea, but unfortunately necessary.
- Default to using 4-bytes for the LSDA pointer encoding to agree with the
encoded value in the CIE.
llvm-svn: 93753
2010-01-18 19:36:27 +00:00
John McCall
e15bbff98d
Preserve type source information in compound literal expressions.
...
Patch by Enea Zaffanella!
llvm-svn: 93752
2010-01-18 19:35:47 +00:00
Douglas Gregor
9a48db1659
Print fix-it hints properly around tabs, from Christian Adåker!
...
llvm-svn: 93750
2010-01-18 19:28:01 +00:00
Daniel Dunbar
6bc5be24fa
Remove ../libexec from clang program search path, clang-cc is dead.
...
llvm-svn: 93749
2010-01-18 19:16:53 +00:00
Victor Hernandez
cf6830d3eb
Make printing of metadata more robust when function is not found (which is the normal situation for non function-local metadata)
...
llvm-svn: 93748
2010-01-18 19:15:57 +00:00
Mike Stump
211ed4826e
Silence a control reaches end of function warning. Patch by Enea
...
Zaffanella.
llvm-svn: 93743
2010-01-18 18:41:43 +00:00
Fariborz Jahanian
cdb8575c9b
Mostly renaming some methods and updating comments to
...
reflect what these methods are actually doing. One method
template for future work. No change in functionality.
llvm-svn: 93742
2010-01-18 18:41:16 +00:00
Douglas Gregor
fb00d93c98
Make CMake's clang++ installation respect DESTDIR, based on a patch by
...
Ingmar Vanhassel. Fixes PR6046.
llvm-svn: 93741
2010-01-18 18:27:29 +00:00
Douglas Gregor
c9b7a59b30
Improve source-location information for builtin TypeLocs, from Enea
...
Zaffanella (with a couple of my tweaks).
llvm-svn: 93733
2010-01-18 18:04:31 +00:00
Daniel Dunbar
e2aa06d4ae
Don't build/install clang++ in CLANG_IS_PRODUCTION build mode yet.
...
llvm-svn: 93732
2010-01-18 17:52:48 +00:00
Daniel Dunbar
fadf43c2ae
Fix -Asserts warning.
...
llvm-svn: 93731
2010-01-18 17:52:42 +00:00
Daniel Dunbar
e3b3d7a5e4
Fix race condition in creating objdir.
...
llvm-svn: 93730
2010-01-18 17:52:37 +00:00
Daniel Dunbar
ff24e1aa4c
Don't try to build compiler-rt if it happens to be checked out into projects/
...
llvm-svn: 93729
2010-01-18 17:52:28 +00:00
Douglas Gregor
8c94086c90
Encoding calling conventions in the type system, from Charles Davis!
...
llvm-svn: 93726
2010-01-18 17:14:39 +00:00
Anders Carlsson
07894e8a0e
More VTT builder fixes. With these fixes we now correctly handle the very complex VTT example from the Itanium ABI spec.
...
llvm-svn: 93725
2010-01-18 17:13:59 +00:00
Benjamin Kramer
6dea75c658
Unnamed symbol index should be >= 1. This was lost during the mangler refactoring. Fixes PR6067.
...
llvm-svn: 93724
2010-01-18 14:39:20 +00:00
Benjamin Kramer
608fd2b606
Fix refacto reported by Nicolas Geoffray.
...
llvm-svn: 93723
2010-01-18 12:40:05 +00:00
Zhongxing Xu
228b0d4def
Add support for computing size in elements for symbolic regions obtained from
...
malloc().
llvm-svn: 93722
2010-01-18 08:54:31 +00:00
Daniel Dunbar
d382d17f09
Update Apple-style build support for new Makefiles
...
llvm-svn: 93721
2010-01-18 06:49:42 +00:00
Daniel Dunbar
efd84e770b
Add support for "platform" configurations, which define a suite of compiler-rt
...
libraries to generate.
- Each library may be built with different flags and for different
architectures, and there is support for building Darwin style fat archives.
- Uses an ambituous amount of make programming, but should be hidden to
users and developers.
llvm-svn: 93720
2010-01-18 06:49:33 +00:00
Daniel Dunbar
16c5071c6d
Remove old build logic, this is going to be replaced by a more configurable mechanism shortly.
...
llvm-svn: 93719
2010-01-18 06:49:16 +00:00
Daniel Dunbar
6bcbef6230
Rename subdir 'Target' variable to 'Implementation' to be less overloaded.
...
llvm-svn: 93718
2010-01-18 06:49:09 +00:00
Daniel Dunbar
8e5a2f084a
Add 'SelectFunctionDir' function, to select appropriate function implementation based on a configuration and architecture.
...
llvm-svn: 93717
2010-01-18 06:48:56 +00:00
Daniel Dunbar
ae28e68d09
Add more make utility functions.
...
- With tests. :)
llvm-svn: 93716
2010-01-18 06:48:48 +00:00
Daniel Dunbar
2d9816e44b
Change subdir traversal to primarily cache information about what is available in subdirectories.
...
- Rest of makefiles will move to using the information after it has been computed, instead of during subdir traversal.
Also, add 'make info-functions' target, which prints information on all the functions available in compiler-rt.
Also, add 'make help-devel' for listing help on targets intended for compiler-rt developers or direct users.
llvm-svn: 93715
2010-01-18 06:48:40 +00:00
Daniel Dunbar
56e0eb9fc9
Simplify subdirectory makefiles, and be more robust by checking that they define the appropriate variables.
...
llvm-svn: 93714
2010-01-18 06:48:33 +00:00
Daniel Dunbar
40d6f65ae1
Add basic make {help,help-hidden} targets.
...
llvm-svn: 93713
2010-01-18 06:48:19 +00:00
Daniel Dunbar
43164b34b1
Rename DebugMake variable to DEBUGMAKE for consistency (variables that are designed to be overridden), and use VERBOSE=1 instead of VERBOSE!="" for controlling verbosity.
...
llvm-svn: 93712
2010-01-18 06:48:12 +00:00
Daniel Dunbar
32f75c6a42
Unbreak trampoline test.
...
llvm-svn: 93711
2010-01-18 06:48:06 +00:00
Anders Carlsson
3d1a09552c
Move some common code into BuildVTT.
...
llvm-svn: 93710
2010-01-18 04:45:46 +00:00
Anders Carlsson
1af3df854f
Fix a bunch of VTT layout bugs, add simple tests for VTT layout.
...
llvm-svn: 93709
2010-01-18 04:25:18 +00:00
Zhongxing Xu
5fcd99b10f
Add test case for pr6069.
...
llvm-svn: 93708
2010-01-18 04:01:40 +00:00
Anders Carlsson
25933d4ecd
Update virt.cpp for changes to the LLVM asm printer (?) This test should really be all LLVM IR...
...
llvm-svn: 93707
2010-01-18 03:58:13 +00:00
Zhongxing Xu
e2bdb9a6e2
If the symbol has not been tracked, do not free it. This is possible when free
...
is called on a pointer that does not get its value directly from malloc.
llvm-svn: 93706
2010-01-18 03:27:34 +00:00
Bob Wilson
7430a98619
Emit spaces after commas in Neon register lists. This is more consistent
...
with the rest of the assembly output, is easier to read, and matches the
expected output for gcc's Neon tests.
llvm-svn: 93703
2010-01-18 01:24:43 +00:00
Chris Lattner
1d8b954b43
switch x86 zerofill emission over to use MCStreamer.
...
llvm-svn: 93702
2010-01-18 01:21:08 +00:00
Chris Lattner
8c21ffdcc6
Change CurrentFnSym to be a non-const pointer since asmprinter mutates it
...
as it emits code. Switch .globl directives to use OutStreamer instead of
doing it textually (in x86)
llvm-svn: 93700
2010-01-18 00:59:24 +00:00