| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
| |
optimized code are:
(non-negative number)+(power-of-two) != 0 -> true
and
(x | 1) != 0 -> true
Instcombine knows about the second one of course, but only does it if X|1
has only one use. These fire thousands of times in the testsuite.
llvm-svn: 124183
|
| |
|
|
|
|
|
| |
for now. It's controlled by the HasGlobalAliases variable which is not attached
to any flag yet.
llvm-svn: 124182
|
| |
|
|
| |
llvm-svn: 124181
|
| |
|
|
|
|
| |
We will need to try again soon, but this change was causing instability.
llvm-svn: 124180
|
| |
|
|
|
|
|
|
|
|
|
|
| |
types. What was happening was the DWARF parser was almost ignoring definitions
(DIEs with the DW_AT_declaration set to 1). It wasn't ignoring declarations
that had _some_ children. When this happened, we would treat the declaration
as a complete type. Often we would have a declaration of a type with just
some enum definitions inside and nothing else. Now we correctly ignore these
definitions, and also I added some changes to allow us to figure out what
decl context these special declarations actually point to.
llvm-svn: 124179
|
| |
|
|
|
|
|
|
| |
course, when we stop
if we undid some user provided suspends, we need to re-do the suspends.
llvm-svn: 124178
|
| |
|
|
|
|
| |
parse the exit status in case we send this packet while stopped.
llvm-svn: 124177
|
| |
|
|
| |
llvm-svn: 124176
|
| |
|
|
|
|
| |
to make it clear that we're talking about the declarations and not the types.
llvm-svn: 124175
|
| |
|
|
|
|
| |
attributes for the benefit of the static analyzer.
llvm-svn: 124174
|
| |
|
|
|
|
|
|
|
| |
with my last commit.
The change should be correct but it's not fixing anything important
and right now unneeded changes are not a good idea.
llvm-svn: 124173
|
| |
|
|
|
|
|
| |
section is encrypted before trying to read it. Fixes assert / crash
when trying to unwind an executable w/ encrypted eh_frame sect.
llvm-svn: 124172
|
| |
|
|
|
|
|
|
| |
or stopped.
Added support for sections to be able to state if they are encrypted or not.
llvm-svn: 124171
|
| |
|
|
| |
llvm-svn: 124170
|
| |
|
|
|
|
|
|
| |
and turn on __has_feature(cxx_rvalue_references). The core rvalue
references proposal seems to be fully implemented now, pending lots
more testing.
llvm-svn: 124169
|
| |
|
|
|
|
| |
rather than interspersed. No functional change.
llvm-svn: 124168
|
| |
|
|
| |
llvm-svn: 124167
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
a cv-qualifier rvalue reference to the type, e.g.,
template <class _Tp> char __test(const volatile typename remove_reference<_Tp>::type&&);
The use of this function signature rather than the more
straightforward one used in C++98/03 mode, e.g.,
template <class _Tp> char __test(_Tp);
is broken in two ways:
1) An rvalue reference cannot bind to lvalues, so is_convertible<X&,
X&>::value would be false. This breaks two of the unique_ptr tests
on Clang and GCC >= 4.5. Prior GCC's seem to have allowed rvalue
references to bind to lvalues, allowing this bug to slip in.
2) By adding cv-qualifiers to the type we're converting to, we get
some incorrect "true" results for, e.g., is_convertible<const X&, X&>::value.
llvm-svn: 124166
|
| |
|
|
| |
llvm-svn: 124165
|
| |
|
|
|
|
|
|
|
|
| |
We translate property accesses to obj-c messages by simulating "loads" or "stores" to properties
using a pseudo-location SVal kind (ObjCPropRef).
Checkers can now reason about obj-c messages for both explicit message expressions and implicit
messages due to property accesses.
llvm-svn: 124161
|
| |
|
|
|
|
|
|
| |
ObjCMessages (both message expressions and property access)
and use it in ExprEngine::VisitObjCMessageExpr.
llvm-svn: 124160
|
| |
|
|
|
|
|
|
|
|
| |
expressions and implicit
messages that are sent for handling properties in dot syntax.
Replace all direct uses of ObjCMessageExpr in the checkers and checker interface with ObjCMessage.
llvm-svn: 124159
|
| |
|
|
|
|
| |
ObjCInterfaceType.
llvm-svn: 124158
|
| |
|
|
|
|
| |
BasicObjCFoundationChecks.cpp; no functionality change.
llvm-svn: 124157
|
| |
|
|
|
|
| |
arm and thumb opcodes together.
llvm-svn: 124156
|
| |
|
|
|
|
|
|
| |
(m_last_created_breakpoint)
contained a valid object pointer.
llvm-svn: 124155
|
| |
|
|
| |
llvm-svn: 124154
|
| |
|
|
| |
llvm-svn: 124153
|
| |
|
|
|
|
|
|
| |
Manual,
which has been corrected in the subsequent errata.
llvm-svn: 124152
|
| |
|
|
| |
llvm-svn: 124151
|
| |
|
|
|
|
| |
when LSDASection is blank
llvm-svn: 124150
|
| |
|
|
|
|
|
|
| |
sp!, reg" case,
i.e., pushing one register onto the full descending stacks.
llvm-svn: 124149
|
| |
|
|
| |
llvm-svn: 124148
|
| |
|
|
| |
llvm-svn: 124147
|
| |
|
|
| |
llvm-svn: 124146
|
| |
|
|
|
|
|
|
|
| |
This will be used to check patterns referencing a forthcoming
INSERT_SUBVECTOR SDNode. INSERT_SUBVECTOR in turn is very useful for
matching to VINSERTF128 instructions and complements the already
existing EXTRACT_SUBVECTOR SDNode.
llvm-svn: 124145
|
| |
|
|
| |
llvm-svn: 124144
|
| |
|
|
| |
llvm-svn: 124143
|
| |
|
|
| |
llvm-svn: 124142
|
| |
|
|
| |
llvm-svn: 124141
|
| |
|
|
|
|
| |
Plus add an extra field ARMInstrSize to the table entry type 'ARMOpcode'.
llvm-svn: 124140
|
| |
|
|
| |
llvm-svn: 124139
|
| |
|
|
|
|
| |
intrinisic.
llvm-svn: 124138
|
| |
|
|
|
|
| |
rdar://problem/8893967
llvm-svn: 124137
|
| |
|
|
|
|
| |
as useful in a templated context as it is without templates. Fixes PR8755!
llvm-svn: 124136
|
| |
|
|
|
|
| |
Wennborg! Fixes PR8295.
llvm-svn: 124135
|
| |
|
|
|
|
|
|
|
|
|
| |
with BasicAA's DecomposeGEPExpression, which recently began
using a TargetData. This fixes PR8968, though the testcase
is awkward to reduce.
Also, update several off GetUnderlyingObject's users
which happen to have a TargetData handy to pass it in.
llvm-svn: 124134
|
| |
|
|
|
|
|
|
| |
clang_getDeclObjCTypeEncoding(); use ASTContext's methods instead,
which will (lazily) create the type as needed. Otherwise, we can end
up with null QualTypes.
llvm-svn: 124133
|
| |
|
|
| |
llvm-svn: 124132
|
| |
|
|
|
|
| |
Instruction Set Architecture.
llvm-svn: 124131
|