Anders Carlsson
d74cad80b0
Replace calls to AppendBytes with calls to AppendPadding when the bytes appended are padding.
...
llvm-svn: 120922
2010-12-04 23:53:18 +00:00
Rafael Espindola
8867390cf2
Once the layout is done we don't need to keep updating which fragments are
...
valid. Addresses will not change.
llvm-svn: 120921
2010-12-04 22:47:22 +00:00
Rafael Espindola
99e026dbca
Remember the contents of leb and dwarfline fragments when relaxing. This avoids
...
having to evaluate the expression again when writing.
llvm-svn: 120920
2010-12-04 21:58:52 +00:00
Fariborz Jahanian
83e7d5a90a
Fix rewriter to match recent changes in property ref
...
AST.
llvm-svn: 120919
2010-12-04 21:22:13 +00:00
Cameron Zwarich
fbd47dcc55
Remove PHIElimination's private copy of SkipPHIsAndLabels.
...
llvm-svn: 120918
2010-12-04 20:40:15 +00:00
Benjamin Kramer
2f489236ab
Add patterns for the x86 popcnt instruction.
...
- Also adds a new POPCNT subtarget feature that is currently enabled if the target
supports SSE4.2 (nehalem) or SSE4A (barcelona).
llvm-svn: 120917
2010-12-04 20:32:23 +00:00
Bill Wendling
3336f748a5
Silence 'may be used uninitialized in this function' warnings. Static analysis
...
may determine that they cannot be used uninitialized. But that might be a bit
too much for the compiler to determine.
llvm-svn: 120916
2010-12-04 20:20:34 +00:00
Howard Hinnant
75357bcd39
oops, forgot std::
...
llvm-svn: 120915
2010-12-04 19:56:43 +00:00
Howard Hinnant
816cb8975d
Fix up uses of new/terminate/unexpected handlers to use the new getters.
...
llvm-svn: 120914
2010-12-04 19:54:11 +00:00
Michael J. Spencer
66a1f86f7a
Support/PathV2: Remove redundant calls to make_error_code.
...
llvm-svn: 120913
2010-12-04 18:45:32 +00:00
Benjamin Kramer
f1a04edb42
APInt: microoptimize a few methods.
...
llvm-svn: 120912
2010-12-04 18:05:36 +00:00
Benjamin Kramer
5d75f0bddd
Simplify APInt::getAllOnesValue.
...
llvm-svn: 120911
2010-12-04 16:37:47 +00:00
Benjamin Kramer
31920b0a2a
Remove unneeded zero arrays.
...
llvm-svn: 120910
2010-12-04 15:28:22 +00:00
Benjamin Kramer
6f88fcb16b
Apparently APFloat::getZero doesn't like PPCDoubleDoubles.
...
llvm-svn: 120909
2010-12-04 14:43:08 +00:00
Francois Pichet
82f3b5f945
Disable C++ exception handling on MSVC.
...
Total size of bin\Release on disk goes from 82.9 MB to 74.2 MB. (~10% saving)
llvm-svn: 120908
2010-12-04 14:30:22 +00:00
Benjamin Kramer
8ceebfaa04
Simplify code. No functionality change.
...
llvm-svn: 120907
2010-12-04 14:22:24 +00:00
John McCall
594827281c
Silly special case: never load when dereferencing void*.
...
llvm-svn: 120905
2010-12-04 12:43:24 +00:00
John McCall
ca61b6567b
First pass at implementing the intent of ANSI C DR106.
...
llvm-svn: 120904
2010-12-04 12:29:11 +00:00
John McCall
a03eddad58
dyn_cast else unreachable -> cast
...
llvm-svn: 120902
2010-12-04 09:57:16 +00:00
Francois Pichet
916fae2a34
Disable RTTI on Windows.
...
Total size of bin\Release on disk goes from 83.6 MB to 81.8MB. (~2% saving)
llvm-svn: 120901
2010-12-04 09:42:30 +00:00
Francois Pichet
d583da04d0
More anonymous struct/union redesign. This one deals with anonymous field used in a constructor initializer list:
...
struct X {
X() : au_i1(123) {}
union {
int au_i1;
float au_f1;
};
};
clang will now deal with au_i1 explicitly as an IndirectFieldDecl.
llvm-svn: 120900
2010-12-04 09:14:42 +00:00
John McCall
211e699754
Don't crash when initializing a subaggregate in C from a property r-value.
...
llvm-svn: 120899
2010-12-04 09:03:57 +00:00
John McCall
5a4ce8bf06
Make IgnoreParenLValueCasts skip __extension__ nodes like IgnoreParens().
...
Abramo noticed this.
llvm-svn: 120898
2010-12-04 08:24:19 +00:00
Benjamin Kramer
b024166c97
Silence "comparison between signed and unsigned integer expressions" warnings.
...
llvm-svn: 120897
2010-12-04 08:16:05 +00:00
John McCall
e26a872b02
Remove some defensive calls to EmitLoadOfPropertyRefLValue that shouldn't
...
be required, and then fix up some missing loads on overloaded-operator
paths which that exposed.
llvm-svn: 120896
2010-12-04 08:14:53 +00:00
John McCall
29cb2fdbc1
When deciding whether to complain about the type of a boolean condition, use
...
the type of the expression *after* array/function decay.
llvm-svn: 120895
2010-12-04 06:09:13 +00:00
John McCall
bd35f73b6b
Apparently properties.m does not always fail; make it.
...
llvm-svn: 120894
2010-12-04 05:22:10 +00:00
John McCall
a6f59318c7
Fix this test case on no-asserts builds by not trying to match the basic
...
block line.
llvm-svn: 120893
2010-12-04 05:19:12 +00:00
Bob Wilson
ed854baad5
The Thumb tADDrSPi instruction is not valid when the destination is SP.
...
Check for that and try narrowing it to tADDspi instead. Radar 8724703.
llvm-svn: 120892
2010-12-04 04:40:19 +00:00
Bob Wilson
236ba8d862
Remove trailing whitespace.
...
llvm-svn: 120891
2010-12-04 04:40:15 +00:00
John McCall
34376a68c4
Although we currently have explicit lvalue-to-rvalue conversions, they're
...
not actually frequently used, because ImpCastExprToType only creates a node
if the types differ. So explicitly create an ICE in the lvalue-to-rvalue
conversion code in DefaultFunctionArrayLvalueConversion() as well as several
other new places, and consistently deal with the consequences throughout the
compiler.
In addition, introduce a new cast kind for loading an ObjCProperty l-value,
and make sure we emit those nodes whenever an ObjCProperty l-value appears
that's not on the LHS of an assignment operator.
This breaks a couple of rewriter tests, which I've x-failed until future
development occurs on the rewriter.
Ted Kremenek kindly contributed the analyzer workarounds in this patch.
llvm-svn: 120890
2010-12-04 03:47:34 +00:00
Rafael Espindola
1c8ac8f027
There are two reasons why we might want to use
...
foo = a - b
.long foo
instead of just
.long a - b
First, on darwin9 64 bits the assembler produces the wrong result. Second,
if "a" is the end of the section all darwin assemblers (9, 10 and mc) will not
consider a - b to be a constant but will if the dummy foo is created.
Split how we handle these cases. The first one is something MC should take care
of. The second one has to be handled by the caller.
llvm-svn: 120889
2010-12-04 03:21:47 +00:00
Michael J. Spencer
4fb115d2f3
Unittests/Support/PathV2: Add FileSystem tests.
...
llvm-svn: 120888
2010-12-04 03:18:42 +00:00
John McCall
0692a32a3e
Test case for the l-value base only being evaluated once.
...
Also, move the l-value emission code into CGObjC.cpp and teach it, for
completeness, to store away self for a super send.
Also, inline the super cases for property gets and sets and make them
use the correct result type for implicit getter/setter calls.
llvm-svn: 120887
2010-12-04 03:11:00 +00:00
Greg Clayton
87408b61af
Bumped Xcode project build version to 34 for lldb-34.
...
llvm-svn: 120886
2010-12-04 02:47:38 +00:00
Greg Clayton
d46c87a1a8
More reverting of the EOF stuff as the API was changed which we don't want to
...
do. Closing on EOF is an option that can be set on the
lldb_private::Communication or the lldb::SBCommunication objects after they
are created. Of course the EOF support isn't hooked up, so they don't do
anything at the moment, but they are left in so when the code is fixed, it
will be easy to get working again.
llvm-svn: 120885
2010-12-04 02:39:47 +00:00
John McCall
f3eb96fccf
Kill the KVC l-value kind and calculate the base expression when emitting
...
the l-value.
llvm-svn: 120884
2010-12-04 02:32:38 +00:00
Greg Clayton
7788e5fd64
Reverted the close on EOF stuff again as it was crashing Xcode.
...
llvm-svn: 120883
2010-12-04 02:22:36 +00:00
Peter Collingbourne
fafa66500b
Implement -cl-std=
...
llvm-svn: 120882
2010-12-04 01:51:40 +00:00
Peter Collingbourne
422542625b
Implement -cl-mad-enable
...
llvm-svn: 120881
2010-12-04 01:51:33 +00:00
Peter Collingbourne
61d6a75345
Implement -cl-fast-relaxed-math
...
llvm-svn: 120880
2010-12-04 01:51:23 +00:00
Peter Collingbourne
b8d9995c0e
Implement -cl-unsafe-math-optimizations
...
llvm-svn: 120879
2010-12-04 01:51:14 +00:00
Peter Collingbourne
0ba5ac8544
Implement -cl-finite-math-only
...
llvm-svn: 120878
2010-12-04 01:51:05 +00:00
Peter Collingbourne
0b69e1a628
Implement -cl-single-precision-constant
...
llvm-svn: 120877
2010-12-04 01:50:56 +00:00
Peter Collingbourne
31587c86c1
Implement -cl-opt-disable
...
llvm-svn: 120876
2010-12-04 01:50:45 +00:00
Peter Collingbourne
b8e5dd44ed
Refactor optimisation level code
...
llvm-svn: 120875
2010-12-04 01:50:36 +00:00
Peter Collingbourne
aaeb73b159
Introduce CompilerInvocation::setLangDefaults function
...
This patch refactors the CompilerInvocation code to introduce a
CompilerInvocation::setLangDefaults function, which can set up a
LangOptions with the defaults for a given language and language
standard. This function is useful for non-command line based Clang
clients which need to set up a CompilerInvocation manually for a
specific language.
llvm-svn: 120874
2010-12-04 01:50:27 +00:00
Argyrios Kyrtzidis
d22d8ff343
Minor refactoring; have BugReport::getRanges return a pair of iterator, no functionality change.
...
llvm-svn: 120873
2010-12-04 01:12:15 +00:00
Argyrios Kyrtzidis
86a26b8e35
Mark functions referenced by 'cleanup' attribute as used. Fixes rdar://8728293
...
llvm-svn: 120872
2010-12-04 01:12:11 +00:00
Johnny Chen
80554b804d
Add a test method test_pass_host_env_vars to 'class SettingsCommandTestCase(TestBase)'
...
which tests the recently added lldb feature of automatically passing the host environment
variables to the launched process.
llvm-svn: 120871
2010-12-04 00:44:56 +00:00