Anna Zaks
ec9c4e487c
[analyzer] Diagnostics - do not try to cleanup the path with macros, it
...
will be done by the general cleanup later on.
A Patch by Ted.
llvm-svn: 151784
2012-03-01 01:30:58 +00:00
Eli Friedman
2fb8512888
Tighten type-checking a bit to make it clearer how BuildCXXMemberCallExpr is used.
...
llvm-svn: 151783
2012-03-01 01:30:04 +00:00
Jakob Stoklund Olesen
d256c21666
Move getBundleStart() into MachineInstrBundle.h.
...
This allows the function to be inlined, and makes it suitable for use in
getInstructionIndex().
Also provide a const version. C++ is great for touch typing practice.
llvm-svn: 151782
2012-03-01 01:26:01 +00:00
Benjamin Kramer
aba3503639
Emit the intrinsic modref info as a lookup table instead of a huge switch.
...
Shrinks BasicAliasAnalysis.o from 106k to 56k on i386.
llvm-svn: 151781
2012-03-01 01:18:32 +00:00
Jim Ingham
b5c0d1ccbd
Convert the thread plans over from using the stack count to do their logic to using StackID's. This
...
should be more efficient.
llvm-svn: 151780
2012-03-01 00:50:50 +00:00
Lang Hames
76e66c31a0
Don't redundantly copy implicit operands when rematerializing.
...
While we're at it - don't copy vreg implicit operands while rematerializing.
This fixes PR12138.
llvm-svn: 151779
2012-03-01 00:41:17 +00:00
Richard Trieu
37ddc0fab6
Fix flags for test in MC/MachO/ARM/empty-function-nop.ll
...
llvm-svn: 151778
2012-03-01 00:29:09 +00:00
Sean Callanan
0a5597d356
Fixed the 32-bit runtime dynamic loader to allocate
...
code sections when needed. It just had a conditional
the wrong way around.
llvm-svn: 151777
2012-03-01 00:15:29 +00:00
Nico Weber
2c21c449d9
Move suport for redefining operator keywords from -fms-extensions to -fms-compatibility.
...
llvm-svn: 151776
2012-03-01 00:13:46 +00:00
Ted Kremenek
0a8e00d493
Change if...else if...else if... to a switch.
...
llvm-svn: 151775
2012-03-01 00:05:06 +00:00
Ted Kremenek
0f0cc35935
[analyzer] when scanning FIDs in a PathDiagnostic, correctly recurse calls and macros.
...
llvm-svn: 151774
2012-02-29 23:59:20 +00:00
Benjamin Kramer
0aafd06a85
Implement getSubRegIndex as a linear search on the SubRegTable instead of using a big switch.
...
- The search bounds are constant, in the worst case (ARM target) it will scan over 30 uint16_ts.
- This method isn't very hot, I had problems finding a testcase where it's called more than a dozen of times (no perf impact).
llvm-svn: 151773
2012-02-29 23:46:50 +00:00
Kevin Enderby
b119c08af3
Added annotations for x86 pc relative loads to llvm's 'C' disassembler.
...
So with darwin's otool(1) an x86_64 hello world .o file will print:
leaq L_.str(%rip), %rax ## literal pool for: Hello world
llvm-svn: 151769
2012-02-29 22:58:34 +00:00
Nico Weber
2e686205e8
Allow operator keywords to be #defined in ms-ext mode.
...
Fixes PR10606.
I'm not sure if this is the best way to go about it, but
I locally enabled this code path without the msext conditional,
and all tests pass, except for test/Preprocessor/cxx_oper_keyword.cpp
which explicitly checks that operator keywords can't be redefined.
I also parsed chromium/win with a clang with and without this patch.
It introduced no new errors, but removes 43 existing errors.
llvm-svn: 151768
2012-02-29 22:54:43 +00:00
Fariborz Jahanian
203ea38085
Test for my last patch. // rdar://10267155.
...
llvm-svn: 151767
2012-02-29 22:21:36 +00:00
Fariborz Jahanian
86c2f5cc70
objective-c: provide fixit hint when atomic property does not
...
have matching user defined setter/getter and a warning is issued.
In this case, a fixit note is displayed. // rdar://10267155
llvm-svn: 151766
2012-02-29 22:18:55 +00:00
Howard Hinnant
20d6c14c88
First attempt at arm support.
...
llvm-svn: 151765
2012-02-29 22:14:19 +00:00
Jim Grosbach
3f4b23933f
Tidy up. 80 columns.
...
llvm-svn: 151764
2012-02-29 22:07:56 +00:00
Benjamin Kramer
c80c3fd5a7
Emit the SubRegTable with the smallest possible integer type.
...
Doesn't help ARM with its massive register set, but halves the size on x86 and all other targets.
llvm-svn: 151760
2012-02-29 21:57:08 +00:00
Johnny Chen
bc34a59d8f
Fix a typo in comment.
...
llvm-svn: 151759
2012-02-29 21:51:13 +00:00
Jim Grosbach
43bb61ea29
Tidy up. Spelling.
...
llvm-svn: 151758
2012-02-29 21:46:32 +00:00
Johnny Chen
6600bc92b2
rdar://problem/10652076
...
Incremental check in to calculate the offsets of registers correctly. Registers can be primordial or composite,
for example, r0-r12 are primordial, s0-s31 are primordial, while q0 is composite consisting of (s0, s1, s2, s3).
Modify q0-q8 to be composed of the primordial s0-s31 registers.
llvm-svn: 151757
2012-02-29 21:44:11 +00:00
Jim Grosbach
8d2f09117b
Move the subregister indicies enum into the REGINFO_ENUM section.
...
llvm-svn: 151756
2012-02-29 21:43:16 +00:00
Daniel Dunbar
842bb492a9
BitstreamWriter: Use SmallVector::append instead of multiple push_back calls.
...
llvm-svn: 151755
2012-02-29 21:02:05 +00:00
Eli Friedman
381f431e28
Fix a couple -Wuninitialized warnings from gcc. Reported by David Greene.
...
llvm-svn: 151754
2012-02-29 20:59:56 +00:00
Enrico Granata
0448d9fe2b
Fixing a problem with v1 runtime - plus hopefully finalizing the code to check for tagged pointers
...
llvm-svn: 151753
2012-02-29 20:46:00 +00:00
Daniel Dunbar
9a96386e6d
Serialization: Switch over to using the native SmallVector based BitstreamWriter
...
ctor.
llvm-svn: 151752
2012-02-29 20:31:23 +00:00
Jim Grosbach
f591df6dd7
Switch TargetRegisterInfo::getSubReg() to use a lookup table.
...
Instead of nested switch statements, use a lookup table. On ARM, this replaces
a 23k (x86_64 release build) function with a 16k table. Its not unlikely to
be faster, as well.
llvm-svn: 151751
2012-02-29 20:31:17 +00:00
Daniel Dunbar
42fcf81aba
BitstreamWriter: Change primary output buffer to be a SmallVector instead of an
...
std::vector.
- Good for 1-2% speedup on writing PCH for Cocoa.h.
- Clang side API match to follow shortly, there wasn't an easy way to make this
non-breaking.
llvm-svn: 151750
2012-02-29 20:31:09 +00:00
Daniel Dunbar
60df263f54
BitstreamWriter: Isolate access to the underlying buffer.
...
llvm-svn: 151749
2012-02-29 20:31:05 +00:00
Daniel Dunbar
6e45c02c48
BitcodeWriter: Expose less implementation details -- make BackpatchWord private
...
and remove getBuffer().
llvm-svn: 151748
2012-02-29 20:31:01 +00:00
Daniel Dunbar
5fa5ecf852
Bitcode: Don't expose WriteBitcodeToStream to clients.
...
llvm-svn: 151747
2012-02-29 20:30:56 +00:00
Chad Rosier
ff3f99bf0a
I referenced the incorrect rdar in my previous commit (r151745). Add the
...
correct radar number to the test case for tracking purposes.
rdar://10551066
llvm-svn: 151746
2012-02-29 20:18:57 +00:00
Chad Rosier
b1cfc6864f
Allocate TargetLibraryInfo for the CodeGen passes. Otherwise, it's instantiated
...
by the BAA pass, which uses the default TargetLibraryInfo constructor.
Unfortunately, the default TargetLibraryInfo constructor assumes all library
calls are available and thus ignores -fno-builtin.
rdar://10947759
llvm-svn: 151745
2012-02-29 20:14:59 +00:00
Jim Ingham
1692b90130
Use the correct (computed by the unwinder) CallFrameAddress as the CFA for Frame 0 rather than using the stack pointer which is not constant over the life of the frame.
...
llvm-svn: 151744
2012-02-29 19:58:25 +00:00
Andrew Trick
6eb6528b98
Intel Atom instruction itineraries for mov sign extension and mov zero extension.
...
Patch by Tyler Nowicki!
llvm-svn: 151743
2012-02-29 19:44:41 +00:00
Greg Clayton
435d85a2c2
Filled in two missing values when dynamically making register info structs.
...
llvm-svn: 151742
2012-02-29 19:27:27 +00:00
Han Ming Ong
bee9839770
<rdar://10949461>
...
Only set the ProcessSP when the attach is successful.
llvm-svn: 151741
2012-02-29 19:16:40 +00:00
Greg Clayton
9029f2d8e0
Fixed the install path for the XPC binaries. Added 3 aggregate targets:
...
"desktop" - build all binaries with XPC
"desktop_no_xcp" - build all binaries with none of the XPC binaries
"ios" - build all binaries with special iOS install settings.
Bumped the Xcode project build version for lldb-118 and debugserver-169.
llvm-svn: 151740
2012-02-29 19:16:02 +00:00
Jason W Kim
4ee2957629
Reverting test commit
...
llvm-svn: 151739
2012-02-29 19:12:10 +00:00
Jason W Kim
5beed97f67
Test commit. Please ignore
...
llvm-svn: 151738
2012-02-29 19:08:25 +00:00
Anna Zaks
e0c03cab58
[analyzer] Malloc: A pointer might escape through CFContainers APIs,
...
funopen, setvbuf.
Teach the checker and the engine about these APIs to resolve malloc
false positives. As I am adding more of these APIs, it is clear that all
this should be factored out into a separate callback (for example,
region escapes). Malloc, KeyChainAPI and RetainRelease checkers could
all use it.
llvm-svn: 151737
2012-02-29 18:42:47 +00:00
Greg Clayton
64d6eb1195
Removed an unused logging API call.
...
llvm-svn: 151736
2012-02-29 18:34:11 +00:00
Sean Callanan
3f548137d0
Made the IR interpreter handle GetElementPtr instructions
...
with non-constant indexes.
llvm-svn: 151734
2012-02-29 17:57:18 +00:00
Hal Finkel
230e870df5
Add myself to the credits file
...
llvm-svn: 151732
2012-02-29 16:43:11 +00:00
David Chisnall
55661e7305
Fix MSVC / Sun #ifdef ordering. Remove another #if-nothing-#endif.
...
Sorry for the churn.
llvm-svn: 151731
2012-02-29 16:41:21 +00:00
Daniel Dunbar
c2f9dc91c1
Revert r151702, "Add support for handling captured variables in lambda debug
...
info.", which broke some -O0 -g tests.
llvm-svn: 151730
2012-02-29 16:28:29 +00:00
David Chisnall
40d7a8acff
Remove a spurious #ifdef / #endif pair with nothing between them.
...
llvm-svn: 151729
2012-02-29 16:22:33 +00:00
Howard Hinnant
9e849ad302
Add a warning to ctype<char>::classic_table() if not implemented.
...
llvm-svn: 151728
2012-02-29 16:08:57 +00:00
Howard Hinnant
27e618efb6
I'm reverting one of the changes made to exception.cpp in r151717. I'm unsure what the change was trying to do, but it didn't do the right thing for __APPLE__. So instead of trying to guess what was intended, I'm just putting it back the way it was.
...
llvm-svn: 151727
2012-02-29 15:37:30 +00:00