Jim Grosbach
490950a928
Allow MCCodeEmitter access to the target MCRegisterInfo.
...
Add MRI to the createMCCodeEmitter() call.
llvm-svn: 156830
2012-05-15 17:36:07 +00:00
James Molloy
a3c85b8629
Unify Options.td and CC1Options.td, in a first step towards unifying the serialization logic in Frontend and Driver.
...
Reviewed by Eric, Doug and Chandler, and here: http://llvm.org/reviews/r/7/
llvm-svn: 155916
2012-05-01 14:57:16 +00:00
Chad Rosier
681e4b8d96
Add a little hack to emulate a clang crash, so the diagnostics generator can be
...
tested.
llvm-svn: 155205
2012-04-20 17:08:59 +00:00
Douglas Gregor
1840cc2cc6
Kill the last vestiges of clangIndex
...
llvm-svn: 154675
2012-04-13 17:26:32 +00:00
Bill Wendling
f4ec97d9b0
Fix build by passing in the needed variable after r153860.
...
llvm-svn: 153861
2012-04-02 06:17:37 +00:00
Chad Rosier
d6f716ab2a
[driver] Parse diagnostic args in the driver.
...
Previously, only diagnostics thrown by the cc1 process were
actually honoring the diagnostic options given on the command line,
like -Werror.
Reuse the existing code in Frontend currently used for cc1,
adjusting it to not interpret -Wl, linker flags as warnings.
Also fix a faulty test exposed by this change.
It wasn't actually testing anything, and was giving this warning:
clang-3: warning: argument unused during compilation: '-verify'
Which -Werror didn't turn into an error because it was output
by the driver, not the cc1 process, and diagnostic options
weren't parsed by the driver. And you couldn't see the warning
when running the test suite.
Fixes PR12181.
Patch by Dylan Noblesmith <nobled@dreamwidth.org>.
llvm-svn: 152660
2012-03-13 20:09:56 +00:00
Ted Kremenek
f7639e1b4a
Add new code migrator support for migrating existing Objective-C code to use
...
the new Objective-C NSArray/NSDictionary/NSNumber literal syntax.
This introduces a new library, libEdit, which provides a new way to support
migration of code that improves on the original ARC migrator. We now believe
that most of its functionality can be refactored into the existing libraries,
and thus this new library may shortly disappear.
llvm-svn: 152141
2012-03-06 20:06:33 +00:00
Jim Grosbach
6c258a891f
Add MCRegisterInfo to the MCInstPrinter factory function interface.
...
llvm-svn: 152046
2012-03-05 19:33:41 +00:00
Dylan Noblesmith
c95d81924d
Basic: import IntrusiveRefCntPtr<> into clang namespace
...
The class name is long enough without the llvm:: added.
Also bring in RefCountedBase and RefCountedBaseVPTR.
llvm-svn: 150958
2012-02-20 14:00:23 +00:00
Dylan Noblesmith
f1a13f29f2
drop more llvm:: prefixes on SmallString<>
...
More cleanup after r149799.
llvm-svn: 150380
2012-02-13 12:32:26 +00:00
Dylan Noblesmith
1cd1069b68
drop more llvm:: prefixes on OwningPtr<>
...
More cleanup after r149798.
llvm-svn: 150379
2012-02-13 12:32:21 +00:00
Jim Grosbach
576452b830
Have the driver pass CPU and target feature information to cc1as.
...
When creating the MCSubtargetInfo, the assembler driver uses the CPU and
feature string to construct a more accurate model of what instructions
are and are not legal.
rdar://10840476
llvm-svn: 150273
2012-02-10 20:37:10 +00:00
Dylan Noblesmith
9345813ddd
cmake: create a relative symlink to clang, not absolute
...
Hardcoding the location of the build directory seems like it would
break at `make install`/packaging time.
llvm-svn: 150201
2012-02-09 20:02:46 +00:00
David Blaikie
09d20eefaa
Make use of const-correct ParseCommandLineOptions
...
llvm-svn: 150000
2012-02-07 19:36:38 +00:00
Jim Grosbach
ff3789a6bb
Pass the SourceMgr to the MCContext for cc1as.
...
llvm-svn: 149608
2012-02-02 17:54:07 +00:00
Argyrios Kyrtzidis
be6d89d255
[driver] Do emit the diagnostics when CompilerInvocation::CreateFromArgs() fails.
...
llvm-svn: 148970
2012-01-25 20:00:43 +00:00
Sebastian Pop
422377cfd3
rename -ccc-host-triple into -target
...
llvm-svn: 148582
2012-01-20 22:01:23 +00:00
Eli Friedman
d749c6bf2e
Revert r148138; it's causing test failures.
...
llvm-svn: 148141
2012-01-13 21:33:06 +00:00
Sebastian Pop
9a8d528ddf
rename -ccc-host-triple into -target
...
llvm-svn: 148138
2012-01-13 20:37:02 +00:00
Dylan Noblesmith
68207c0b26
driver: fix unused variable warning
...
from r147218.
llvm-svn: 147278
2011-12-26 19:29:47 +00:00
Dylan Noblesmith
e99b27f35e
Let CompilerInvocation initialization indicate failure
...
This fixes the FIXMEs in ParseAnalyzeArgs. (Also a
precursor to moving the analyzer into an AST plugin.)
For consistency, do the same with AssemblerInvocation.
llvm-svn: 147218
2011-12-23 03:05:38 +00:00
Dylan Noblesmith
1ced737ebf
remove unneeded config.h includes
...
llvm-svn: 147195
2011-12-22 22:49:47 +00:00
Kevin Enderby
292dc080e0
Last part of support for generating dwarf for assembly source files. This gets
...
the clang driver to enable this when assembling a .s file. rdar://9275556
llvm-svn: 147167
2011-12-22 19:31:58 +00:00
Peter Collingbourne
17a7bbbc9f
Create the clang++ symlink as a POST_BUILD custom command on clang.
...
This saves us from re-creating the symlink on every build even if we
didn't rebuild clang.
llvm-svn: 145017
2011-11-21 00:00:48 +00:00
Sebastian Pop
8188c8a1f3
rename getHostTriple into getDefaultTargetTriple in clang
...
llvm-svn: 143503
2011-11-01 21:33:06 +00:00
Tobias Grosser
1a5307c7cc
Add LinkAllPasses to clang
...
This patch ensures that no passes are deleted from clang, such that the loading
of plugins does not fail because of passes being unavailable. This increases
the size of the clang binary from 43029853 to 43915291 bytes (around 2%).
llvm-svn: 143414
2011-11-01 01:34:59 +00:00
Peter Collingbourne
f1d76db466
Add support for lazily linking bitcode files (using a new
...
-mlink-bitcode-file flag), and more generally llvm::Modules, before
running optimisations.
llvm-svn: 143314
2011-10-30 17:30:44 +00:00
Nick Lewycky
1d617acef9
Wire up support for the controlling the extended dwarf .file directive. With
...
r142300 but not this patch, clang -S may emit .s files that assemblers other
than llvm-mc can't parse.
llvm-svn: 142301
2011-10-17 23:05:52 +00:00
Bob Wilson
05de0298d2
Rip out flags for controlling C++ "production mode" separately.
...
This is old leftover cruft from the days when C++ was not yet ready
for prime time.
llvm-svn: 141063
2011-10-04 05:34:14 +00:00
David Blaikie
9c902b5502
Rename Diagnostic to DiagnosticsEngine as per issue 5397
...
llvm-svn: 140478
2011-09-25 23:23:43 +00:00
James Molloy
98f3e18f25
Fix up MCInstPrinter creation to take the new SubtargetInfo parameter (see LLVM r139237)
...
llvm-svn: 139238
2011-09-07 17:25:30 +00:00
Evan Cheng
494eb062b5
Match LLVM change: TargetRegistry and TargetSelect have been moved to Support.
...
llvm-svn: 138451
2011-08-24 18:09:14 +00:00
Jim Grosbach
acb07b599c
Update createMCAsmParser() to match r137735.
...
llvm-svn: 137736
2011-08-16 18:33:55 +00:00
Chad Rosier
be10f9853c
When the compiler crashes, the compiler driver now produces diagnostic
...
information including the fully preprocessed source file(s) and command line
arguments. The developer is asked to attach this diagnostic information to a
bug report.
rdar://9575623
llvm-svn: 136702
2011-08-02 17:58:04 +00:00
Evan Cheng
5a7a4ea505
Assembler really doesn't need to create TargetMachine anymore.
...
llvm-svn: 136045
2011-07-26 01:49:26 +00:00
Evan Cheng
9568f27950
Rename createCodeEmitter to createMCCodeEmitter; createObjectStreamer to createMCObjectStreamer.
...
llvm-svn: 136032
2011-07-26 00:42:40 +00:00
Evan Cheng
939f809ce9
Rename createAsmParser to createMCAsmParser.
...
llvm-svn: 136029
2011-07-26 00:24:45 +00:00
Evan Cheng
4b89983662
Rename TargetAsmBackend to MCAsmBackend; rename createAsmBackend to createMCAsmBackend.
...
llvm-svn: 136011
2011-07-25 23:25:09 +00:00
Evan Cheng
c2d8c6be92
Assembler doesn't need to initialize TargetMachine's anymore.
...
llvm-svn: 135964
2011-07-25 20:53:26 +00:00
Chris Lattner
0e62c1cc0b
remove unneeded llvm:: namespace qualifiers on some core types now that LLVM.h imports
...
them into the clang namespace.
llvm-svn: 135852
2011-07-23 10:55:15 +00:00
Evan Cheng
06e70d33fc
Move TargetAsmParser.h TargetAsmBackend.h and TargetAsmLexer.h to MC where they belong.
...
llvm-svn: 135834
2011-07-23 00:45:53 +00:00
Evan Cheng
c391a58b2b
Match LLVM API change.
...
llvm-svn: 135813
2011-07-22 21:59:11 +00:00
Chad Rosier
1988642124
Temporarily revert r135614 while I fix the cmake build.
...
llvm-svn: 135621
2011-07-20 21:16:17 +00:00
Chad Rosier
e3805fc118
When the compiler crashes, the compiler driver now produces diagnostic information
...
including the fully preprocessed source file(s) and command line arguments. The
developer is asked to attach this diagnostic information to a bug report.
llvm-svn: 135614
2011-07-20 20:26:32 +00:00
Evan Cheng
b5517a4d8c
Match MCContext change.
...
llvm-svn: 135612
2011-07-20 19:53:19 +00:00
Evan Cheng
347033fd8b
Match LLVM API change.
...
llvm-svn: 135570
2011-07-20 06:22:27 +00:00
Evan Cheng
3f37dd065b
Match createTargetMachine API change.
...
llvm-svn: 135469
2011-07-19 06:37:41 +00:00
Evan Cheng
b505ace101
MCContext now takes MCRegisterInfo.
...
llvm-svn: 135425
2011-07-18 20:57:51 +00:00
Evan Cheng
6d188f5f1c
Match llvm API change.
...
llvm-svn: 135220
2011-07-14 23:50:56 +00:00
Evan Cheng
279f2907ed
Match createCodeEmitter change.
...
llvm-svn: 134885
2011-07-11 04:24:19 +00:00