Chris Lattner
2f9888e2ca
switch to gnu99 by default
...
llvm-svn: 39019
2006-10-20 05:03:55 +00:00
Chris Lattner
38681d7d81
Add intel include path
...
llvm-svn: 39016
2006-10-20 04:55:39 +00:00
Chris Lattner
25e0d54a0e
Move keyword setup from the preprocessor into the IdentifierTable class.
...
llvm-svn: 39014
2006-10-18 06:07:05 +00:00
Chris Lattner
9f547a4fdd
Fix regression in my last commit
...
llvm-svn: 39013
2006-10-18 06:06:41 +00:00
Chris Lattner
59a9ebdb17
refactor header searching stuff out of the main Preprocessor object into
...
it's own HeaderSearch object. This makes Preprocessor simpler and easier
to understand.
llvm-svn: 39012
2006-10-18 05:34:33 +00:00
Chris Lattner
8fd6ee1f2f
silence warning
...
llvm-svn: 39009
2006-10-18 04:02:50 +00:00
Chris Lattner
04d1f3f75f
track whether DirectoryLookup dirs are framework dirs.
...
llvm-svn: 39006
2006-10-17 06:20:32 +00:00
Chris Lattner
ff43821d53
Implement -std, -x, -ObjC and -ObjC++ options.
...
llvm-svn: 39004
2006-10-17 05:16:26 +00:00
Chris Lattner
2dacc3ff2e
Changes through out the parser and actions/ast interface to return top-level
...
declarations through the asm streamer. For a testcase like:
int G;
int H, I, *J;
int func() {}
'clang -parse-print-ast' prints:
Read top-level decl: G
Read top-level decl: H
Read top-level decl: I
Read top-level decl: J
Read top-level decl: func
llvm-svn: 38992
2006-10-16 00:33:54 +00:00
Chris Lattner
9c837537ad
Sink target-specific #define info into the target descriptions. Add x86-32/64 and ppc64.
...
llvm-svn: 38987
2006-10-15 01:05:46 +00:00
Chris Lattner
2ba425ea95
Get target-specific #defines from TargetInfo.
...
llvm-svn: 38985
2006-10-14 19:54:37 +00:00
Chris Lattner
1f5ad11409
Implement TargetInfo hooks for #defines
...
llvm-svn: 38978
2006-10-14 18:32:12 +00:00
Chris Lattner
02dffbda3b
Write up TargetInfo so that use of wchar_t strings results in a warning if
...
used in a target set where the size is not identical.
llvm-svn: 38975
2006-10-14 07:50:21 +00:00
Chris Lattner
5ba61f0e10
Add Targets.cpp, which implements the -arch command line option in terms of
...
TargetInfo.
llvm-svn: 38972
2006-10-14 07:39:34 +00:00
Chris Lattner
8c76f87810
change default mode
...
llvm-svn: 38966
2006-10-06 05:56:09 +00:00
Chris Lattner
65de4b6a6d
make this a bit nicer
...
llvm-svn: 38963
2006-10-06 05:40:30 +00:00
Chris Lattner
a81fb94997
build in a new dir
...
llvm-svn: 38955
2006-10-06 04:15:06 +00:00
Chris Lattner
9b6d4cb90e
Add (basic) expression AST representation capabilities for int/fp/binops/condexpr.
...
Add callbacks for same.
Add "full locinfo" mode.
llvm-svn: 38939
2006-08-23 05:17:46 +00:00
Chris Lattner
73709eda2b
Stub out the ASTStreamer
...
llvm-svn: 38935
2006-08-17 06:28:25 +00:00
Chris Lattner
3e7bd4ed44
Start adding support for printing out parser callbacks and adding ast building
...
llvm-svn: 38933
2006-08-17 05:51:27 +00:00
Chris Lattner
a5534f96dc
Stub out the EmptyAction class.
...
llvm-svn: 38914
2006-08-14 00:38:06 +00:00
Chris Lattner
685ed1e9ee
Rename Parse/ParserActions.h -> Parse/Action.h
...
llvm-svn: 38913
2006-08-14 00:22:04 +00:00
Chris Lattner
c1a8937d8f
Make ParseTranslationUnit prime the lexer lookahead
...
llvm-svn: 38911
2006-08-14 00:15:40 +00:00
Chris Lattner
203ed032e2
Count the number of diagnostics emitted.
...
llvm-svn: 38905
2006-08-13 22:25:42 +00:00
Chris Lattner
eecc5b53ae
Add a -fsyntax-only argument
...
llvm-svn: 38827
2006-08-06 18:29:56 +00:00
Chris Lattner
0bb5f835e4
initial support for parsing, right now just ;'s at the top level, but this
...
adds most simple scaffolding.
llvm-svn: 38802
2006-07-31 01:59:18 +00:00
Chris Lattner
4beb0381ed
Trigraphs are not enabled in -fpreprocessed mode.
...
llvm-svn: 38796
2006-07-29 17:50:10 +00:00
Chris Lattner
cd028fc1f6
Fix -E mode to enter the main file *after* -E mode configures the preprocessor.
...
llvm-svn: 38784
2006-07-29 06:35:08 +00:00
Chris Lattner
457fc15bc5
Implement comment saving mode: the -C and -CC options.
...
llvm-svn: 38783
2006-07-29 06:30:25 +00:00
Chris Lattner
331ad778b0
Implement paste avoidance, implementing Preprocessor/output_paste_avoid.c
...
llvm-svn: 38767
2006-07-28 06:56:01 +00:00
Chris Lattner
ecc39e9325
Change Lexer::Stringify to not add ""'s around the string.
...
llvm-svn: 38708
2006-07-15 05:23:31 +00:00
Chris Lattner
ae41157ee5
Implement support for arbitrarily mapping non-error diagnostics to be either
...
ignored, warned about, or error'd. Use this to implement the -Wunused_macros
command line option.
llvm-svn: 38676
2006-07-05 00:55:08 +00:00
Chris Lattner
67c3848e4e
Cleanup some obsolete comments.
...
llvm-svn: 38673
2006-07-04 23:24:26 +00:00
Chris Lattner
ef9eae1c44
Change the Preprocessor::getSpelling interface to let it be zero-copy in
...
the common case.
llvm-svn: 38671
2006-07-04 22:33:12 +00:00
Chris Lattner
f46be6cb02
Switch to using unix "write" when available, instead of stdio. This speeds up
...
-E -P mode by 10% (i.e. takes away almost all i/o time).
llvm-svn: 38669
2006-07-04 22:19:33 +00:00
Chris Lattner
728b4dc26a
improve comments
...
llvm-svn: 38668
2006-07-04 21:28:37 +00:00
Chris Lattner
ff3f5f4b77
fix compile error
...
llvm-svn: 38667
2006-07-04 21:25:59 +00:00
Chris Lattner
03cbe1fc02
Minor code cleanup
...
llvm-svn: 38666
2006-07-04 21:24:33 +00:00
Chris Lattner
3338ba87d5
Make -P mode faster and closer to GCC output by not emitting newlines at all.
...
This allows the SourceManager to not compute line number information for each buffer.
llvm-svn: 38665
2006-07-04 21:19:39 +00:00
Chris Lattner
73b6a2f62d
Match GCC behavior better in -P mode.
...
llvm-svn: 38663
2006-07-04 19:40:52 +00:00
Chris Lattner
deb3701c23
Switch from using iostreams to using stdio for -E mode output. This speeds
...
up clang -E iostream by 30%.
llvm-svn: 38660
2006-07-04 19:24:06 +00:00
Chris Lattner
5de858cbdd
minor cleanup
...
llvm-svn: 38659
2006-07-04 19:04:44 +00:00
Chris Lattner
09e3cdf9ef
Split the -E mode printer out to a separate .cpp file.
...
llvm-svn: 38658
2006-07-04 19:04:05 +00:00
Chris Lattner
062a0d620b
stub out built-in macros.
...
llvm-svn: 38644
2006-07-04 04:50:29 +00:00
Chris Lattner
01d66cc891
Implement #ident and #sccs
...
llvm-svn: 38643
2006-07-03 22:16:27 +00:00
Chris Lattner
3ae68307ac
Print tokens using the logical location. This implements
...
test/Preprocessor/_Pragma-dependency.c
llvm-svn: 38642
2006-07-03 06:28:56 +00:00
Chris Lattner
cbd6d3e0ed
Implement -Wunused-macros functionality, currently always enabled.
...
llvm-svn: 38631
2006-07-03 05:16:39 +00:00
Chris Lattner
d1236047a9
Correctly stringify emitted #line directives in -E mode.
...
llvm-svn: 38623
2006-07-03 01:12:52 +00:00
Chris Lattner
5599d5f6b8
Fix test/Preprocessor/pragma_unknown.c
...
llvm-svn: 38612
2006-07-02 21:50:38 +00:00
Chris Lattner
f6fd68add5
Fix Preprocessor/macro_expandloc2.c
...
llvm-svn: 38579
2006-06-26 01:48:23 +00:00