Nate Begeman
67dfd4236a
Revert mmx palignr to use an intrinsic, since mmx shuffle patterns are missing.
...
llvm-svn: 91269
2009-12-14 05:15:02 +00:00
Chris Lattner
aaa6ac10a6
revert r91184, because it causes a crash on a .bc file I just
...
sent to Bob.
llvm-svn: 91268
2009-12-14 05:11:02 +00:00
Chris Lattner
f290e005e4
this was a couple bugzillas too
...
llvm-svn: 91267
2009-12-14 05:03:13 +00:00
Chris Lattner
4c53c40a4c
fix rdar://7466570 - Be more bug compatible with GCC when it comes to
...
expanding directives withing macro expansions. This is undefined behavior
according to 6.10.3p11, so we might as well be undefined in ways similar to
GCC.
llvm-svn: 91266
2009-12-14 05:00:18 +00:00
Chris Lattner
b8132253c8
filecheckize
...
llvm-svn: 91265
2009-12-14 04:57:53 +00:00
Nate Begeman
72ec6bc6f4
Support x86's PALIGNR instruction without the use of a palignr intrinsic.
...
llvm-svn: 91264
2009-12-14 04:57:03 +00:00
Chris Lattner
8cf1f935c2
formatting changes.
...
llvm-svn: 91263
2009-12-14 04:54:40 +00:00
Chris Lattner
676268e45a
reduce indentation.
...
llvm-svn: 91262
2009-12-14 04:26:45 +00:00
Jim Grosbach
8f3c70e909
atomic binary operations up to 32-bits wide.
...
llvm-svn: 91260
2009-12-14 04:22:04 +00:00
Mikhail Glushenkov
897889ef6b
Add a test for the 'init' option property.
...
llvm-svn: 91259
2009-12-14 04:06:38 +00:00
Zhongxing Xu
cf86de4067
Use insert to avoid destroying existing nodes.
...
llvm-svn: 91258
2009-12-14 02:13:39 +00:00
Anders Carlsson
e66e2942fc
Mangle unary, binary and ternary expressions correctly.
...
llvm-svn: 91257
2009-12-14 01:45:37 +00:00
Anders Carlsson
8911229187
Rename dump to dumpDeclContext, so that call RD->dump() won't dump the decl context by default.
...
llvm-svn: 91256
2009-12-14 00:51:04 +00:00
Anders Carlsson
c67974ccb1
Simplify BuildSimpleType in the RTTBuilder to avoid using an std::vector.
...
llvm-svn: 91255
2009-12-13 23:47:29 +00:00
Douglas Gregor
1aa450a078
Fix PR5756 a different, better way: we don't have a "pointer
...
conversion to void*" according to C++ [over.ics.rank]p4b2 if the type
we're converting from is not a pointer.
llvm-svn: 91254
2009-12-13 21:37:05 +00:00
Douglas Gregor
202eb8fcfd
Don't assume that all conversions to a void pointer are converting
...
from a PointerType. Fixes PR5756.
llvm-svn: 91253
2009-12-13 21:29:20 +00:00
Douglas Gregor
b08f1a7b32
Fix template instantiation for non-dependent calls to overloaded call
...
operators. Fixes PR5266.
llvm-svn: 91252
2009-12-13 20:44:55 +00:00
Anders Carlsson
399f499f0c
Don't use a cookie if the global placement new function is used.
...
llvm-svn: 91251
2009-12-13 20:34:34 +00:00
Jeffrey Yasskin
8c17e6de2b
Reinstate r91208 to fix available_externally linkage for globals, with
...
nlewycky's fix to add -rdynamic so the JIT can look symbols up in Linux builds
of the JITTests binary.
llvm-svn: 91250
2009-12-13 20:30:32 +00:00
Anders Carlsson
adbe4249d6
Fix regression in my last commit - if a struct has a trivial destructor but no usual deallocation function we don't need a cookie.
...
llvm-svn: 91249
2009-12-13 20:10:12 +00:00
Anders Carlsson
21122cf657
More array cookie improvements.
...
llvm-svn: 91247
2009-12-13 20:04:38 +00:00
Anders Carlsson
f5af8dead7
If the usual array deallocation function of a class takes two arguments, we need to pass the number of bytes allocated to the deallocation function, just not the number of bytes in a single element.
...
llvm-svn: 91246
2009-12-13 18:48:07 +00:00
Anders Carlsson
f5056f8545
Fix test.
...
llvm-svn: 91245
2009-12-13 18:30:34 +00:00
Anders Carlsson
7e0b207e54
More improvements to checking allocation and deallocation functions.
...
llvm-svn: 91244
2009-12-13 17:53:43 +00:00
Anders Carlsson
e7025c55a4
Change the RTTIBuilder's finish member function to take a pointer to the constants array + the length of the array.
...
llvm-svn: 91241
2009-12-13 16:38:01 +00:00
Torok Edwin
abdc1c274b
Using _MSC_VER there was wrong, better just use the already existing ifdefs for
...
x86 CPU detection for the X86 getHostCPUName too, and create a simple
getHostCPUName that returns "generic" for all else.
llvm-svn: 91240
2009-12-13 08:59:40 +00:00
Chandler Carruth
dcf5dacb2c
Don't leave pointers uninitialized in the default constructor. GCC complains
...
about the potential use of these uninitialized members under certain conditions.
llvm-svn: 91239
2009-12-13 07:04:45 +00:00
Daniel Dunbar
8d4a202aad
Lift builtin-include-path logic out of ASTUnit::LoadFromCommandLine and fix CIndex to pass in the right directory (previously it was using the path to the main executable, which generally is wrong).
...
llvm-svn: 91238
2009-12-13 03:46:13 +00:00
Daniel Dunbar
d613677ec9
CompilerInvocation: Move builtin-include-path logic out of CompilerInvocation::CreateFromArgs.
...
llvm-svn: 91237
2009-12-13 03:45:58 +00:00
Daniel Dunbar
85d2f8f875
Use clang -cc1 in test, to improve determinism.
...
llvm-svn: 91236
2009-12-13 02:20:49 +00:00
Daniel Dunbar
18a72959f5
Tests: Fix some bugs in clang_f_opts, options were out of order but it worked
...
because it had two inputs, except on Win32 where /dev/null doesn't exist.
llvm-svn: 91235
2009-12-13 02:00:23 +00:00
Chandler Carruth
8abbc657a9
Silence some release build warnings.
...
llvm-svn: 91234
2009-12-13 01:37:04 +00:00
Anton Korobeynikov
94b6310136
Fix weird typo which leads to unallocated memory access for nodes with 4 results.
...
llvm-svn: 91233
2009-12-13 01:00:59 +00:00
Anton Korobeynikov
45800ce646
Do not allow uninitialize access during debug printing
...
llvm-svn: 91232
2009-12-13 01:00:32 +00:00
Eli Friedman
96cf7f42b0
More info on this transformation.
...
llvm-svn: 91230
2009-12-12 23:23:43 +00:00
Daniel Dunbar
efa39f7db1
Backend: Switch to using TargetOptions or TargetMachine to set some options instead of llvm::cl.
...
llvm-svn: 91229
2009-12-12 23:01:36 +00:00
Eli Friedman
8eada9f580
Remove some stuff that's already implemented. Also, remove the note about
...
merging x >u 5 and x <s 20 because it's impossible to implement.
llvm-svn: 91228
2009-12-12 21:41:48 +00:00
Fariborz Jahanian
751c1e7b24
patch to add a property from a protocol to a class that adopts the protocol.
...
(fixes radar 7466494).
llvm-svn: 91227
2009-12-12 21:26:21 +00:00
Daniel Dunbar
e4b5f9f54c
Update install-clang target for clang-cc removal.
...
llvm-svn: 91226
2009-12-12 21:17:54 +00:00
Evan Cheng
26fdd7265b
Disable r91104 for x86. It causes partial register stall which pessimize code in 32-bit.
...
llvm-svn: 91223
2009-12-12 20:03:14 +00:00
Ted Kremenek
3b90ed2628
Update checker build.
...
llvm-svn: 91222
2009-12-12 19:06:20 +00:00
Anton Korobeynikov
d8f320947f
Implement variable-width shifts.
...
No testcase yet - it seems we're exposing generic codegen bugs.
llvm-svn: 91221
2009-12-12 18:55:37 +00:00
Evan Cheng
3974c8de51
Add comment about potential partial register stall.
...
llvm-svn: 91220
2009-12-12 18:55:26 +00:00
Evan Cheng
6d6eaafa8c
Fix an obvious bug. No test case since LEA16r is not being used.
...
llvm-svn: 91219
2009-12-12 18:51:56 +00:00
Douglas Gregor
6131b44183
Rework the way we handle template instantiation for
...
implicitly-generated AST nodes. We previously built instantiated nodes
for each of these AST nodes, then passed them on to Sema, which was
not prepared to see already-type-checked nodes (see PR5755). In some
places, we had ugly workarounds to try to avoid re-type-checking
(e.g., in VarDecl initializer instantiation).
Now, we skip implicitly-generated nodes when performing instantiation,
preferring instead to build just the AST nodes that directly reflect
what was written in the source code. This has several advantages:
- We don't need to instantiate anything that doesn't have a direct
correlation to the source code, so we can have better location
information.
- Semantic analysis sees the same thing at template instantiation
time that it would see for a non-template.
- At least one ugly hack (VarDecl initializers) goes away.
Fixes PR5755.
llvm-svn: 91218
2009-12-12 18:16:41 +00:00
Torok Edwin
5c9429fa47
Enable CPU detection when using MS VS 2k8 too.
...
MSVS2k8 doesn't define __i386__, hence all the CPU detection code was disabled.
Enable it by looking for _MSC_VER.
llvm-svn: 91217
2009-12-12 12:42:31 +00:00
Zhongxing Xu
c0484fa611
Add initial support for realloc() in MallocChecker.
...
llvm-svn: 91216
2009-12-12 12:29:38 +00:00
John McCall
9dab4e68b9
Remember the type name's scope specifier in the DeclSpec.
...
llvm-svn: 91215
2009-12-12 11:40:51 +00:00
Benjamin Kramer
401e6093c9
Fix some CHECK lines which were ignored by accident.
...
llvm-svn: 91214
2009-12-12 09:25:50 +00:00
Douglas Gregor
fab31f47b2
When certain diagnostics involving run-time behavior would be emitted
...
in a potentially potentially evaluated context, queue those
diagnostics and only emit them if the context ends up being
potentially evaluated. This completes the fix for PR5761.
llvm-svn: 91213
2009-12-12 07:57:52 +00:00