Peter Collingbourne
5caf5af421
Silence warning about C++-style comments.
...
llvm-svn: 111875
2010-08-24 00:31:37 +00:00
Peter Collingbourne
8e65aeea5e
Add Serialization dependency to clang-interpreter
...
llvm-svn: 111874
2010-08-24 00:31:31 +00:00
Peter Collingbourne
85dd0bd18d
Move ExecuteCompilerInvocation to a new library FrontendTool
...
r110903 introduced a dependency from Frontend to every library that
declared an Action by introducing Action references that previously
resided in the driver in the file ExecuteCompilerInvocation.cpp.
This patch moves ExecuteCompilerInvocation to a new library named
FrontendTool which is intended to bear these dependencies.
llvm-svn: 111873
2010-08-24 00:31:22 +00:00
Eric Christopher
9d4e471cc2
Add some more debugging code, make it more obvious that RegOffset is
...
getting an address for an object and select some default values.
llvm-svn: 111871
2010-08-24 00:07:24 +00:00
Devang Patel
4a213870db
Revert r107202. It is not adding any value.
...
llvm-svn: 111870
2010-08-24 00:06:12 +00:00
Johnny Chen
9bc867aaf5
Makefile refactoring for the test suite. Added a make directory under test,
...
which hosts the Makefile.rules and modified most of the Makefiles under each
test case directories to utilize Mekefile.rules.
Added a description of 'make' directory into README-TestSuite file.
llvm-svn: 111868
2010-08-23 23:56:08 +00:00
Douglas Gregor
dbb71db4cc
When calling a function or messaging a method marked "sentinel", add
...
the ", nil", ", NULL", or ", (void*)0" to the end of the code
completion, since it always has to be there anyway.
llvm-svn: 111867
2010-08-23 23:51:41 +00:00
Chris Lattner
8460224958
fix PR7953 - Windows filename are case insensitive:
...
#pragma once wasn't working on win32 if the header file was included
using a different case.
I tracked down the problem to the fact that clang::FileManager was
caching files using case sensitive string (UniqueFiles) on Windows.
I changed FileManager to cache filename in lower case only.
Doesn't affect UNIX because UNIX uses Inode to uniquely identify files.
unix doesn't use this codepath.
Analysis and patch by Francois Pichet!
llvm-svn: 111866
2010-08-23 23:50:42 +00:00
John McCall
35ffd26354
Don't call this field 'Expr', it changes lookup in illegal ways that
...
GCC diagnoses.
llvm-svn: 111865
2010-08-23 23:46:51 +00:00
Eric Christopher
e3107d6283
Don't need the extra register here.
...
llvm-svn: 111864
2010-08-23 23:28:04 +00:00
John McCall
b268a282a4
Kill off ExprArg (now just Expr*) and StmtArg (now just Stmt*).
...
llvm-svn: 111863
2010-08-23 23:25:46 +00:00
Mikhail Glushenkov
aaed5ea9b7
llvmc: Make syntax more consistent.
...
CompilationGraph and LanguageMap definitions do not use special syntax anymore.
llvm-svn: 111862
2010-08-23 23:21:23 +00:00
Devang Patel
dd719f701d
Let FE use derived types for DW_TAG_friend.
...
Patch by Alexander Herz!
llvm-svn: 111861
2010-08-23 23:16:25 +00:00
Eric Christopher
414501c511
Add some more "get address into register" code and a more TODOs/FIXMEs.
...
llvm-svn: 111860
2010-08-23 23:14:31 +00:00
Sean Callanan
64dfc9a3f9
Refactored ClangExpressionDeclMap to use
...
ClangExpressionVariables for found external variables
as well as for struct members, replacing the Tuple
and StructMember data structures.
llvm-svn: 111859
2010-08-23 23:09:38 +00:00
Douglas Gregor
f757a12dfc
Introduce new libclang API functions that determine the availability
...
of a cursor or code-completion result, e.g., whether that result
refers to an unavailable, deleted, or deprecated declaration.
llvm-svn: 111858
2010-08-23 23:00:57 +00:00
Fariborz Jahanian
616d3e71c2
Handling remaining rule for synthesize bitfields in
...
class extensions (nonfragile-abi2).For every class @interface and class
extension @interface, if the last ivar is a bitfield of any type,
then add an implicit `char :0` ivar to the end of that interface.
llvm-svn: 111857
2010-08-23 22:46:52 +00:00
Daniel Dunbar
82eb4ce476
Driver: Move Clang "triple" computation routines to method on the
...
ToolChain. This fixes a potenial bad cast when running Clang on PPC code, since
the tool chain in effect is not a subclass of the Darwin one, but we were
treating it like it was.
- This introduces some gross code duplication, but the right fix for it is to
just move the Driver to start depending on the targets in libBasic, so I am
not planning on fixing it immediately.
llvm-svn: 111856
2010-08-23 22:35:37 +00:00
Daniel Dunbar
f10f9bec83
libclang: Print more information when recovering from crashes in
...
clang_parseTranslationUnit.
llvm-svn: 111855
2010-08-23 22:35:34 +00:00
Eric Christopher
8d03b8a8ce
Add an ARMFunctionInfo member and use it.
...
llvm-svn: 111854
2010-08-23 22:32:45 +00:00
Dan Gohman
5d29673855
Verify that a non-uniqued non-temporary MDNode is not deleted via
...
MDNode::deleteTemporary.
llvm-svn: 111853
2010-08-23 22:32:05 +00:00
Devang Patel
41c2097058
Emit debug info for enum constants.
...
llvm-svn: 111852
2010-08-23 22:07:25 +00:00
Douglas Gregor
ce0e856809
Include __FUNCTION__, __PRETTY_FUNCTION_, __func__ in code-completion
...
results for expression contexts within a function.
llvm-svn: 111851
2010-08-23 21:54:33 +00:00
Eric Christopher
00202ee329
Start getting ARM loads/address computation going.
...
llvm-svn: 111850
2010-08-23 21:44:12 +00:00
Howard Hinnant
01f586ca2c
Corrected some int -> char narrowing conversions
...
llvm-svn: 111849
2010-08-23 21:41:03 +00:00
Benjamin Kramer
d41b53c037
Fix thinko. Having no tests is great ...
...
llvm-svn: 111848
2010-08-23 21:32:00 +00:00
Jim Grosbach
616bc356e9
Remove the MFI storage of the local allocation block size. It's not needed.
...
llvm-svn: 111847
2010-08-23 21:29:29 +00:00
Benjamin Kramer
c4809c930a
Reduce code duplication.
...
llvm-svn: 111846
2010-08-23 21:23:52 +00:00
Howard Hinnant
8c93ff2ce3
Accidentally changed a data file during the whitespace cleanup
...
llvm-svn: 111845
2010-08-23 21:23:21 +00:00
Benjamin Kramer
86511dce18
ELFObjectWriter: Run ComputeSymbolTable before recording relocations. This way we can use the information it has computed and don't have to recompute the same stuff over and over again.
...
llvm-svn: 111844
2010-08-23 21:19:37 +00:00
Douglas Gregor
68762e7852
Introduce a code-completion hook for the Objective-C collection
...
argument in a for-each statement (e.g., "for (id x in <blah>)"), which
restricts the expression completions provided to Objective-C types (or
class types in C++).
llvm-svn: 111843
2010-08-23 21:17:50 +00:00
Dan Gohman
66427b1fcf
Reinstate the code for emitting an initial debug type for a struct,
...
to handle the case where the struct is only forward-declared. In
this case, a temporary MDNode is not needed and not desired.
llvm-svn: 111842
2010-08-23 21:15:56 +00:00
Daniel Dunbar
e31e323c02
Driver/Darwin: Switch to using simplified tool chain by default -- what better
...
way to see what will break! :)
llvm-svn: 111840
2010-08-23 20:58:55 +00:00
Daniel Dunbar
09a4851ead
Driver/Darwin: When using the simplified Clang toolchain, make sure to also pass
...
the arch specific gcc lib path.
llvm-svn: 111839
2010-08-23 20:58:52 +00:00
Daniel Dunbar
5d3b70a6fc
Driver: Update -ccc-install-dir to also set the installed dir. Totally
...
non-obvious.
llvm-svn: 111838
2010-08-23 20:58:50 +00:00
Bruno Cardoso Lopes
264d90fff7
Start using target speficic nodes for shuffles: pshufhw and pshuflw
...
llvm-svn: 111837
2010-08-23 20:41:02 +00:00
Jim Grosbach
754f8e600e
Better handling of local offsets for downwards growing stacks. This corrects
...
relative offsets when there are offsets encoded in the instructions and
simplifies final allocation in PEI. rdar://8277890
llvm-svn: 111836
2010-08-23 20:40:38 +00:00
Gabor Greif
21fed6616c
tyops
...
llvm-svn: 111835
2010-08-23 20:30:51 +00:00
Owen Anderson
6ffa3f2aea
Turn LVI back off, I have a testcase now.
...
llvm-svn: 111834
2010-08-23 19:59:27 +00:00
Tom Care
905c051e47
Modified pseudoconstant test case to make it a bit clearer and fix a missing line
...
llvm-svn: 111833
2010-08-23 19:57:25 +00:00
Tom Care
e332c3b762
Several small changes to PseudoConstantAnalysis and the way IdempotentOperationChecker uses it.
...
- Psuedo -> Pseudo (doh...)
- C++ reference support
- Added pseudoconstant test case for __block vars
- Separated out static local checking from pseudoconstant analysis and generalized to non-local checking
- Added missing test cases for storage false positives
llvm-svn: 111832
2010-08-23 19:51:57 +00:00
Chris Lattner
58bd73a5a7
Add a new llvm.x86.int intrinsic, allowing access to the
...
x86 int and int3 instructions. Patch by Peter Housel!
llvm-svn: 111831
2010-08-23 19:39:25 +00:00
Douglas Gregor
2529b55b4d
Don't include macro results when we're completing a declarator.
...
llvm-svn: 111830
2010-08-23 19:33:40 +00:00
Mikhail Glushenkov
1a90528e63
llvmc: Allow multiple LanguageMaps.
...
llvm-svn: 111829
2010-08-23 19:24:16 +00:00
Mikhail Glushenkov
c6c79ddcb9
Add a TODO.
...
llvm-svn: 111828
2010-08-23 19:24:12 +00:00
Mikhail Glushenkov
bf38e0749d
llvmc: Properly handle (error) in edge properties.
...
llvm-svn: 111827
2010-08-23 19:24:08 +00:00
Mikhail Glushenkov
0e6cfd7491
llvmc: Do not mention plugins in the code.
...
llvm-svn: 111826
2010-08-23 19:24:00 +00:00
Mikhail Glushenkov
59129fd9ef
Trailing whitespace.
...
llvm-svn: 111825
2010-08-23 19:23:54 +00:00
Benjamin Kramer
40f83489b4
Add the symbol offset to the relocation value when we relocate against section. By Roman Divacky.
...
llvm-svn: 111824
2010-08-23 19:05:46 +00:00
Fariborz Jahanian
bf9294fb65
Support for IRGen of synthesize bitfield ivars in
...
objc-nonfragile-abi2 (radar 7824380).
llvm-svn: 111823
2010-08-23 18:51:39 +00:00