Bill Wendling
fae1475823
Initial commit of the 'landingpad' instruction.
...
This implements the 'landingpad' instruction. It's used to indicate that a basic
block is a landing pad. There are several restrictions on its use (see
LangRef.html for more detail). These restrictions allow the exception handling
code to gather the information it needs in a much more sane way.
This patch has the definition, implementation, C interface, parsing, and bitcode
support in it.
llvm-svn: 137501
2011-08-12 20:24:12 +00:00
Johnny Chen
9f4f5d94cd
Add TestInferiorChanged.py to test that lldb reloads the inferior after it was changed during the debug session.
...
First, main.c causes a crash, the inferior then gets re-built with main2.c which is not crashing.
Add Base.cleanup(self, dictionary=None) for platform specfic way to do cleanup after build.
This plugin method is used by the above test case to cleanup the main.c build before rebuild for main2.c.
llvm-svn: 137500
2011-08-12 20:19:22 +00:00
Owen Anderson
60138eaf93
Fix decoding of ARM-mode STRH.
...
llvm-svn: 137499
2011-08-12 20:02:50 +00:00
Ted Kremenek
8df44b2632
[analyzer] Introduce new MemRegion, "TypedValueRegion", so that we can separate TypedRegions that implement getValueType() from those that don't.
...
Patch by Olaf Krzikalla!
llvm-svn: 137498
2011-08-12 20:02:48 +00:00
Chris Lattner
30e697ebaf
apparently variable naming conventions never got added, document the
...
prevailing convention. Thanks to Dave Zarzycki for the patch.
llvm-svn: 137497
2011-08-12 19:49:16 +00:00
Chris Lattner
2c945b3d88
minor typo
...
llvm-svn: 137496
2011-08-12 19:48:19 +00:00
Owen Anderson
ed6d3e813e
Port over the basic ARM encodings test file to a decoding test file. Greatly increases our test coverage of basic ARM-mode instructions.
...
llvm-svn: 137495
2011-08-12 19:42:45 +00:00
Owen Anderson
1043e173bc
Specify fixed bit in the LDRBT encoding, which allows us to distinguish it from certain USAT16 encodings.
...
llvm-svn: 137494
2011-08-12 19:41:29 +00:00
Enrico Granata
68eb4bb421
Added an error message when the user tries to add a filter when a synthetic provider for the same type is already defined in the same category
...
The converse is also true: an error is shown when the user tries to add a synthetic provider to a category that already has a filter for the same type
llvm-svn: 137493
2011-08-12 19:14:27 +00:00
Johnny Chen
70cb84a0f6
When running dotest.py under pdb (the python debugger), define DOTEST_PDB=YES and
...
DOTEST_SCRIPT_DIR=/path/leading/to/your/dotest/script/directory.
llvm-svn: 137492
2011-08-12 18:54:11 +00:00
Richard Smith
def8bdbfac
Fix some comments.
...
llvm-svn: 137491
2011-08-12 18:44:32 +00:00
Enrico Granata
4a04dbc749
Taking care of an issue relating to mapping DeclContext's to DIE's
...
llvm-svn: 137490
2011-08-12 18:43:16 +00:00
Devang Patel
ede5857203
Constify.
...
llvm-svn: 137489
2011-08-12 18:18:02 +00:00
Chris Lattner
3253173c34
fix one reference that slipped through, thanks Eli
...
llvm-svn: 137488
2011-08-12 18:12:40 +00:00
Owen Anderson
3987a61c16
Fix decoding of pre-indexed stores.
...
llvm-svn: 137487
2011-08-12 18:12:39 +00:00
Akira Hatanaka
2f6b944f56
Test case for 137484
...
llvm-svn: 137486
2011-08-12 18:12:06 +00:00
Devang Patel
444034783e
Use ArrayRef.
...
llvm-svn: 137485
2011-08-12 18:10:19 +00:00
Akira Hatanaka
7bd6e6ebef
When constant double 0.0 is lowered, make sure 0 is copied directly from an
...
integer register to a floating point register. It is not valid to interpret
the value of a floating pointer register as part of a double precision
floating point value after a single precision floating point computational
or move instruction stores its result to the register.
- In the test case, the following code is generated before this patch is
applied:
mtc1 $zero, $f2 ; unformatted copy to $f2
mov.s $f0, $f2 ; $f0 is in single format
sdc1 $f12, 0($sp)
mov.s $f1, $f2 ; $f1 is in single format
c.eq.d $f12, $f0 ; $f0 cannot be interpreted as double
- The following code is generated after this patch is applied:
mtc1 $zero, $f0 ; unformatted copy to $f0
mtc1 $zero, $f1 ; unformatted copy to $f1
c.eq.d $f12, $f0 ; $f0 can be interpreted as double
Bhanu Chetlapalli and Chris Dearman at MIPS technologies reported this bug and
provided the test case.
llvm-svn: 137484
2011-08-12 18:09:59 +00:00
Chris Lattner
a585102d3e
add ifdef's to let people easily remove these dead api for testing.
...
llvm-svn: 137483
2011-08-12 18:08:19 +00:00
Chris Lattner
44f7ab4544
switch to the new struct api.
...
llvm-svn: 137482
2011-08-12 18:07:26 +00:00
Chris Lattner
01becebef3
switch to the new struct apis.
...
llvm-svn: 137481
2011-08-12 18:07:07 +00:00
Chris Lattner
335d399a0e
switch to use the new api for structtypes.
...
llvm-svn: 137480
2011-08-12 18:06:37 +00:00
Chris Lattner
2f50231c10
forward to the correct constructor.
...
llvm-svn: 137479
2011-08-12 18:03:30 +00:00
Devang Patel
db4374a28a
Provide fast path as Jakob suggested.
...
llvm-svn: 137478
2011-08-12 18:01:34 +00:00
Johnny Chen
7feabf0643
Fix a logic error (Division by zero) uncovered by the static analyzer.
...
A8.6.391 VST1 (multiple single elements)
alignment = if align == '00' then 1 else 4 << UInt(align);
llvm-svn: 137477
2011-08-12 17:59:58 +00:00
Owen Anderson
c5798a3a59
Separate decoding for STREXD and LDREXD to make each work better.
...
llvm-svn: 137476
2011-08-12 17:58:32 +00:00
Greg Clayton
dd7feaf664
Fixed the issue of a DW_TAG_subprogram in a DW_TAG_subprogram correctly this
...
time after recently backing out another fix.
llvm-svn: 137475
2011-08-12 17:54:33 +00:00
Chris Lattner
5ec04a51fa
switch clang to use the new-new way of creating llvm::StructType's.
...
llvm-svn: 137472
2011-08-12 17:43:31 +00:00
Jim Grosbach
d1b60f7a6d
Tidy up formatting.
...
llvm-svn: 137471
2011-08-12 17:43:31 +00:00
Chris Lattner
8a2f747546
add two missing function impls
...
llvm-svn: 137470
2011-08-12 17:43:05 +00:00
Howard Hinnant
26a9d23657
demangler: Drop preceeding () from function types, but not from pointers and references to function types
...
llvm-svn: 137469
2011-08-12 17:33:10 +00:00
Chris Lattner
190552d3e0
add new accessors to reflect new terminology in struct types.
...
llvm-svn: 137468
2011-08-12 17:31:02 +00:00
Nick Lewycky
45fc2a6a9b
Fix bugpoint fallout from the new type system.
...
llvm-svn: 137467
2011-08-12 17:25:45 +00:00
Nadav Rotem
62da15a330
Revert r137310 because it does not optimize any code on ToT
...
llvm-svn: 137466
2011-08-12 17:15:04 +00:00
Douglas Gregor
c45c287ab6
Overriding the predefined Protocol isn't something that's actually
...
done and is likely to not work well anyway; take away this unnecessary
complexity.
llvm-svn: 137465
2011-08-12 17:09:30 +00:00
Jim Grosbach
234317d12a
Tidy up formatting.
...
llvm-svn: 137464
2011-08-12 17:01:02 +00:00
Chad Rosier
75ec09c0e3
Whitespace and formatting. No functional change intended.
...
llvm-svn: 137463
2011-08-12 16:45:18 +00:00
Enrico Granata
61a80ba6c3
Giving a warning to the user the first time children are truncated by the new cap setting
...
llvm-svn: 137462
2011-08-12 16:42:31 +00:00
Greg Clayton
b4d3733fca
Backout previous fix that was designed to allow functions within functions
...
as this function is what parses the blocks for a function...
llvm-svn: 137461
2011-08-12 16:22:48 +00:00
Duncan Sands
a41634e307
Silence a bunch (but not all) "variable written but not read" warnings
...
when building with assertions disabled.
llvm-svn: 137460
2011-08-12 14:54:45 +00:00
Ted Kremenek
50aa2d480c
Revert "Fix crash in CFGBuilder involving implicit destructor calls and gotos jumping after an object was declared. Fixes PR 10620."
...
llvm-svn: 137459
2011-08-12 14:41:23 +00:00
NAKAMURA Takumi
5dd4132ab8
docs/GettingStarted.html: [Git] Add instructions how to generate patchset with Git.
...
llvm-svn: 137444
2011-08-12 07:48:06 +00:00
NAKAMURA Takumi
d92a5fe2fb
docs/GettingStarted.html: [Git] Mention branch.master.rebase for the tracking branch.
...
Thanks to Jeff Yasskin to reword.
llvm-svn: 137443
2011-08-12 07:48:01 +00:00
NAKAMURA Takumi
d9b1c6ecd0
docs/GettingStarted.html: [Git] Split the subsubsection for committer's section.
...
llvm-svn: 137442
2011-08-12 07:47:55 +00:00
NAKAMURA Takumi
6bdfe91e01
.gitignore: Ignore /autom4te.cache. We can execute "PATH=/path/to/autotools/bin autoconf/AutoRegen.sh".
...
llvm-svn: 137441
2011-08-12 07:47:50 +00:00
Greg Clayton
3771927056
Fixed an assertion issue that can arise when a function
...
is contained inside a function.
llvm-svn: 137438
2011-08-12 07:35:23 +00:00
Douglas Gregor
801c99d22d
Switch the __int128_t and __uint128_t types over to predefined types
...
in the AST format, which are built lazily by the ASTContext when
requested.
llvm-svn: 137437
2011-08-12 06:49:56 +00:00
Greg Clayton
5113dc8e54
Fixed some issues with parsing C++ methods where our detection
...
was failing if the DWARF was laid out in a certain way. The way
we detect C++ classes is now more robust so that a class method
can be defined outside of the class and refer to a definition inside
the class with a DW_AT_specification or DW_AT_abstract_origin attribute.
Fixed a case in Thread.cpp where we were looking up info in the frame
when we didn't need to. This was from some changes to support external
editors. Now the info is only looked up if needed.
llvm-svn: 137436
2011-08-12 06:47:54 +00:00
NAKAMURA Takumi
5ae5353894
docs/doxygen.css: Import .memitem, .memproto and .memdoc from llvm/doxygen.
...
llvm-svn: 137435
2011-08-12 06:24:04 +00:00
Douglas Gregor
52e02808c5
Switch the Objective-C 'SEL' type over to a predefined type in the
...
AST file format, lazily generating the actual declaration in
ASTContext as needed.
llvm-svn: 137434
2011-08-12 06:17:30 +00:00