aboutsummaryrefslogtreecommitdiff
path: root/Driver
AgeCommit message (Collapse)Author
2007-12-24Better handing of stdin/stdout for -emit-llvm-bcChristopher Lamb
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45345 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-24Allow bitcode output to be redirected to stdout.Christopher Lamb
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45340 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-24Implement -emit-llvm-bc optionSeo Sanghyeon
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45339 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-23remove use of alloca.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45329 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-23Unbreak mingw buildAnton Korobeynikov
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45328 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-21Directory restructing of Analysis files.Ted Kremenek
Created include/clang/Analysis/Analyses directory. - Moved LiveVariables.h and UninitializedValues.h into this dir. Moved ExprDeclBitVector.h into Analysis/Support. Updated all clients who use these headers to reflect the new paths. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45292 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-20Converted uses of scoped_ptr to OwningPtr.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45265 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-20Created initial implementation of "BuildSerializer", and ASTConsumerTed Kremenek
which serializes ASTs to a common output directory. This ASTConsumer is invoked using a combination of "-o" and "-serialize" from the driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45241 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-19Split serialization ASTConsumers into two consumers: SingleFileSerializer andTed Kremenek
BuildSerializer. The former serializes a single translation unit to a corresponding .ast file. The second serializes ASTs to a common emission direction. The latter is not fully implemented yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45232 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-19Added methods createMainFileID() and createMainFileIDForMemBuffer() toTed Kremenek
SourceManager to allow SourceManager to directly intern the MainFileID when it is created. Removed setMainFileID(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45231 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-19Interned MainFileID within SourceManager. Since SourceManager is referenced byTed Kremenek
both Preprocessor and ASTContext, we no longer need to explicitly pass MainFileID around in function calls that also pass either Preprocessor or ASTContext. This resulted in some nice cleanups in the ASTConsumers and the driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45228 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-19Typo fix.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45227 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-19Added storage of the FileID of the the main source file of a translation unitTed Kremenek
in SourceManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45225 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-19Removed "SourceFile" from TranslationUnit. This same information will (soon)Ted Kremenek
be available by querying the SourceManager within the ASTContext referenced by the TranslationUnit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45223 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-19Cleaned up "-o" option to print "-o=<path>" instead of "-o=<string>" whenTed Kremenek
doing clang --help. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45215 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-19Added "-o" option to driver. ASTConsumers will need to be graduallyTed Kremenek
rewired to utilize this option. Renamed option --serialize-ast --serialize. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45213 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-19Removed storing inode and device number in TranslationUnit.Ted Kremenek
Added "SourceFile" string to TranslationUnit to record corresponding source file. Updated serialization of TranslationUnits and logic in the driver to correctly pass the source file information to the serializer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45211 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-19Soften the macro rewrite error to a warning (and change the text).Steve Naroff
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45209 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-19Moved generation of the name of the serialized AST file intoTed Kremenek
CreateASTSerializer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45201 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-19Emit errors when attempting to rewrite ObjC expressions that originate from ↵Steve Naroff
a macro expansion. We plan on fixing this and removing this restriction after the break... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45200 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-18Moved ReadBitcodeFile and EmitBitcodeFile out of TranslationUnit and made themTed Kremenek
the standalone functions ReadASTBitcodeFile and EmitASTBitcodeFile respectively. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45180 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-18Fixed broken includes introduced by recent (incomplete) patch toTed Kremenek
TranslationUnit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45177 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-18Moved TranslationUnit from Driver to AST library.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45175 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-18Refactoring work. ObjcQualifiedIdType is now derived from 'Type'.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45174 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-17Patch to implemented objective-c's dynamic object pointer qualified withFariborz Jahanian
the protocol list (id<P,...> types). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45121 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-17Start reading the headermap header, drop the 'errorstr' argument toChris Lattner
the create method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45109 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-17Also fixed similar regression for class methods, as well as more indentations.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45107 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-17Sink getName into DirectoryLookup to simplify the client in clang.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45106 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-17Fixed a regression caused by refactoring of some meta-data generation ↵Fariborz Jahanian
routines using iteratgors. Also fixed indentation problems. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45105 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-17Fixed 80 col violation.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45104 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-17Added driver option -Wno-format-nonliteral to silence format string relatedTed Kremenek
warnings. This flag is the inverse of to GCC's -Wformat-nonliteral option (in the clang driver, these warnings are on by default). Patch provided by Shantonu Sen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45103 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-17Unbreak -v with framework paths. Patch by Shantonu Sen.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45102 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-17as it turns out, frameworks and headermaps are orthogonal. Make this so inChris Lattner
the internal representation. This also fixes a bug where -I foo -F foo would not search foo as both a normal and framework include dir. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45092 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-17add a portability fixme.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45091 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-17teach RemoveDuplicates about header maps.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45090 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-17Step #1 in adding headermap support to clang.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45089 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-17rearrange some code and make it more efficient.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45087 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-15swtich to smallptrset, which is more efficient than std::set.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45065 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-15make clang -v output more similar to gcc's -v output.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45064 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-15simplify the interfaces to ProcessInputFile and InitializePreprocessorChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45060 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-14- Remove getInstanceMethods/getClassMethods API on ObjcInterfaceDecl, ↵Steve Naroff
ObjcProtocolDecl, and ObjcCategoryDecl. These methods are replaced by the respective iterators on each class. - Add getInstanceMethodForSelector to ObjcInterfaceDecl, ObjcProtocolDecl, and ObjcCatgoryDecl. This hook will do a "shallow" lookup. This is a convenience method that reducing some of the iterator usage. - Various changes to convert all clients to the above API's... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45046 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-13Add check in the driver to see if a serialized AST file has been successfullyTed Kremenek
deserialized. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45006 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-13Changed set of top-level decls from a list to a vector.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45005 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-13Changed -serialize-ast to not create a temporary directory, but insteadTed Kremenek
create a .ast file in the current working directory. This mirrors the behavior of the -c option for gcc. Later we should add the ability to write the serialized file anywhere. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45004 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-13Set target data layout info in module.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45003 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-13Implemented -serialize-ast option for the driver. This is not really testedTed Kremenek
and is a work in progress. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44967 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-12Implemented prototype mode where the driver can operate on serialized ASTsTed Kremenek
instead of source files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44962 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-12TargetInfo no longer includes a reference to SourceManager.Ted Kremenek
Moved all clients of Diagnostics to use FullSourceLoc instead of SourceLocation. Added many utility methods to FullSourceLoc to provide shorthand for: FullLoc.getManager().someMethod(FullLoc.getLocation()); instead we have: FullLoc.someMethod(); Modified TextDiagnostics (and related classes) to use this short-hand. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44957 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-12Moved construction of TargetInfo objects out of the DriverTed Kremenek
and into the "Basic" library. TargetInfo objects are now constructed from triples by calling the static method TargetInfo::CreateTargetInfo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44940 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-12more cleanups changing things like getInstanceVariables to iterators.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44930 91177308-0d34-0410-b5e6-96231b3b80d8