c50010f412ad39bda1b70cdc0f082597dcbacbb8 |
23-Oct-2014 |
Tim Murray <timmurray@google.com> |
Revert "Bring in fixes for Cortex-A53 errata." This reverts commit 1aeaece93aae941bb1bbb3a226398a311dfe18e8. bug 18094492
ptions.td
|
1aeaece93aae941bb1bbb3a226398a311dfe18e8 |
17-Oct-2014 |
Stephen Hines <srhines@google.com> |
Bring in fixes for Cortex-A53 errata. Bug: 18034609 (cherry picked from commit 7fb0af86e33f382a8e4a8f23cc1ab471b7134995) Change-Id: Ifc04c2a8e3ec13efd3a5f5ed4879f0a657df50cf
ptions.td
|
ef8225444452a1486bd721f3285301fe84643b00 |
21-Jul-2014 |
Stephen Hines <srhines@google.com> |
Update Clang for rebase to r212749. This also fixes a small issue with arm_neon.h not being generated always. Includes a cherry-pick of: r213450 - fixes mac-specific header issue r213126 - removes a default -Bsymbolic on Android Change-Id: I2a790a0f5d3b2aab11de596fc3a74e7cbc99081d
C1AsOptions.h
C1AsOptions.td
C1Options.td
LCompatOptions.td
MakeLists.txt
ompilation.h
akefile
ptions.h
ptions.td
oolChain.h
til.h
|
6bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89 |
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update Clang for 3.5 rebase (r209713). Change-Id: I8c9133b0f8f776dc915f270b60f94962e771bc83
C1AsOptions.td
C1Options.td
LCompatOptions.td
river.h
ptions.td
oolChain.h
ypes.def
|
651f13cea278ec967336033dd032faef0e9fc2ec |
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Updated to Clang 3.5a. Change-Id: I8127eb568f674c2e72635b639a3295381fe8af82
ction.h
C1AsOptions.td
C1Options.h
C1Options.td
LCompatOptions.td
river.h
ob.h
ultilib.h
ptions.td
anitizerArgs.h
oolChain.h
|
07ac846d50503fcbd78bf9de031cba1157393cfd |
17-Nov-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove method that always returns true. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194984 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
ce5b5f13a6c90904040b29b9eb765bb7cd736f0b |
17-Nov-2013 |
Hal Finkel <hfinkel@anl.gov> |
Add -freroll-loops to enable loop rerolling This adds -freroll-loops (and -fno-reroll-loops in the usual way) to enable loop rerolling as part of the optimization pass manager. This transformation can enable vectorization, reduce code size (or both). Briefly, loop rerolling can transform a loop like this: for (int i = 0; i < 3200; i += 5) { a[i] += alpha * b[i]; a[i + 1] += alpha * b[i + 1]; a[i + 2] += alpha * b[i + 2]; a[i + 3] += alpha * b[i + 3]; a[i + 4] += alpha * b[i + 4]; } into this: for (int i = 0; i < 3200; ++i) { a[i] += alpha * b[i]; } Loop rerolling is currently disabled by default at all optimization levels. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194967 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
d378144e00212af69800ab9c1df8be8b339f086b |
15-Nov-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Make the driver parse all(?) msvc flags Even if we don't support a flag, we should be able to parse it to provide a better error message than the current default "error: no such file or directory: '/foo'" (which we should probably also tweak, btw). This also tries to clean up the test file a bit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194837 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
2c050f6a68c4f871d26be63f8d598f1b64a8e16f |
14-Nov-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[objcmt] Introduce "objcmt-white-list-dir-path=" option. This options accepts a path to a directory, collects the filenames of the files it contains, and the migrator will only modify files with the same filename. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194710 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
7792fde854b5d2bb9d2dc18b4a1de09397307220 |
13-Nov-2013 |
Weiming Zhao <weimingz@codeaurora.org> |
Adds ARM backend options: -mrestrict-it and -mno-restrict-it To support the generation of IT block in Thumbv7 way or Thumbv8 way git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194593 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
b85a9ec6df63f30bbdef9a3975b1d31a680b15c1 |
13-Nov-2013 |
Diego Novillo <dnovillo@google.com> |
Add -fprofile-sample-use to Clang's driver. This adds a new option -fprofile-sample-use=filename to Clang. It tells the driver to schedule the SampleProfileLoader pass and passes on the name of the profile file to use. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194567 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
5d2a20671954f55f765b96375e8bcd38367cb3ba |
13-Nov-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator. Place use of NS_NONATOMIC_IOSONLY on inferred property attribute under -objcmt-ns-nonatomic-iosonly option. // rdar://15442742 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194532 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
86e2a6f4f5e8bb457999a204c629ea12b5a09d3e |
12-Nov-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: parse the /Yc flag (PR17895) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194523 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
a2f1ed0f3b0bd272da772328f8e774924c9746bb |
12-Nov-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: parse the /GT option git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194502 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
3347b497157d36cf280d1d9f52956faa6e702f34 |
12-Nov-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Rather than duplicating extension diagnostics to allow them to cause a substitution failure, allow a flag to be set on the Diagnostic object, to mark it as 'causes substitution failure'. Refactor Diagnostic.td and the tablegen to use an enum for SFINAE behavior rather than a bunch of flags. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194444 91177308-0d34-0410-b5e6-96231b3b80d8
riverDiagnostic.h
|
bd3952758ce828a006d826979db642195792ac4d |
09-Nov-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
This reverts commit r194330, r194329 and r194328. The test was still failing on OS X and mingw. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194334 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
oolChain.h
|
a799d7db952e30b479d647fe35c00ee7360d7628 |
09-Nov-2013 |
David Chisnall <csdavec@swan.ac.uk> |
Add support for -fuse-ld=. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194328 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
oolChain.h
|
00b0f7e1174b7f552ffec0fe0e088584a5d1d092 |
07-Nov-2013 |
Alp Toker <alp@nuanti.com> |
clang-cl: Hide ignored joined flags as well This is an addendum to r194174. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194180 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
9b28079f615368ec27ea8749e04b822cb6500dd5 |
06-Nov-2013 |
Alp Toker <alp@nuanti.com> |
clang-cl: Hide ignored flags We don't want to them to appear in the help text for now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194174 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
6e990446ce844bb656f19c535286ec434d774054 |
06-Nov-2013 |
Alp Toker <alp@nuanti.com> |
clang-cl: Add /FS as an ignored flag CMake-generated Makefiles include this cl flag which can be safely ignored until we get PDB server support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194165 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
195dd7c8448893e13a0cd8e776520f14cba65b08 |
06-Nov-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Add a limit to the length of a sequence of 'operator->' functions we will follow when building a class member access expression. Based on a patch by Rahul Jain! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194161 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
cd569f2788ece55b9f790b6900164e2b2d5d966c |
05-Nov-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator. Please annotation of properties with NS_RETURNS_INNER_POINTER under -objcmt-returns-innerpointer-property flag (off by default), as older compilers do not support such annotations. // rdar://15396636 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194100 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
1d5cce4f284519bdd1218c8f095462a518b47286 |
05-Nov-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
With this patch -Wwrite-strings is still implemented with the terrible hack of passing -fconst-strings to -cc1, but at least the driver uses the regular warning checking code path. Since we don't support a warning that is DefaultIgnore in one language but not in another, this patch creates a dummy C only warning in the same group as the existing one to get the desired effect. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194097 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
d9553e35e1e3af6fc4ca817b169dc796a5b54bcd |
01-Nov-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC. Define a new cc1 flag -fobjc-subscripting-legacy-runtime which is off by default and on only when using ObjectiveC legacy runtime. Use this flag to allow array and dictionary subscripting and disallow objectiveC pointer arithmatic in ObjectiveC legacy runtime. // rdar://15363492 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193889 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
c6911a2b1fc176e4d6053ed86506c17c3d8b0057 |
01-Nov-2013 |
Peter Collingbourne <peter@pcc.me.uk> |
SanitizerArgs: add ability to filter/diagnose unsupported sanitizers. The thread, memory, dataflow and function sanitizers are now diagnosed if enabled explicitly on an unsupported platform. Unsupported sanitizers which are enabled implicitly (as part of a larger group) are silently disabled. As a side effect, this makes SanitizerArgs parsing toolchain-dependent (and thus essentially reverts r188058), and moves SanitizerArgs ownership to ToolChain. Differential Revision: http://llvm-reviews.chandlerc.com/D1990 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193875 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
anitizerArgs.h
oolChain.h
|
6334fd643309c3848261eff46053fa2f17f1ac31 |
30-Oct-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Parse the /arch, /Yu and /Fp options (PR17736) We don't support these options, but should at least parse them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193702 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
799bcc7a875a2caf398728c8ba569c304a681c50 |
29-Oct-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add support for the separate version of /FI. Patch by Jeff Muizelaar. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193642 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
909f35a884045c658e5c4565499f113ee63dfc1d |
29-Oct-2013 |
Bernard Ogden <bogden@arm.com> |
ARM: Add -m[no-]crc to dis/enable CRC subtargetfeature from clang Allow users to disable or enable CRC subtarget feature. Differential Revision: http://llvm-reviews.chandlerc.com/D2037 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193600 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
7edf9a4e4c5a36b2e43949f454b2e6c4aa2efd1c |
24-Oct-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Teach Clang to accept and ignore -f[no-]implicit-templates. This GCC flag is useful when you want to control whether implicit template instantiation occurs at the commandline level. Clang doesn't currently support such controls, but technically *always* implicitly instantiating (what Clang does, and what every other compiler still in use does by default) is valid behavior even under -fno-implicit-templates, it just may be slow and very wasteful. If people really want this, we can try to implement it, but I don't have an actual use. This should help fix the build of libstdc++ with Clang, its build system uses this flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193319 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
6e40ca5ca48ce5862716c1b64509d068ae067246 |
24-Oct-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Teach Clang to recognize and ignore GCC's -fdiagnostics-show-location flag. We should probably wire at least some variants of this up to our actual diagnostics engine, but I'm leaving that for someone else. This fixes the builds of packages which hard code something here, at least including libstdc++ itself. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193318 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
2a20270a230ef52a3a31bdb603b61880a7affbc9 |
21-Oct-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Ignore -fstrength-reduce and -fno-strength-reduce. GCC does the same. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193103 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
1db2e279114348d276e2dea03b8d6175743505e7 |
21-Oct-2013 |
Silviu Baranga <silviu.baranga@arm.com> |
Add the __ARM_ARCH_EXT_IDIV__ predefine. It is set to 1 if we have hardware divide in the mode that we are compiling in (depending on the target features), not defined if we don't. Should be compatible with the GCC conterpart. Also adding a -hwdiv option to overide the default behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193074 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
9541141f4f131d76be609665b2a8500f770109c9 |
21-Oct-2013 |
Daniel Jasper <djasper@google.com> |
Expose -fmodule-name and -fmodule-map-file as driver options. Review: http://llvm-reviews.chandlerc.com/D1974 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193069 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
82a2911a94947e20ac4fd961b6322adf74ad9224 |
17-Oct-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Add support for asm listings (/FA and /Fa) This adds support for outputing the assembly to a file during compilation. It does this by changing the compilation pipeling to not use the integrated assembler, and keep the intermediate assembler file. Differential Revision: http://llvm-reviews.chandlerc.com/D1946 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192902 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
af7ed9e89074e37453cb2b9365b1882ab71163fb |
17-Oct-2013 |
Daniel Sanders <daniel.sanders@imgtec.com> |
[mips] Added -mfp64 and -mfp32 options. These options specify 64-bit FP registers and 32-bit FP registers respectively. When using -mfp32, the FPU has 16x double-precision registers overlapping with the 32x single-precision registers (each double-precision register overlaps two single-precision registers). When using -mfp64, the FPU has 32x double-precision registers overlapping with the 32x single-precision registers (each double-precision register overlaps with one single-precision register and has an additional 32-bits). MSA requires -mfp64. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192899 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
12a5a78fa881576a4b030a895bcaf8297db599e6 |
17-Oct-2013 |
Daniel Sanders <daniel.sanders@imgtec.com> |
[mips][msa] Update -mmsa help text and removed the hidden flag to better match conventions used by other targets git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192898 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
b754974ec32ab712ea7d8b52cd8037b24e7d6ed3 |
17-Oct-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Add support to the Clang driver for forwarding all of gfortran's flags to GCC when asked to compile a fortran input. This fixes a regression with essentially every Fortran compile since we started rejecting unknown flags. Also moves a mis-classified gfortran flag into the nicely documented set. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192867 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
40bd5ce479b5a23707821da4eadf831fade9f9c2 |
16-Oct-2013 |
Eric Christopher <echristo@gmail.com> |
Add minimal command line support for the VSX powerpc processor. Preprocessor support is still needed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192839 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
d5e59fc9df4cc7136e07c830ed08343a80a83b8e |
16-Oct-2013 |
Eric Christopher <echristo@gmail.com> |
Rework ppc options handling into a features group. This should have no functional behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192838 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
e517d1ebc67e70ff6d8a066ae6690ed51012252b |
12-Oct-2013 |
Nick Lewycky <nicholas@mxc.ca> |
Add missing flags -fexpensive-optimizations and -minline-all-stringops as noops. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192521 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
96d6c4596587df59821da10270d2102da4a49b73 |
11-Oct-2013 |
Manman Ren <manman.ren@gmail.com> |
Turn struct-path aware TBAA on by default. Use -no-struct-path-tbaa to turn it off. This is the same as r191695, which was reverted because it depends on a commit that has issues. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192497 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
1d544c8a82825d9597864fa3186473d9ec2ae837 |
11-Oct-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Mark /FA and /Fa as unsupported options git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192465 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
ff05979144fc199e229aaeb1d248867d87d0d866 |
11-Oct-2013 |
Nick Lewycky <nicholas@mxc.ca> |
Add -fno-function-sections and -fno-data-sections. Since -f{function,data}-sections had no tests at all, add some, and verify that the -fno variants work as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192413 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
99aacad9aacbd928ed05a9fec20aa39f7044cbe8 |
11-Oct-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Expose the -m32 and -m64 command-line options And add a test to check that they work. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192402 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
39ebb02cb0bd342ced56de6d19aa9992aa0371b8 |
09-Oct-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator. Introduce a new objcmt-atomic-property option and use it to infer all properties as 'atomic'. // rdar://14988132 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192317 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f6614613e402e0ee512d4792f22101f5ecaf0ef2 |
09-Oct-2013 |
Simon Atanasyan <simon@atanasyan.com> |
[Mips] Remove unused mips_CPUs_Group options group. It's better to join all MIPS-related options to the new m_mips_Features_Group later. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192291 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
305dc0dab74af453c645a0e99b211967b292fb10 |
09-Oct-2013 |
Simon Atanasyan <simon@atanasyan.com> |
[Mips] Make mips32/mips32r2/mips64/mips64r2 real aliases for appropriate march options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192289 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
7949acf370bd3f1f47c15f29ecaa28b8797a9c1f |
08-Oct-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: ignore the /sdl[-] flag In cl.exe, this flag turns some warnings into errors and adds some codegen security checks. I don't think we intend to support this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192201 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
5c7a04aceadf1c9efa060ad149aa0704f3e9ce8d |
08-Oct-2013 |
Reid Kleckner <reid@kleckner.net> |
clang-cl: Accept and mostly ignore /vm*, /GF, /GF-, /Zm, and /bigobj Patch by David Ziman! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192141 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
9a7e09fffbad657f775417252bc966098dfb1501 |
07-Oct-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Remove -ast-dump-xml. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192131 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
af9454635939bf070733d95d72284494dda6791d |
05-Oct-2013 |
Nick Lewycky <nicholas@mxc.ca> |
Add support for -mcx16, and predefine __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16 when it is enabled. Also enable it on the same architectures that GCC does. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192045 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
db1ad606af140311ff9de0887f74e29fefe4d2d6 |
03-Oct-2013 |
Nico Weber <nicolasweber@gmx.de> |
Don't complain about -fuse-ld=gold (cf r191429). (There's a real implementation for this flag in review.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191926 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
522f4d0fbf7e2001c199714a67ee98824a1be528 |
03-Oct-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Fix the test in clang_f_opts.c to fail on unknown options. Also fix options that were broken in the previous refactorings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191925 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
a9259c2c9783e79ce6814dec20782cf76f7b9bdf |
03-Oct-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Ignore -mieee-fp. It looks like clang always produce code with the ieee comparisons, so it is safe to ignore this flag (we still error on -mno-ieee-fp). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191912 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
a00f8737e671b587e83280a53e85562c00a7a78d |
02-Oct-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator: Add more options one for each kind of migration. // rdar://15003157 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191858 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
081099d302b79d1746c7a39da14e3265971eb718 |
02-Oct-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator. Starting distiguising different migrations under their own option. wip and // rdar://15003157 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191855 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
1596e5b368ddbdc4b9c3ecab75115b179b6e5391 |
01-Oct-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Revert r191586 and r191695. They cause crashes when building with -relaxed-aliasing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191725 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
03928403af872d3b04d1d5d5a5c4be2d4d366af4 |
30-Sep-2013 |
Manman Ren <manman.ren@gmail.com> |
Turn struct-path aware TBAA on by default. Use -no-struct-path-tbaa to turn it off. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191695 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
144fe706a0303860c03406e4d090e2f2191dfd0e |
30-Sep-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Add a bunch of other GCC '-f' options and ignore them. This covers every such option I've been able to find in the wild in our build system. Note that I haven't added test cases for this. I can do so if folks want, but they're *really* boring considering that this is all generated code to parse and ignore unsued options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191653 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
8af75cd47c60643c329d2444a5ae76cda2c9e24d |
30-Sep-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Switch one of the ignored boolean flag multiclasses to not have an 'f' prefix. Sort the ignored boolean 'f' flags at the bottom of this file. No functionality changed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191651 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
4cb295d3b32cb04215f87948fbf944ee4c31de1b |
29-Sep-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Implement C++1y sized deallocation (n3778). This is not enabled by -std=c++1y; instead, it's enabled by the -cc1 flag -fsized-deallocation, until we sort out the backward-compatibility issues. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191629 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
5cf3e358590939802f2e24075ed1c6088790f2be |
27-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Update the help text. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191554 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
14f9889b9b88f73a891688d7732bf01a127d9e7c |
27-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Replace -fobjc-default-synthesize-properties with disable-objc-default-synthesize-properties. We want the modern behavior most of the time, so inverting the option simplifies the driver and the tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191551 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
dea69a1149c5a77db69e037c9619a52d45fcf4a9 |
27-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove method that always returns true. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191533 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
bce8c928e888d2238523dafd670d3026e5682deb |
27-Sep-2013 |
Nick Lewycky <nicholas@mxc.ca> |
Add -fno-unsigned-char and ignore it. We already support -fno-signed-char, add both flags to the driver test. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191486 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
084be2df33f5ac99ba989b519921014d236aea10 |
26-Sep-2013 |
Bob Wilson <bob.wilson@apple.com> |
Fix up fallout from r187156. The previous change caused the driver to translate -Wa,-L to the -msave-temp-labels option for cc1as, but cc1as did not accept that option. This patch follows the same approach used for similar options (-relax-all, -noexecstack) in the previous patch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191458 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.td
|
0e4bdb01227b9cf613ba8db5e21f7a2f836374c9 |
26-Sep-2013 |
Reid Kleckner <reid@kleckner.net> |
clang-cl: Add /FI (forced include) as an alias for -include Patch by Jeff Muizelaar, with added test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191442 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
0fe441aa93d03d6cfe0944d949e43325b0647c1d |
26-Sep-2013 |
Jordan Rose <jordan_rose@apple.com> |
[driver] Ignore -fno-var-tracking; it's a GCC option we don't support. -fvar-tracking (which IIUC is on by default in GCC) will still generate an error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191439 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
6a09ad27c77a6795173322abf51c054d621236ec |
26-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove fno_builtin_strcat and fno_builtin_strcpy. They are already handled by the generic fno_bultin_, which also avoids unused warnings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191437 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
729be24cd826918bbfa788b8f2313e7d0e2a9b0e |
26-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove -fbuiltin-strcat and -fbuiltin-strcpy. These options don't exist in gcc and clang was not handling them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191435 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
4e77e0642468ccdbd6a4a2f167952eb76876712b |
26-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Ignore unknown -fno-builtin-*. This matches gcc's behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191434 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
e48ceda1043a1b8eeb52d43721b3c6f48a80d2ad |
26-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove unused parameter. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191433 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
7178f6e72c86bf267ed4eaf856870d8fd3cf0ad0 |
26-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Ignore some -f options that are supported by gcc. It is possible that we should say some of these are unsupported, but this is not any worse than the old behavior of ignoring all unknown -f options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191429 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
49b3533e1ac091894537d1a7be4bc51fef1ae1e5 |
25-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Produce an error for unknown -f options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191394 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
db10fe278886eadaff028a747b260f06d5a37c8b |
25-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Move --relocatable-pch to Options.td. It is a valid driver option (we have tests for that), so it should not be marked as NoDriverOption. No functionality change other than it showing in --help. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191377 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
74cd65e8dc60fe9e6c397b3393da7303debbc971 |
25-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove unused option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191373 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
ed919388e498379c7f8a32b73341bbd491fa29fa |
24-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Produce an error for unknown -m options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191328 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
a8f7d9dd926d61c92dbe194e9b6f51a9c015cea5 |
24-Sep-2013 |
Yunzhong Gao <Yunzhong_Gao@playstation.sony.com> |
Adding -mtbm and -mno-tbm command line options to the clang front end for the x86 TBM instruction set. Also adding a __TBM__ macro if the TBM feature is enabled. Otherwise there should be no functionality change to existing features. Phabricator code review is located here: http://llvm-reviews.chandlerc.com/D1693 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191326 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f26d8bc4406be1311a38fd1761d5ddeb2f5a38b6 |
24-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove a use of OPT_m_Joined. This patch turns the -mv* hexagon options into aliases. We should really produce errors for invalid versions in the driver, but this patch preserves the old behavior for now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191298 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
1b8840ce0d7a3383915b29dc3779dfadec817458 |
24-Sep-2013 |
Daniel Jasper <djasper@google.com> |
Add -fmodule-map-file option. With this option, arbitrarily named module map files can be specified to be loaded as required for headers in the respective (sub)directories. This, together with the extern module declaration allows for specifying module maps in a modular fashion without the need for files called "module.map". Among other things, this allows a directory to contain two modules that are completely independent of one another. Review: http://llvm-reviews.chandlerc.com/D1697. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191284 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
ddd2dfc1d3f4a36cbe8cd775c588623a17049f9f |
24-Sep-2013 |
Daniel Jasper <djasper@google.com> |
Module use declarations (II) Review: http://llvm-reviews.chandlerc.com/D1546. I have picked up this patch form Lawrence (http://llvm-reviews.chandlerc.com/D1063) and did a few changes. From the original change description (updated as appropriate): This patch adds a check that ensures that modules only use modules they have so declared. To this end, it adds a statement on intended module use to the module.map grammar: use module-id A module can then only use headers from other modules if it 'uses' them. This enforcement is off by default, but may be turned on with the new option -fmodules-decluse. When enforcing the module semantics, we also need to consider a source file part of a module. This is achieved with a compiler option -fmodule-name=<module-id>. The compiler at present only applies restrictions to the module directly being built. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191283 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
fc12c4aa20876bdf91bff98dc50eb68b4dd04b80 |
24-Sep-2013 |
Simon Atanasyan <simon@atanasyan.com> |
[Mips] Support -mnan=2008 option. Define "__mips_nan2008" macros and pass this option to the assembler. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191282 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
c3c66879c329bf8caf4f0fcf62093c93a3f8c342 |
24-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove unused option. gcc doesn't support "gcc -m sse" and this was not tested in clang and only used for link argument on darwin, so this was very likely just a bug. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191251 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
c8ba0a0acd30f0b56d08a3a0947f68ac01a40730 |
19-Sep-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: implement /fallback mode When this flag is enabled, clang-cl falls back to cl.exe if it cannot compile the code itself for some reason. The idea is to use this to help build projects that almost compile with clang-cl, except for some files that can then be built with the fallback mechanism. Differential Revision: http://llvm-reviews.chandlerc.com/D1711 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191034 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
ob.h
ool.h
|
f6ae52b3b69f49139b0d7d181e58be1770b08955 |
19-Sep-2013 |
Reid Kleckner <reid@kleckner.net> |
clang-cl: Accept -fmsc-version so we can set it without -Xclang git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@191011 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
b83f5a77335ca8a5b41ba4e17aa8d4bb6248c1e4 |
19-Sep-2013 |
Ben Langmuir <ben.langmuir@intel.com> |
Add C intrinsics for Intel SHA Extensions Intrinsics added shaintrin.h, which is included from x86intrin.h if __SHA__ is enabled. SHA implies SSE2, which is needed for the __m128i type. Also add the -msha/-mno-sha option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190999 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
64228b6c0696f3579d40bab0ef40691ef4f41242 |
18-Sep-2013 |
Hans Wennborg <hans@hanshq.net> |
Add comment about exporting clang::driver::ArgStringList, as suggested by Jordan on IRC. Also, use the unqualified name in Job.cpp. And while we're here, refer to StringRef with the unqualified name, because we have a using directive for that too. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190909 91177308-0d34-0410-b5e6-96231b3b80d8
ob.h
|
5c6ecf5a07317edc4a01f967a43eb3f76142d387 |
18-Sep-2013 |
Hans Wennborg <hans@hanshq.net> |
Revert r190902 and r190906 The first one broke the build, and the latter one made it worse. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190907 91177308-0d34-0410-b5e6-96231b3b80d8
ob.h
|
4832ee31e6ab96b77ad429ef9347fbf09c099f47 |
18-Sep-2013 |
Hans Wennborg <hans@hanshq.net> |
Revert "Move using directive from Job.h to Job.cpp" (r190902) Seems like it was intentional to export ArgStringList as driver::ArgStringList, and e.g. examples/clang-interpreter/main.cpp uses it this way. However, exporting it with a typedef seems like a more common way to do it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190906 91177308-0d34-0410-b5e6-96231b3b80d8
ob.h
|
f1666bbaba75eff59ae47e42d6d601e3d36781ff |
18-Sep-2013 |
Hans Wennborg <hans@hanshq.net> |
Move using directive from Job.h to Job.cpp I don't think it belongs in the header, but seems handy in the .cpp file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190902 91177308-0d34-0410-b5e6-96231b3b80d8
ob.h
|
007ef4f775797665a2b2df2c693517ac3a275f5c |
18-Sep-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: ignore ths /GS- flag The /GS- flag is used to turn off run-time buffer security checks (/GS). Since no such checks are enabled in the first place, I think we should just ignore this flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190900 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
d8df3f70930b2251119ed363a7fde737c76af784 |
17-Sep-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: ignore compile-only options in link-only invocations. Previously we would warn about unused arguments such as /MD when linking. Clang already has logic to ignore compile-only options, e.g. for -D and -U. This patch extends that to include clang-cl's compile-only options too. Also, some clang-cl options should always be ignored. Doing this earlier means they get ignored both for compilation and link-only invocations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190825 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
6560839a11e653800ec92a2279cef5988d861a7d |
17-Sep-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: ignore all /w<foo> options We previously ignored /wd<n>, but I think we can ignore the rest too. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190819 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
0f43a6daddd41722a4183a49b344f85b5aefbb33 |
14-Sep-2013 |
Eric Christopher <echristo@gmail.com> |
Add support for -ggnu-pubnames matching the llvm support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190729 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
1eef85246b411b55c493098266746d0d83c241ea |
13-Sep-2013 |
David Tweed <david.tweed@arm.com> |
Certain multi-platform languages, such as OpenCL, have the concept of address spaces which is both (1) a "semantic" concept and (2) possibly a hardware level restriction. It is desirable to be able to discard/merge the LLVM-level address spaces on arguments for which there is no difference to the current backend while keeping track of the semantic address spaces in a funciton prototype. To do this enable addition of the address space into the name-mangling process. Add some tests to document this behaviour against inadvertent changes. Patch by Michele Scandale! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190684 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
aaaa2a1889fe882e7e41048e3b298ca594454eb1 |
12-Sep-2013 |
Hans Wennborg <hans@hanshq.net> |
Move the execution code from Compilation::ExecuteCommand to Command::Execute I think it makes sense that a Command knows how to execute itself. There's no functionality change but i rewrote the code to avoid the manual memory management of Argv. My motivation for this is that I plan to subclass Command to build fall-back functionality into clang-cl. Differential Revision: http://llvm-reviews.chandlerc.com/D1654 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190621 91177308-0d34-0410-b5e6-96231b3b80d8
ob.h
|
fc3389701ead32709ba84825e4c06651065da2c0 |
12-Sep-2013 |
Hans Wennborg <hans@hanshq.net> |
Move Compilation::PrintJob and PrintDiagnosticJob into Job::Print. This moves the code to Job.cpp, which seems like a more natural fit, and replaces the "is this a JobList? is this a Command?" logic with a virtual function call. It also removes the code duplication between PrintJob and PrintDiagnosticJob and simplifies the code a little. There's no functionality change here, except that the Executable is now always printed within quotes, whereas it would previously not be quoted in crash reports, which I think was a bug. Differential Revision: http://llvm-reviews.chandlerc.com/D1653 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190620 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
ob.h
|
42ade496f79d2b9b1ff9fbdc30dd025c168be7a3 |
11-Sep-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Warn about overriding /MD with /MT etc. This also bakes the /M options into a separate option group to make them easier to refer to from the code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190529 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
2956ef43da9c0e7bce8fae4a015255a2c19458bb |
11-Sep-2013 |
Nico Rieck <nico.rieck@gmail.com> |
Add -fansi-escape-codes option Some build systems use pipes for stdin/stderr. On nix-ish platforms colored output can be forced by -fcolor-diagnostics. On Windows this option has no effect in these cases because LLVM uses the console API (which only operates on the console buffer) even if a console wrapper capable of interpreting ANSI escape codes is used. The -fansi-escape-codes option allows switching from the console API to ANSI escape codes. It has no effect on other platforms. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190464 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
6d0a8d56b4386bd3f1091bf15d88491ad1299913 |
10-Sep-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Support building DLLs (PR17083) This adds driver support for building DLLs (the /LD and /LDd flags). It basically does two things: runtime selection and passing -dll and -implib to the linker. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190428 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
5bfc796a03e45c23e498315b7b49a5c46fe77446 |
09-Sep-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: parse (but don't support) the /o flag Apparently folks run into this (PR17097). The flag is not supported by MSVC either, but we should parse it so we don't get confused when it occurs. This changes the clang-cl output for "clang-cl /c /o foo.obj" from: clang-cl.exe: error: no such file or directory: '/o' clang-cl.exe: error: no such file or directory: 'foo.obj' to: clang-cl.exe: warning: argument unused during compilation: '/o bajs.obj' git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190323 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
c64bbe84e4d796a2749a63293c891693db613eff |
06-Sep-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: ignore /RTC options (PR17129) I don't think Clang intends to implement this functionality. ASan should be used instead. Since /RTC is often passed by default from MSBuild, ignore the option to avoid bloating the output. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190202 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
535ae75f7b02b0d7adf76ed18f7f045efd54947c |
06-Sep-2013 |
Hans Wennborg <hans@hanshq.net> |
Remove unused method Job::AddCommand. I was going to update the comment referring to PipedJob, which was removed some time ago, but then it turned out that this method is not actually used at all. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190171 91177308-0d34-0410-b5e6-96231b3b80d8
ob.h
|
b2c70470def1ab0380be36a295ce4aa7864abfe1 |
05-Sep-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Support suppressing unused arguments warnings as a core option so that it works in the CL flavor driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190040 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
6155fbe1f6674eb0aab98156925938fec558e335 |
04-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove the -fuse-gold-plugin driver option. * It was redundant with -flto. * It was confusing since -uAnythingElse is a different option. * GCC uses -fuse-linker-plugin, so it was not even a compatibility option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189976 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
709a8cac10585d9b8f3835abf1061c6b3a6c7b1b |
04-Sep-2013 |
Reid Kleckner <reid@kleckner.net> |
clang-cl: Make -W a core option so we can adjust clang warnings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189882 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
2dfbb3234fe31f338523dd32964d323cda71e63b |
03-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove unused group. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189805 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
a673dbda6f67dbeb06aa2f99312200c8f5034cab |
03-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Use -### instead of -ccc-print-options. Convert the last few tests using -ccc-print-options to -### and remove -ccc-print-options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189802 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ptions.td
|
39024ecff9d9e1be1858f83b0dd2ac12d8ac5751 |
03-Sep-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove 3 unused ccc options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189794 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
5b98aba1d74184923da32016c3abbc20e9a7686d |
29-Aug-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjectiveC migrator. This patch infers readonly properties for no-parameter instance methods returning non-void. This will be quite noisy. So, it is placed under a new migrator flag -objcmt-migrate-readonly-property. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189537 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
3c4da0c4c84521367e84632f5f627b3439e61bcd |
27-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Support -fsanitize=address This exposes the -fsanitize=address option and adds the runtime library to the link command. Differential Revision: http://llvm-reviews.chandlerc.com/D1526 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189389 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
55ee1ebeb0b9f7b26919c325582f1e6a05df4ec8 |
27-Aug-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Warn that -O4 is the same as -O3. We error on -O5 and higher. While it is tempting to do the same for -O4, I agree with Jordan Rose: we should warn for a release at least first. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189369 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
168de198e5b2333b9135a5c00546da558dbb8527 |
26-Aug-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Simplify now that -O4 just maps to -O3 and -O is an alias of -O2. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189218 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
02ab7d3c0e1e5278ca0451dc846aedcf45e623cf |
24-Aug-2013 |
Renato Golin <renato.golin@linaro.org> |
Add gcc ARM flags -munaligned-access / -mno-unaligned-access clang already had a mstrict-align which mentiones "Force all memory accesses to be aligned (ARM only)". On gcc arm this is controlled by -munaligned-access / -mno-unaligned-access. Add the gcc versions to the frontend and make -mstrict-align and alias to -mno-unaligned-access and only show it in clang -cc1 -help. Since the default value for unaligned accesses / strict alignment depends on the tripple, both the enable and disable flags are added. If both are set, the no-unaligned-access is used. Patch by Jeroen Hofstee. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189175 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
45bd2946df2ff7460b7daf06a4fe34de8a58b8cf |
24-Aug-2013 |
Renato Golin <renato.golin@linaro.org> |
Add the -ffixed-r9 flag for ARM. This patch adds the -ffixed-r9 flag to clang to instruct llvm to globally preserve the contents of r9. The flag is added to the newly created ARM specific group. While at it, also place marm / mno-thumb in that group. Patch by Jeroen Hofstee. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189174 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
3613c004749f8976452e1ed2138d4aeb123b35db |
22-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Add test cases for avx512 feature flags. Fix typo in avx512pf options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188984 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
5389b84a780ac17b63c10ad97cd5e3aaa41595b7 |
21-Aug-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Move -mfpmath handling to -cc1 and implement it for x86. The original idea was to implement it all on the driver, but to do that the driver needs to know the sse level and to do that it has to know the default features of a cpu. Benjamin Kramer pointed out that if one day we decide to implement support for ' __attribute__ ((__target__ ("arch=core2")))', then the frontend needs to keep its knowledge of default features of a cpu. To avoid duplicating which part of clang handles default cpu features, it is probably better to handle -mfpmath in the frontend. For ARM this patch is just a small improvement. Instead of a cpu list, we check if neon is enabled, which allows us to reject things like -mcpu=cortex-a9 -mfpu=vfp -mfpmath=neon For X86, since LLVM doesn't support an independent ssefp feature, we just make sure the selected -mfpmath matches the sse level. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188939 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
bca2c4fab5c67a9121c96f15fb5caf09c25cf8f6 |
21-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Add avx512cd, avx512er, avx512pf feature flags and enable them on KNL CPU. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188867 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
b7a95d2941869f2dfd0d2f0e805f794b46dd4b55 |
21-Aug-2013 |
Craig Topper <craig.topper@gmail.com> |
Replace avx-512 with avx512f to match llvm side and what gcc patches appear to be using. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188860 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
9b803cd682efb9c146a02b3a1ed5b7dd80e6b216 |
20-Aug-2013 |
Reid Kleckner <reid@kleckner.net> |
clang-cl: Ignore the /wd n flag for disabling a warning Clang doesn't have a table mapping cl.exe to clang warnings. While some warnings like -Wsign-compare exist in both compilers, the majority do not correspond and should usually be ignored. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188732 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
12627e505034e87ed6bcb361bab55edc67f5a7d6 |
20-Aug-2013 |
Reid Kleckner <reid@kleckner.net> |
clang-cl: Add /MP[n] to the list of unsupported and ignored flags This flag tells cl.exe to use up to n processes to compile the provided source files. I have no plans to implement this in clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188729 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
4b36fb83c13a0aa2fd7e6e9200f70208791be2b3 |
19-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Expose the -Xclang option git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188685 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
1b8f12d46c10169bb949372ec5fc4c58afc2ced1 |
19-Aug-2013 |
Alexey Samsonov <samsonov@google.com> |
Move SanitizerArgs to the clang Driver Summary: This change turns SanitizerArgs into high-level options stored in the Driver, which are parsed lazily. This fixes an issue of multiple copies of the same diagnostic message produced by sanitizer arguments parser. Reviewers: rsmith Reviewed By: rsmith CC: chandlerc, eugenis, cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1341 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188660 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
anitizerArgs.h
oolChain.h
|
5db9527a2e582c17bc835e6e2a5a8178efa5a1e8 |
14-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Support /link option and set target to win32 This adds support for the /link option, which forwards subsequent arguments to the linker. The test for this will only work when targetting win32. Since that's the only target where clang-cl makes sense, use that target by default. Differential Revision: http://llvm-reviews.chandlerc.com/D1388 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188331 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
73052bf669d3fe4c202cff2792cfe215cf5727be |
13-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
Handle "--" explicitly in the driver Anything that comes after -- is treated as an input file. This used to be handled automagically by the option parsing library, but after LLVM r188314, we should handle it ourselves. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188316 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
9c0ed9122da2ec12798459328ba63511b1aab7d4 |
13-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Sink /Fe and /Fo diagnostic code into BuildActions Differential Revision: http://llvm-reviews.chandlerc.com/D1370 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188226 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
c65c72d198b02c0d90c6bcced655e4bb11ed3f37 |
12-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Support the /Fe option This is used to name the linked output file. Differential Revision: http://llvm-reviews.chandlerc.com/D1344 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188210 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
c613b67f4f3e5d11d6af6426fd9b8b6a197d2b6b |
12-Aug-2013 |
Jack Carter <jack.carter@imgtec.com> |
[Mips] MSA frontend option support This patch adds -mmsa and -mno-msa to the options supported by clang to enable and disable support for MSA. When MSA is enabled, a predefined macro '__mips_msa' is defined to 1. Patch by Daniel Sanders git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188184 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
708002ede3938256a6223d153a0c040f7a40f5cc |
09-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Support /showIncludes This option prints information about #included files to stderr. Clang could already do it, this patch just teaches the existing code about the /showIncludes style and adds the flag. Differential Revision: http://llvm-reviews.chandlerc.com/D1333 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188037 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
LCompatOptions.td
ptions.td
|
c8e8e8faff9c21952cca04be664c8e25bd599300 |
09-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Map /Oi[-] to -f[no-]builtin Differential Revision: http://llvm-reviews.chandlerc.com/D1328 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188027 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
a32c52367ac31982fa7c2a7ba959dadaf3693f3b |
08-Aug-2013 |
Reid Kleckner <reid@kleckner.net> |
Revert "clang-cl: Hook up /Za to prevent adding oldnames.lib dependency" This reverts commit r187991 and adjusts the comment. /Za is much more involved, and we don't want to give anyone the impression we actually support it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187998 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
bccf68f0901f6457ff00874ef57644100a1c7a59 |
08-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Hook up /Za to prevent adding oldnames.lib dependency The /Za flag should probably do more, but let's start with this. Differential Revision: http://llvm-reviews.chandlerc.com/D1320 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187991 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
b26404a7505dab7ec3a16f6e3b85f95cfd59ba93 |
08-Aug-2013 |
Chandler Carruth <chandlerc@gmail.com> |
The only useful loop unrolling flag to give realistically is '-fno-unroll-loops'. The option to the backend is even called 'DisableUnrollLoops'. This is precisely the form that Clang *didn't* support. We didn't recognize the flag, we didn't pass it to the CC1 layer, and even if we did we wouldn't use it. Clang only inspected the positive form of the flag, and only did so to enable loop unrolling when the optimization level wasn't high enough. This only occurs for an optimization level that even has a chance of running the loop unroller when optimizing for size. This commit wires up the 'no' variant, and switches the code to actually follow the standard flag pattern of using the last flag and allowing a flag in either direction to override the default. I think this is still wrong. I don't know why we disable the loop unroller entirely *from Clang* when optimizing for size, as the loop unrolling pass *already has special logic* for the case where the function is attributed as optimized for size! We should really be trusting that. Maybe in a follow-up patch, I don't really want to change behavior here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187969 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
b3574796d7cc0113e54b6516fc16e17ca09459fb |
08-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Support the run-time selection options (/MD, /MT et al.) These flags set some preprocessor macros and injects a dependency on the runtime library into the object file, which later is picked up by the linker. This also adds a new CC1 flag for adding a dependent library. Differential Revision: http://llvm-reviews.chandlerc.com/D1315 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187945 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
LCompatOptions.td
|
909930fc19ff69b08f2ea6f6e2996d24c816f311 |
07-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Use .obj as object file extension instead of .o Differential Revision: http://llvm-reviews.chandlerc.com/D1302 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187840 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ypes.h
|
ab50ccd7f756a1e617ebd32471ba9565bb240d37 |
07-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Implement support for the /Fo option This implements support for the /Fo option, which is used to set the filename or output dir for object files. Differential Revision: http://llvm-reviews.chandlerc.com/D1302 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187820 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
4c587532e108725e38c5546976ee81c8bea04bb7 |
06-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: Implement the /Tc, /TC, /Tp and /TP options. These are used to specify source files, and whether to treat source files as C or C++. Differential Revision: http://llvm-reviews.chandlerc.com/D1290 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187760 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
056ec12ca14ee5014ea49786f719ceaa299a7e19 |
05-Aug-2013 |
Daniel Jasper <djasper@google.com> |
Add option to disable module loading. This patch was created by Lawrence Crowl and reviewed in: http://llvm-reviews.chandlerc.com/D963 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187738 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
a1c50a1f55086cda654a903abd4ce1908e580faa |
03-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
Options.td: remove _DASH_DASH Since LLVM r187675, this is handled by the option parsing code itself. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187689 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
09c3463441ffca4bde5e8612222f8cc6ae0ec9a5 |
03-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
Re-commit r187637: "clang-cl: add more options" > This adds a bunch of options to clang-cl. Notably, this includes > all the options that get passed when doing a default build of a > command-line project with msbuild.exe in Debug and Release modes, > and I believe all flags from Reid's original patch. The original commit was reverted in r187640 after it broke the Mac build. This should now be fixed, by Clang r187668, LLVM r187675, and putting a -- before %s in the test. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187679 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
e7a9a67f9842dcdc13d322a23110f42bd025a306 |
02-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
Revert r187537 "clang-cl: add more options" It broke the "phase1 - sanity" buildbot. Reverting until we can figure out what's going on. And Eric says it broke all current Mac builds actually. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187640 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
ac8b5f53d4646b4f76565a03ae2a85b6c67cdcc1 |
02-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: add more options This adds a bunch of options to clang-cl. Notably, this includes all the options that get passed when doing a default build of a command-line project with msbuild.exe in Debug and Release modes, and I believe all flags from Reid's original patch. Differential Revision: http://llvm-reviews.chandlerc.com/D1264 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187637 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
|
60704acfbdae5d4c95caf042b3fb73f8da7e6122 |
01-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
Options.td: O0 and O4 are not Joined options (I'm not sure how to test this because the Driver will still accept e.g. "-O4foo", but it goes in the catch-all -O option instead of -O4.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187602 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f10fa8d04773410860cd347aebf77c27434aaf26 |
01-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
Options: Use AliasArgs for -O -> -O2 translation. This way we can do the translation in the .td file rather than manually. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187583 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
d145ce71fbe25c578f7d6a56320b64abf808ba78 |
01-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
Remove the SUPPORT_ALIASARGS define It is not needed after LLVM r187546. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187550 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.h
ptions.h
|
b087a5d13d6edd8b54fbb0683d6b9d1768a86c47 |
01-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
Make -m[no-]pascal-strings an alias of -f[no]pascal-strings in the .td file This way we don't have to translate it manually in Clang::ConstructJob. Differential Revision: http://llvm-reviews.chandlerc.com/D1249 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187547 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
438292860a49f6998dff4db0b9ff04bcc0d5ae33 |
01-Aug-2013 |
Hans Wennborg <hans@hanshq.net> |
Option parsing tables: pick up AliasArgs from the OPTION macro. This depends on LLVM r187537. The SUPPORT_ALIASARGS macro will be removed once all option parsing clients have been updated. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187538 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.h
ptions.h
|
78d0fbfe3aa0dcf158fed95a51460e5d769447ee |
31-Jul-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: add the /c, /W0 and /W1 options This adds a few more clang-cl options. It also exposes two core clang options to the clang-cl mode: we need to be able to claim --driver_mode so it doesn't show up as unused in cl mode, and we need -### for tests. Differential Revision: http://llvm-reviews.chandlerc.com/D1232 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187527 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
ptions.h
ptions.td
|
6365ab91a0cf2f20c73ea9c39b55c14ab438018e |
30-Jul-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Start keeping track of what work was done to detect a GCC installation on the system, and report it when running the driver in verbose mode. Without this it is essentially impossible to understand why a particular GCC toolchain is used by Clang for libstdc++, libgcc, etc. This also required threading a hook through the toolchain layers for a specific toolchain implementation to print custom information under 'clang -v'. The naming here isn't spectacular. Suggestions welcome. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187427 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
6981330cc231e4e2ccbd38679209e04b776483eb |
27-Jul-2013 |
Hans Wennborg <hans@hanshq.net> |
clang-cl: add support for the /? and /help options This establishes a new Flag in Options.td, which can be assigned to options that should be made available in clang's cl.exe compatible mode, and updates the Driver to make use of the flag. (The whitespace change to CMakeLists forces the build to re-run CMake and pick up the include dependency on the new .td file. This makes the build work if someone moves backwards in commit history after this change.) Differential Revision: http://llvm-reviews.chandlerc.com/D1215 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187280 91177308-0d34-0410-b5e6-96231b3b80d8
LCompatOptions.td
river.h
akefile
ptions.h
ptions.td
|
b28b04407e6ed06431cb58176268ab719e01fae8 |
26-Jul-2013 |
Hans Wennborg <hans@hanshq.net> |
Options.td: rename CCC{Driver,Debug}Opt to Internal{Driver,Debug}Opt Also rename ccc_Group, ccc_driver_Group and ccc_Debug_Group similarly. Differential Revision: http://llvm-reviews.chandlerc.com/D1218 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187239 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
b16bb3535948c27139753f4e4627008560cfcaf5 |
26-Jul-2013 |
Hans Wennborg <hans@hanshq.net> |
Options.td: remove a_Group and L_Group. They don't seems to serve any purpose. Differential Revision: http://llvm-reviews.chandlerc.com/D1227 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187236 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
6cf69140a4d6d32802b015611833cdab1864bc15 |
26-Jul-2013 |
Hans Wennborg <hans@hanshq.net> |
Options.td: Update HelpText of CCCDriverOpt This should have been part of r186720. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187218 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
19caff4f9a38c23bffdc8ff801a36026ab61ebd7 |
26-Jul-2013 |
Hans Wennborg <hans@hanshq.net> |
Options.td: fold the NoForward flag into DriverOption They seemed to have the same implications, and this makes for one less flag to worry about. Differential Revision: http://llvm-reviews.chandlerc.com/D1219 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187168 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.h
ptions.td
|
d78aef1f8339fbe6784bf1628dcec19ca1af2b6c |
26-Jul-2013 |
Hans Wennborg <hans@hanshq.net> |
Options.td: finish comment about CompileOnly_Group git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187163 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
73168db4feadbb5e8915e71369aad33292860427 |
25-Jul-2013 |
David Blaikie <dblaikie@gmail.com> |
Don't forward all assembler arguments untouched to -cc1as Use the same filtering for assembly arguments to -cc1as as we do for -cc1, this allows a consistent (& more useful) diagnostic experience for users (rather than getting an error from -cc1as (which a user shouldn't really be thinking about) about --foo, they get an error from clang about --foo in -Wa,) I'm sort of surprised by the separation of -cc1as & the separate argument handling, etc, but at least this removes a little bit of the duplication. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187156 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.td
|
75fcef9a16e98b95fa980f1b2c4fc0d4090955d8 |
23-Jul-2013 |
Hans Wennborg <hans@hanshq.net> |
Remove HelpText for -fno-diagnostics-show-note-include-stack The help text was wrong, and we already provide help text on the option that actually changes anything, i.e. -fdiagnostics-show-note-include-stack. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186989 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
7d3240d3c949b8d0697a23a202cceba4d1a2d21f |
23-Jul-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove the -ccc-echo option that is now unused. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186970 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ptions.td
|
264d206244bde858471e4b6211aeba28fd8ce7cb |
23-Jul-2013 |
Eli Bendersky <eliben@google.com> |
Add a -fno-math-builtin option to the Clang -cc1 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186899 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
c2f531a1300cc7a79cb8dde12cb993da82beba1b |
19-Jul-2013 |
Hans Wennborg <hans@hanshq.net> |
Add a cl.exe compatible driver mode The mode doesn't actually do anything yet, but this provides a way to get into it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186720 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
cdbc3b36bd6167fcb1e2de080e0d9bcd35b166ea |
19-Jul-2013 |
Akira Hatanaka <ahatanaka@mips.com> |
[mips] Add support for command-line options -mno-check-zero-division and -mcheck-zero-division. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186710 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
76b86c2e79a58910a641d449f229889d671d8a38 |
18-Jul-2013 |
Hans Wennborg <hans@hanshq.net> |
Turn Driver::CCCIsCXX and CCCIsCPP into a single Mode enum, and add a new option --driver-mode= to control it explicitly. The CCCIsCXX and CCCIsCPP flags were non-overlapping, i.e. there are currently really three modes that Clang can run in: gcc, g++ or cpp, so it makes sense to represent them as an enum. Having a command line flag to control it helps testing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186605 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ptions.td
|
b17a2c119877b47cb3fb68c76a91dfe4d8cc6199 |
17-Jul-2013 |
Hans Wennborg <hans@hanshq.net> |
Option parsing tables: remove some unnecessary #defines Also make some strings static and add missing #undef's git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186518 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.h
ptions.h
|
d412999a3da6387dbfaf00f7647132082e94310e |
09-Jul-2013 |
Fariborz Jahanian <fjahanian@apple.com> |
ObjC migrator: Add -objcmt-migrate-property to do property migration. Also, fixes an old bug where older migration flags were not being checked for properly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185948 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
6b9240e058bf3451685df73fc8ce181b3046e92b |
05-Jul-2013 |
Craig Topper <craig.topper@gmail.com> |
Use SmallVectorImpl& for function arguments instead of SmallVector. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185715 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.h
|
2b78142636ad8470bc6d05d7508623ff7e3905d4 |
03-Jul-2013 |
Eli Friedman <eli.friedman@gmail.com> |
Add file suffix for assembler-with-cpp. Fixes crash when trying to recover from a crash on an assembler-with-cpp file. (Not sure how to write a testcase.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185562 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.def
|
fdf137b9073aa52423183fe886d072bc3b7d3889 |
25-Jun-2013 |
Nick Lewycky <nicholas@mxc.ca> |
Make -vectorize-... proper cc1 flags instead of abusing -backend-option. Fixes usage of clang as a library. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184812 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
ab297ccbcc51d5197d4ddb4e99b7bc8868d38314 |
24-Jun-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Add -ast-dump-lookups switch to -cc1 to dump DeclContext lookup maps. Test to follow. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184678 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
fbd4116c4287cba862fbf3ff77b4032cbe98f78a |
20-Jun-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Update two options to my proposed syntax for user-facing driver options: -gcc-toolchain foo -> --gcc-toolchain=foo -target foo -> --target=foo I've added legacy aliases for the original spellings. I've updated the canonical tests to check both spellings, and switched all of the -gcc-toolchain usages elsewhere in the test suite to use the new one. I've updated some of the usages of -target to the new syntax, but will finish that in a separate entirely mechanical change once I'm sure this won't get rolled back for some reason (It touches a *huge* number of RUN lines in the test suite unsurprisingly). A nice result is that the three most common flags I end up using when doing cross compiles are all now consistent: --target=, --sysroot=, and --gcc-toolchain=. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184408 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
fc0f91cf0673775ce4b8b174dbb05ad2e4e6cd01 |
19-Jun-2013 |
Manman Ren <mren@apple.com> |
Debug Info: support for gdwarf-2 gdwarf-3 gdwarf-4 These options will add a module flag with name "Dwarf Version". The behavior flag is currently set to Warning, so when two values disagree, a warning will be emitted. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184276 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
15f03ea2e223631e71d4ae75db986e2951d4e092 |
18-Jun-2013 |
Reid Kleckner <reid@kleckner.net> |
Remove option emitter from clang-tblgen The CMake build was still using it because I forgot to s/CLANG/LLVM/ in the tablegen() call. The Makefile build is already using llvm-tblgen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184192 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
b8b52972c72b2ba6fe171c522e5d3d7d69503021 |
18-Jun-2013 |
John McCall <rjmccall@apple.com> |
Add support for -fpcc-struct-return. Patch by Arthur O'Dwyer! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184166 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
3e8ac1b4d50a3b13bdda99f9d842b0127315ecf0 |
18-Jun-2013 |
Eric Christopher <echristo@gmail.com> |
Accept and ignore -fdebug-types-section for now. This will be used later with dwarf4 type hashing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184152 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
a372f40dac73b69936f6a713df0808c740bb326c |
17-Jun-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Include PathV1.h only where it is used. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184090 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
|
dd0b3c4c72464af92e2c27dd5a67e29f91ba7b28 |
17-Jun-2013 |
Reid Kleckner <reid@kleckner.net> |
[Driver] Remove the using namespace directives from headers This adds a bunch of llvm::opt name specifiers to all the uses of types from that namespace. Reviewers: espindola Differential Revision: http://llvm-reviews.chandlerc.com/D983 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@184079 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
C1AsOptions.h
ompilation.h
river.h
ob.h
ool.h
oolChain.h
|
b1e25a1bc03292dc538d336573e0be1490223171 |
14-Jun-2013 |
Reid Kleckner <reid@kleckner.net> |
[Driver] Refactor clang driver to use LLVM's Option library The big changes are: - Deleting Driver/(Arg|Opt)* - Rewriting includes to llvm/Option/ and re-sorting - 'using namespace llvm::opt' in clang::driver - Fixing the autoconf build by adding option everywhere As discussed in the review, this change includes using directives in header files. I'll make follow up changes to remove those in favor of name specifiers. Reviewers: espindola Differential Revision: http://llvm-reviews.chandlerc.com/D975 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183989 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
rg.h
rgList.h
C1AsOptions.h
C1AsOptions.td
MakeLists.txt
ompilation.h
river.h
ob.h
akefile
ptParser.td
ptSpecifier.h
ptTable.h
ption.h
ptions.h
ptions.td
ool.h
oolChain.h
til.h
|
57a3bbfa9a97f174b0c80b0309e32f4329c4ae1b |
13-Jun-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Use the sys::ExecuteAndWait that takes StringRefs. Also don't depend on Program.h including PathV1.h. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183935 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
|
34392373fe25e943586de0fdbe37b806c3f7ff70 |
11-Jun-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Include PathV1.h in files that use it. This is preparation for replacing Path.h with PathV2.h. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183781 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
|
9adba39460dfa5282b75dbd27db44ccfb4d1f511 |
05-Jun-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Default to PIE and using stack protection on OpenBSD. Patch by Matthew Dempsky. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183295 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
bdaa13418851be5cc1ca3be88fbd82b15efecde7 |
27-May-2013 |
Peter Collingbourne <peter@pcc.me.uk> |
Driver: implement --dyld-prefix option. This option is used to select a dynamic loader prefix to be used at runtime. Currently this is implemented for the Linux toolchain. Differential Revision: http://llvm-reviews.chandlerc.com/D851 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@182744 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ptions.td
|
d5dcdb2658c5aa4568c61917a1620434b055c113 |
24-May-2013 |
Bill Wendling <isanbard@gmail.com> |
Constify the 'dump' method so that it can be called by a const object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@182620 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
6bdc4c65c0bfac1f42c3b57680ac4e45b622b266 |
11-May-2013 |
Simon Atanasyan <simon@atanasyan.com> |
[Mips] Add -mldc1-sdc1 / -mno-ldc1-sdc1 command line options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181660 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
65cd8132d531ba14f81fe3d8f078558be78c2f95 |
09-May-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
Documentation warning: \param, not \parm git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181550 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
|
e7565635002ce0daaaf4b714cdb472507af462ee |
08-May-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
C++1y: Add a step limit to constexpr evaluation, to catch runaway loops. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181388 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
d99990df0b4aca43a0315b2928ff1b8baf704052 |
04-May-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Revert r177218. Per discussion in cfe-commits, asserting may be a better way than introducing a special test flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181073 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
1c18759b45140c85e62ac6367fbee51f363e3c81 |
01-May-2013 |
Chad Rosier <mcrosier@apple.com> |
[driver] Allow multiple -arch options with -save-temps by adding the arch name to the temporary files. rdar://13218604 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180813 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
9dbfc6135580357428966ff05427f654dba44cd3 |
30-Apr-2013 |
Simon Atanasyan <simon@atanasyan.com> |
[Mips] Pass -mips16, -mmicromips, -mdsp and -mdspr2 flags to the assembler. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180775 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
0127b3f60b5bf7b8caed8426b8bd77c4a019a286 |
24-Apr-2013 |
Chad Rosier <mcrosier@apple.com> |
[driver] Add a hasFlag API that accepts a positive alias. Part of rdar://13622687 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@180203 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
8e8e95c57c310bbc52cdc8d32df23c95afc77916 |
20-Apr-2013 |
Simon Atanasyan <simon@atanasyan.com> |
Supports Sourcery CodeBench Mips toolchain directories tree. Sourcery CodeBench and modern FSF Mips toolchains require a bit more complicated algorithm to calculate headers, libraries and sysroot paths than implemented by Clang driver now. The main problem is that all these paths depend on a set of command line arguments additionally to a target triple value. For example, let $TC is a toolchain installation directory. If we compile big-endian 32-bit mips code, crtbegin.o is in the $TC/lib/gcc/mips-linux-gnu/4.7.2 folder and the toolchain's linker requires --sysroot=$TC/mips-linux-gnu/libc argument. If we compile little-endian 32-bit soft-float mips code, crtbegin.o is in the $TC/lib/gcc/mips-linux-gnu/4.7.2/soft-float/el folder and the toolchain's linker requires --sysroot=$TC/mips-linux-gnu/libc/soft-float/el argument. 1. Calculate MultiarchSuffix using all necessary command line options and use this MultiarchSuffix to detect crtbegin.o location in the GCCInstallationDetector::ScanLibDirForGCCTriple() routine. 2. If a user does not provide --sysroot argument to the driver explicitly, calculate new sysroot value based on command line options. Then use this calculated sysroot path: a. To populate a file search paths list in the Linux::Linux() constructor. b. To find Mips toolchain specific include headers directories in the Linux::AddClangSystemIncludeArgs() routine. c. To provide -–sysroot argument for a linker. Note: - The FSF's tree slightly differs (folder names) and is not supported yet. - New addExternCSystemIncludeIfExits() routine is a temporary solution. I plan to move path existence check to the addExternCSystemInclude() routine by a separate commit. The patch reviewed by Rafael Espindola. http://llvm-reviews.chandlerc.com/D644 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179934 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
9753d462fabba1db75a977cb1f75ea66e9081120 |
17-Apr-2013 |
Nico Weber <nicolasweber@gmx.de> |
Add support for gcc's spelling of -fcolor-diagnostics. See http://gcc.gnu.org/onlinedocs/gcc/Language-Independent-Options.html git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179728 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f4910132078b4b8852fc46657f3150ed472f4654 |
16-Apr-2013 |
Daniel Dunbar <daniel@zuster.org> |
[Modules] Convert module specific -fno-modules-autolink into -fno-autolink. - There is no reason to have a modules specific flag for disabling autolinking. Instead, convert the existing flag into -fno-autolink (which should cover other autolinking code generation paths like #pragmas if and when we support them). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179612 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
115ac5ac1281e6f301da4da6a5c669beae59ffcc |
15-Apr-2013 |
Timur Iskhodzhanov <timurrrr@google.com> |
Add a missing space git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179525 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
3c6a9b052373f656268557904d229a8ad8b7686f |
15-Apr-2013 |
Nadav Rotem <nrotem@apple.com> |
Add a new flag -vectorize-slp-aggressive to enable Hals BB vectorizer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179507 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
321ae79aae228aa069795e78449a95fa35e2abfd |
14-Apr-2013 |
Simon Atanasyan <simon@atanasyan.com> |
[Mips] Support -mmicromips / -mno-micromips command line options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179489 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
2ed42b86da17b8fc54480bf34e1965e20eee89f5 |
14-Apr-2013 |
Simon Atanasyan <simon@atanasyan.com> |
[Mips] Remove "single" from the list of valid MIPS float ABI names. Add two new options –msingle-float and –mdouble-float. These options can be used simultaneously with float ABI selection options (-mfloat-abi, -mhard-float, -msoft-float). They mark whether a floating-point coprocessor supports double-precision operations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179481 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f6f77bd900ccc847c6601a34457c8b5f3cb48219 |
11-Apr-2013 |
Bob Wilson <bob.wilson@apple.com> |
Add a new -mimplicit-float option for symmetry with -mno-implicit-float. This new option is the default, but it is useful to have a flag to override -mno-implicit-float by putting -mimplicit-float later on the command line. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179309 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
d4fc9de6f7d9a56bdc2ec51d9cbbfd7d3cb0cf0a |
10-Apr-2013 |
Chad Rosier <mcrosier@apple.com> |
[driver] Add a -Ofast option, which enables -O3, -ffast-math, and -fstrict-aliasing. rdar://13622687 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179216 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
6fd7d3067dd06584ef3940e88e31fea1a0e83588 |
10-Apr-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
Add an option to parse all comments as documentation comments Patch by Amin Shali. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179180 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
52ca70dc304c694923ac804630d88b1d95bfa941 |
09-Apr-2013 |
Peter Collingbourne <peter@pcc.me.uk> |
If the user requested a zero-base-shadow sanitizer, infer -pie and -fPIC when appropriate. Differential Revision: http://llvm-reviews.chandlerc.com/D502 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179082 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
b37a73d5c6a0c8bb1f6e363d3b53980e4fa0cead |
04-Apr-2013 |
Manman Ren <mren@apple.com> |
Initial support for struct-path aware TBAA. Added TBAABaseType and TBAAOffset in LValue. These two fields are initialized to the actual type and 0, and are updated in EmitLValueForField. Path-aware TBAA tags are enabled for EmitLoadOfScalar and EmitStoreOfScalar. Added command line option -struct-path-tbaa. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178797 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
7cc0a110bcf3fe9c4d1269ea2ae7e72aa7f37531 |
04-Apr-2013 |
Manman Ren <mren@apple.com> |
revert r178784 since it does not have a commit message git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178796 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
ab4ffe242935ae0dd66fbe0dcc792c1ad38b00c1 |
04-Apr-2013 |
Manman Ren <mren@apple.com> |
Index: include/clang/Driver/CC1Options.td =================================================================== --- include/clang/Driver/CC1Options.td (revision 178718) +++ include/clang/Driver/CC1Options.td (working copy) @@ -161,6 +161,8 @@ HelpText<"Use register sized accesses to bit-fields, when possible.">; def relaxed_aliasing : Flag<["-"], "relaxed-aliasing">, HelpText<"Turn off Type Based Alias Analysis">; +def struct_path_tbaa : Flag<["-"], "struct-path-tbaa">, + HelpText<"Turn on struct-path aware Type Based Alias Analysis">; def masm_verbose : Flag<["-"], "masm-verbose">, HelpText<"Generate verbose assembly output">; def mcode_model : Separate<["-"], "mcode-model">, Index: include/clang/Driver/Options.td =================================================================== --- include/clang/Driver/Options.td (revision 178718) +++ include/clang/Driver/Options.td (working copy) @@ -587,6 +587,7 @@ Flags<[CC1Option]>, HelpText<"Disable spell-checking">; def fno_stack_protector : Flag<["-"], "fno-stack-protector">, Group<f_Group>; def fno_strict_aliasing : Flag<["-"], "fno-strict-aliasing">, Group<f_Group>; +def fstruct_path_tbaa : Flag<["-"], "fstruct-path-tbaa">, Group<f_Group>; def fno_strict_enums : Flag<["-"], "fno-strict-enums">, Group<f_Group>; def fno_strict_overflow : Flag<["-"], "fno-strict-overflow">, Group<f_Group>; def fno_threadsafe_statics : Flag<["-"], "fno-threadsafe-statics">, Group<f_Group>, Index: include/clang/Frontend/CodeGenOptions.def =================================================================== --- include/clang/Frontend/CodeGenOptions.def (revision 178718) +++ include/clang/Frontend/CodeGenOptions.def (working copy) @@ -85,6 +85,7 @@ VALUE_CODEGENOPT(OptimizeSize, 2, 0) ///< If -Os (==1) or -Oz (==2) is specified. CODEGENOPT(RelaxAll , 1, 0) ///< Relax all machine code instructions. CODEGENOPT(RelaxedAliasing , 1, 0) ///< Set when -fno-strict-aliasing is enabled. +CODEGENOPT(StructPathTBAA , 1, 0) ///< Whether or not to use struct-path TBAA. CODEGENOPT(SaveTempLabels , 1, 0) ///< Save temporary labels. CODEGENOPT(SanitizeAddressZeroBaseShadow , 1, 0) ///< Map shadow memory at zero ///< offset in AddressSanitizer. Index: lib/CodeGen/CGExpr.cpp =================================================================== --- lib/CodeGen/CGExpr.cpp (revision 178718) +++ lib/CodeGen/CGExpr.cpp (working copy) @@ -1044,7 +1044,8 @@ llvm::Value *CodeGenFunction::EmitLoadOfScalar(LValue lvalue) { return EmitLoadOfScalar(lvalue.getAddress(), lvalue.isVolatile(), lvalue.getAlignment().getQuantity(), - lvalue.getType(), lvalue.getTBAAInfo()); + lvalue.getType(), lvalue.getTBAAInfo(), + lvalue.getTBAABaseType(), lvalue.getTBAAOffset()); } static bool hasBooleanRepresentation(QualType Ty) { @@ -1106,7 +1107,9 @@ llvm::Value *CodeGenFunction::EmitLoadOfScalar(llvm::Value *Addr, bool Volatile, unsigned Alignment, QualType Ty, - llvm::MDNode *TBAAInfo) { + llvm::MDNode *TBAAInfo, + QualType TBAABaseType, + uint64_t TBAAOffset) { // For better performance, handle vector loads differently. if (Ty->isVectorType()) { llvm::Value *V; @@ -1158,8 +1161,11 @@ Load->setVolatile(true); if (Alignment) Load->setAlignment(Alignment); - if (TBAAInfo) - CGM.DecorateInstruction(Load, TBAAInfo); + if (TBAAInfo) { + llvm::MDNode *TBAAPath = CGM.getTBAAStructTagInfo(TBAABaseType, TBAAInfo, + TBAAOffset); + CGM.DecorateInstruction(Load, TBAAPath); + } if ((SanOpts->Bool && hasBooleanRepresentation(Ty)) || (SanOpts->Enum && Ty->getAs<EnumType>())) { @@ -1217,7 +1223,8 @@ bool Volatile, unsigned Alignment, QualType Ty, llvm::MDNode *TBAAInfo, - bool isInit) { + bool isInit, QualType TBAABaseType, + uint64_t TBAAOffset) { // Handle vectors differently to get better performance. if (Ty->isVectorType()) { @@ -1268,15 +1275,19 @@ llvm::StoreInst *Store = Builder.CreateStore(Value, Addr, Volatile); if (Alignment) Store->setAlignment(Alignment); - if (TBAAInfo) - CGM.DecorateInstruction(Store, TBAAInfo); + if (TBAAInfo) { + llvm::MDNode *TBAAPath = CGM.getTBAAStructTagInfo(TBAABaseType, TBAAInfo, + TBAAOffset); + CGM.DecorateInstruction(Store, TBAAPath); + } } void CodeGenFunction::EmitStoreOfScalar(llvm::Value *value, LValue lvalue, bool isInit) { EmitStoreOfScalar(value, lvalue.getAddress(), lvalue.isVolatile(), lvalue.getAlignment().getQuantity(), lvalue.getType(), - lvalue.getTBAAInfo(), isInit); + lvalue.getTBAAInfo(), isInit, lvalue.getTBAABaseType(), + lvalue.getTBAAOffset()); } /// EmitLoadOfLValue - Given an expression that represents a value lvalue, this @@ -2494,9 +2505,12 @@ llvm::Value *addr = base.getAddress(); unsigned cvr = base.getVRQualifiers(); + bool TBAAPath = CGM.getCodeGenOpts().StructPathTBAA; if (rec->isUnion()) { // For unions, there is no pointer adjustment. assert(!type->isReferenceType() && "union has reference member"); + // TODO: handle path-aware TBAA for union. + TBAAPath = false; } else { // For structs, we GEP to the field that the record layout suggests. unsigned idx = CGM.getTypes().getCGRecordLayout(rec).getLLVMFieldNo(field); @@ -2508,6 +2522,8 @@ if (cvr & Qualifiers::Volatile) load->setVolatile(true); load->setAlignment(alignment.getQuantity()); + // Loading the reference will disable path-aware TBAA. + TBAAPath = false; if (CGM.shouldUseTBAA()) { llvm::MDNode *tbaa; if (mayAlias) @@ -2541,6 +2557,16 @@ LValue LV = MakeAddrLValue(addr, type, alignment); LV.getQuals().addCVRQualifiers(cvr); + if (TBAAPath) { + const ASTRecordLayout &Layout = + getContext().getASTRecordLayout(field->getParent()); + // Set the base type to be the base type of the base LValue and + // update offset to be relative to the base type. + LV.setTBAABaseType(base.getTBAABaseType()); + LV.setTBAAOffset(base.getTBAAOffset() + + Layout.getFieldOffset(field->getFieldIndex()) / + getContext().getCharWidth()); + } // __weak attribute on a field is ignored. if (LV.getQuals().getObjCGCAttr() == Qualifiers::Weak) Index: lib/CodeGen/CGValue.h =================================================================== --- lib/CodeGen/CGValue.h (revision 178718) +++ lib/CodeGen/CGValue.h (working copy) @@ -157,6 +157,11 @@ Expr *BaseIvarExp; + /// Used by struct-path-aware TBAA. + QualType TBAABaseType; + /// Offset relative to the base type. + uint64_t TBAAOffset; + /// TBAAInfo - TBAA information to attach to dereferences of this LValue. llvm::MDNode *TBAAInfo; @@ -175,6 +180,10 @@ this->ImpreciseLifetime = false; this->ThreadLocalRef = false; this->BaseIvarExp = 0; + + // Initialize fields for TBAA. + this->TBAABaseType = Type; + this->TBAAOffset = 0; this->TBAAInfo = TBAAInfo; } @@ -232,6 +241,12 @@ Expr *getBaseIvarExp() const { return BaseIvarExp; } void setBaseIvarExp(Expr *V) { BaseIvarExp = V; } + QualType getTBAABaseType() const { return TBAABaseType; } + void setTBAABaseType(QualType T) { TBAABaseType = T; } + + uint64_t getTBAAOffset() const { return TBAAOffset; } + void setTBAAOffset(uint64_t O) { TBAAOffset = O; } + llvm::MDNode *getTBAAInfo() const { return TBAAInfo; } void setTBAAInfo(llvm::MDNode *N) { TBAAInfo = N; } Index: lib/CodeGen/CodeGenFunction.h =================================================================== --- lib/CodeGen/CodeGenFunction.h (revision 178718) +++ lib/CodeGen/CodeGenFunction.h (working copy) @@ -2211,7 +2211,9 @@ /// the LLVM value representation. llvm::Value *EmitLoadOfScalar(llvm::Value *Addr, bool Volatile, unsigned Alignment, QualType Ty, - llvm::MDNode *TBAAInfo = 0); + llvm::MDNode *TBAAInfo = 0, + QualType TBAABaseTy = QualType(), + uint64_t TBAAOffset = 0); /// EmitLoadOfScalar - Load a scalar value from an address, taking /// care to appropriately convert from the memory representation to @@ -2224,7 +2226,9 @@ /// the LLVM value representation. void EmitStoreOfScalar(llvm::Value *Value, llvm::Value *Addr, bool Volatile, unsigned Alignment, QualType Ty, - llvm::MDNode *TBAAInfo = 0, bool isInit=false); + llvm::MDNode *TBAAInfo = 0, bool isInit = false, + QualType TBAABaseTy = QualType(), + uint64_t TBAAOffset = 0); /// EmitStoreOfScalar - Store a scalar value to an address, taking /// care to appropriately convert from the memory representation to Index: lib/CodeGen/CodeGenModule.cpp =================================================================== --- lib/CodeGen/CodeGenModule.cpp (revision 178718) +++ lib/CodeGen/CodeGenModule.cpp (working copy) @@ -227,6 +227,20 @@ return TBAA->getTBAAStructInfo(QTy); } +llvm::MDNode *CodeGenModule::getTBAAStructTypeInfo(QualType QTy) { + if (!TBAA) + return 0; + return TBAA->getTBAAStructTypeInfo(QTy); +} + +llvm::MDNode *CodeGenModule::getTBAAStructTagInfo(QualType BaseTy, + llvm::MDNode *AccessN, + uint64_t O) { + if (!TBAA) + return 0; + return TBAA->getTBAAStructTagInfo(BaseTy, AccessN, O); +} + void CodeGenModule::DecorateInstruction(llvm::Instruction *Inst, llvm::MDNode *TBAAInfo) { Inst->setMetadata(llvm::LLVMContext::MD_tbaa, TBAAInfo); Index: lib/CodeGen/CodeGenModule.h =================================================================== --- lib/CodeGen/CodeGenModule.h (revision 178718) +++ lib/CodeGen/CodeGenModule.h (working copy) @@ -501,6 +501,11 @@ llvm::MDNode *getTBAAInfo(QualType QTy); llvm::MDNode *getTBAAInfoForVTablePtr(); llvm::MDNode *getTBAAStructInfo(QualType QTy); + /// Return the MDNode in the type DAG for the given struct type. + llvm::MDNode *getTBAAStructTypeInfo(QualType QTy); + /// Return the path-aware tag for given base type, access node and offset. + llvm::MDNode *getTBAAStructTagInfo(QualType BaseTy, llvm::MDNode *AccessN, + uint64_t O); bool isTypeConstant(QualType QTy, bool ExcludeCtorDtor); Index: lib/CodeGen/CodeGenTBAA.cpp =================================================================== --- lib/CodeGen/CodeGenTBAA.cpp (revision 178718) +++ lib/CodeGen/CodeGenTBAA.cpp (working copy) @@ -21,6 +21,7 @@ #include "clang/AST/Mangle.h" #include "clang/AST/RecordLayout.h" #include "clang/Frontend/CodeGenOptions.h" +#include "llvm/ADT/SmallSet.h" #include "llvm/IR/Constants.h" #include "llvm/IR/LLVMContext.h" #include "llvm/IR/Metadata.h" @@ -225,3 +226,87 @@ // For now, handle any other kind of type conservatively. return StructMetadataCache[Ty] = NULL; } + +/// Check if the given type can be handled by path-aware TBAA. +static bool isTBAAPathStruct(QualType QTy) { + if (const RecordType *TTy = QTy->getAs<RecordType>()) { + const RecordDecl *RD = TTy->getDecl()->getDefinition(); + // RD can be struct, union, class, interface or enum. + // For now, we only handle struct. + if (RD->isStruct() && !RD->hasFlexibleArrayMember()) + return true; + } + return false; +} + +llvm::MDNode * +CodeGenTBAA::getTBAAStructTypeInfo(QualType QTy) { + const Type *Ty = Context.getCanonicalType(QTy).getTypePtr(); + assert(isTBAAPathStruct(QTy)); + + if (llvm::MDNode *N = StructTypeMetadataCache[Ty]) + return N; + + if (const RecordType *TTy = QTy->getAs<RecordType>()) { + const RecordDecl *RD = TTy->getDecl()->getDefinition(); + + const ASTRecordLayout &Layout = Context.getASTRecordLayout(RD); + SmallVector <std::pair<uint64_t, llvm::MDNode*>, 4> Fields; + // To reduce the size of MDNode for a given struct type, we only output + // once for all the fields with the same scalar types. + // Offsets for scalar fields in the type DAG are not used. + llvm::SmallSet <llvm::MDNode*, 4> ScalarFieldTypes; + unsigned idx = 0; + for (RecordDecl::field_iterator i = RD->field_begin(), + e = RD->field_end(); i != e; ++i, ++idx) { + QualType FieldQTy = i->getType(); + llvm::MDNode *FieldNode; + if (isTBAAPathStruct(FieldQTy)) + FieldNode = getTBAAStructTypeInfo(FieldQTy); + else { + FieldNode = getTBAAInfo(FieldQTy); + // Ignore this field if the type already exists. + if (ScalarFieldTypes.count(FieldNode)) + continue; + ScalarFieldTypes.insert(FieldNode); + } + if (!FieldNode) + return StructTypeMetadataCache[Ty] = NULL; + Fields.push_back(std::make_pair( + Layout.getFieldOffset(idx) / Context.getCharWidth(), FieldNode)); + } + + // TODO: This is using the RTTI name. Is there a better way to get + // a unique string for a type? + SmallString<256> OutName; + llvm::raw_svector_ostream Out(OutName); + MContext.mangleCXXRTTIName(QualType(Ty, 0), Out); + Out.flush(); + // Create the struct type node with a vector of pairs (offset, type). + return StructTypeMetadataCache[Ty] = + MDHelper.createTBAAStructTypeNode(OutName, Fields); + } + + return StructMetadataCache[Ty] = NULL; +} + +llvm::MDNode * +CodeGenTBAA::getTBAAStructTagInfo(QualType BaseQTy, llvm::MDNode *AccessNode, + uint64_t Offset) { + if (!CodeGenOpts.StructPathTBAA) + return AccessNode; + + const Type *BTy = Context.getCanonicalType(BaseQTy).getTypePtr(); + TBAAPathTag PathTag = TBAAPathTag(BTy, AccessNode, Offset); + if (llvm::MDNode *N = StructTagMetadataCache[PathTag]) + return N; + + llvm::MDNode *BNode = 0; + if (isTBAAPathStruct(BaseQTy)) + BNode = getTBAAStructTypeInfo(BaseQTy); + if (!BNode) + return StructTagMetadataCache[PathTag] = AccessNode; + + return StructTagMetadataCache[PathTag] = + MDHelper.createTBAAStructTagNode(BNode, AccessNode, Offset); +} Index: lib/CodeGen/CodeGenTBAA.h =================================================================== --- lib/CodeGen/CodeGenTBAA.h (revision 178718) +++ lib/CodeGen/CodeGenTBAA.h (working copy) @@ -35,6 +35,14 @@ namespace CodeGen { class CGRecordLayout; + struct TBAAPathTag { + TBAAPathTag(const Type *B, const llvm::MDNode *A, uint64_t O) + : BaseT(B), AccessN(A), Offset(O) {} + const Type *BaseT; + const llvm::MDNode *AccessN; + uint64_t Offset; + }; + /// CodeGenTBAA - This class organizes the cross-module state that is used /// while lowering AST types to LLVM types. class CodeGenTBAA { @@ -46,8 +54,13 @@ // MDHelper - Helper for creating metadata. llvm::MDBuilder MDHelper; - /// MetadataCache - This maps clang::Types to llvm::MDNodes describing them. + /// MetadataCache - This maps clang::Types to scalar llvm::MDNodes describing + /// them. llvm::DenseMap<const Type *, llvm::MDNode *> MetadataCache; + /// This maps clang::Types to a struct node in the type DAG. + llvm::DenseMap<const Type *, llvm::MDNode *> StructTypeMetadataCache; + /// This maps TBAAPathTags to a tag node. + llvm::DenseMap<TBAAPathTag, llvm::MDNode *> StructTagMetadataCache; /// StructMetadataCache - This maps clang::Types to llvm::MDNodes describing /// them for struct assignments. @@ -89,9 +102,49 @@ /// getTBAAStructInfo - Get the TBAAStruct MDNode to be used for a memcpy of /// the given type. llvm::MDNode *getTBAAStructInfo(QualType QTy); + + /// Get the MDNode in the type DAG for given struct type QType. + llvm::MDNode *getTBAAStructTypeInfo(QualType QType); + /// Get the tag MDNode for a given base type, the actual sclar access MDNode + /// and offset into the base type. + llvm::MDNode *getTBAAStructTagInfo(QualType BaseQType, + llvm::MDNode *AccessNode, uint64_t Offset); }; } // end namespace CodeGen } // end namespace clang +namespace llvm { + +template<> struct DenseMapInfo<clang::CodeGen::TBAAPathTag> { + static clang::CodeGen::TBAAPathTag getEmptyKey() { + return clang::CodeGen::TBAAPathTag( + DenseMapInfo<const clang::Type *>::getEmptyKey(), + DenseMapInfo<const MDNode *>::getEmptyKey(), + DenseMapInfo<uint64_t>::getEmptyKey()); + } + + static clang::CodeGen::TBAAPathTag getTombstoneKey() { + return clang::CodeGen::TBAAPathTag( + DenseMapInfo<const clang::Type *>::getTombstoneKey(), + DenseMapInfo<const MDNode *>::getTombstoneKey(), + DenseMapInfo<uint64_t>::getTombstoneKey()); + } + + static unsigned getHashValue(const clang::CodeGen::TBAAPathTag &Val) { + return DenseMapInfo<const clang::Type *>::getHashValue(Val.BaseT) ^ + DenseMapInfo<const MDNode *>::getHashValue(Val.AccessN) ^ + DenseMapInfo<uint64_t>::getHashValue(Val.Offset); + } + + static bool isEqual(const clang::CodeGen::TBAAPathTag &LHS, + const clang::CodeGen::TBAAPathTag &RHS) { + return LHS.BaseT == RHS.BaseT && + LHS.AccessN == RHS.AccessN && + LHS.Offset == RHS.Offset; + } +}; + +} // end namespace llvm + #endif Index: lib/Driver/Tools.cpp =================================================================== --- lib/Driver/Tools.cpp (revision 178718) +++ lib/Driver/Tools.cpp (working copy) @@ -2105,6 +2105,8 @@ options::OPT_fno_strict_aliasing, getToolChain().IsStrictAliasingDefault())) CmdArgs.push_back("-relaxed-aliasing"); + if (Args.hasArg(options::OPT_fstruct_path_tbaa)) + CmdArgs.push_back("-struct-path-tbaa"); if (Args.hasFlag(options::OPT_fstrict_enums, options::OPT_fno_strict_enums, false)) CmdArgs.push_back("-fstrict-enums"); Index: lib/Frontend/CompilerInvocation.cpp =================================================================== --- lib/Frontend/CompilerInvocation.cpp (revision 178718) +++ lib/Frontend/CompilerInvocation.cpp (working copy) @@ -324,6 +324,7 @@ Opts.UseRegisterSizedBitfieldAccess = Args.hasArg( OPT_fuse_register_sized_bitfield_access); Opts.RelaxedAliasing = Args.hasArg(OPT_relaxed_aliasing); + Opts.StructPathTBAA = Args.hasArg(OPT_struct_path_tbaa); Opts.DwarfDebugFlags = Args.getLastArgValue(OPT_dwarf_debug_flags); Opts.MergeAllConstants = !Args.hasArg(OPT_fno_merge_all_constants); Opts.NoCommon = Args.hasArg(OPT_fno_common); Index: test/CodeGen/tbaa.cpp =================================================================== --- test/CodeGen/tbaa.cpp (revision 0) +++ test/CodeGen/tbaa.cpp (working copy) @@ -0,0 +1,217 @@ +// RUN: %clang_cc1 -O1 -disable-llvm-optzns %s -emit-llvm -o - | FileCheck %s +// RUN: %clang_cc1 -O1 -struct-path-tbaa -disable-llvm-optzns %s -emit-llvm -o - | FileCheck %s -check-prefix=PATH +// Test TBAA metadata generated by front-end. + +#include <stdint.h> +typedef struct +{ + uint16_t f16; + uint32_t f32; + uint16_t f16_2; + uint32_t f32_2; +} StructA; +typedef struct +{ + uint16_t f16; + StructA a; + uint32_t f32; +} StructB; +typedef struct +{ + uint16_t f16; + StructB b; + uint32_t f32; +} StructC; +typedef struct +{ + uint16_t f16; + StructB b; + uint32_t f32; + uint8_t f8; +} StructD; + +typedef struct +{ + uint16_t f16; + uint32_t f32; +} StructS; +typedef struct +{ + uint16_t f16; + uint32_t f32; +} StructS2; + +uint32_t g(uint32_t *s, StructA *A, uint64_t count) { +// CHECK: define i32 @{{.*}}( +// CHECK: store i32 1, i32* %{{.*}}, align 4, !tbaa !4 +// CHECK: store i32 4, i32* %{{.*}}, align 4, !tbaa !4 +// PATH: define i32 @{{.*}}( +// PATH: store i32 1, i32* %{{.*}}, align 4, !tbaa !4 +// PATH: store i32 4, i32* %{{.*}}, align 4, !tbaa !5 + *s = 1; + A->f32 = 4; + return *s; +} + +uint32_t g2(uint32_t *s, StructA *A, uint64_t count) { +// CHECK: define i32 @{{.*}}( +// CHECK: store i32 1, i32* %{{.*}}, align 4, !tbaa !4 +// CHECK: store i16 4, i16* %{{.*}}, align 2, !tbaa !5 +// PATH: define i32 @{{.*}}( +// PATH: store i32 1, i32* %{{.*}}, align 4, !tbaa !4 +// PATH: store i16 4, i16* %{{.*}}, align 2, !tbaa !8 + *s = 1; + A->f16 = 4; + return *s; +} + +uint32_t g3(StructA *A, StructB *B, uint64_t count) { +// CHECK: define i32 @{{.*}}( +// CHECK: store i32 1, i32* %{{.*}}, align 4, !tbaa !4 +// CHECK: store i32 4, i32* %{{.*}}, align 4, !tbaa !4 +// PATH: define i32 @{{.*}}( +// PATH: store i32 1, i32* %{{.*}}, align 4, !tbaa !5 +// PATH: store i32 4, i32* %{{.*}}, align 4, !tbaa !9 + A->f32 = 1; + B->a.f32 = 4; + return A->f32; +} + +uint32_t g4(StructA *A, StructB *B, uint64_t count) { +// CHECK: define i32 @{{.*}}( +// CHECK: store i32 1, i32* %{{.*}}, align 4, !tbaa !4 +// CHECK: store i16 4, i16* %{{.*}}, align 2, !tbaa !5 +// PATH: define i32 @{{.*}}( +// PATH: store i32 1, i32* %{{.*}}, align 4, !tbaa !5 +// PATH: store i16 4, i16* %{{.*}}, align 2, !tbaa !11 + A->f32 = 1; + B->a.f16 = 4; + return A->f32; +} + +uint32_t g5(StructA *A, StructB *B, uint64_t count) { +// CHECK: define i32 @{{.*}}( +// CHECK: store i32 1, i32* %{{.*}}, align 4, !tbaa !4 +// CHECK: store i32 4, i32* %{{.*}}, align 4, !tbaa !4 +// PATH: define i32 @{{.*}}( +// PATH: store i32 1, i32* %{{.*}}, align 4, !tbaa !5 +// PATH: store i32 4, i32* %{{.*}}, align 4, !tbaa !12 + A->f32 = 1; + B->f32 = 4; + return A->f32; +} + +uint32_t g6(StructA *A, StructB *B, uint64_t count) { +// CHECK: define i32 @{{.*}}( +// CHECK: store i32 1, i32* %{{.*}}, align 4, !tbaa !4 +// CHECK: store i32 4, i32* %{{.*}}, align 4, !tbaa !4 +// PATH: define i32 @{{.*}}( +// PATH: store i32 1, i32* %{{.*}}, align 4, !tbaa !5 +// PATH: store i32 4, i32* %{{.*}}, align 4, !tbaa !13 + A->f32 = 1; + B->a.f32_2 = 4; + return A->f32; +} + +uint32_t g7(StructA *A, StructS *S, uint64_t count) { +// CHECK: define i32 @{{.*}}( +// CHECK: store i32 1, i32* %{{.*}}, align 4, !tbaa !4 +// CHECK: store i32 4, i32* %{{.*}}, align 4, !tbaa !4 +// PATH: define i32 @{{.*}}( +// PATH: store i32 1, i32* %{{.*}}, align 4, !tbaa !5 +// PATH: store i32 4, i32* %{{.*}}, align 4, !tbaa !14 + A->f32 = 1; + S->f32 = 4; + return A->f32; +} + +uint32_t g8(StructA *A, StructS *S, uint64_t count) { +// CHECK: define i32 @{{.*}}( +// CHECK: store i32 1, i32* %{{.*}}, align 4, !tbaa !4 +// CHECK: store i16 4, i16* %{{.*}}, align 2, !tbaa !5 +// PATH: define i32 @{{.*}}( +// PATH: store i32 1, i32* %{{.*}}, align 4, !tbaa !5 +// PATH: store i16 4, i16* %{{.*}}, align 2, !tbaa !16 + A->f32 = 1; + S->f16 = 4; + return A->f32; +} + +uint32_t g9(StructS *S, StructS2 *S2, uint64_t count) { +// CHECK: define i32 @{{.*}}( +// CHECK: store i32 1, i32* %{{.*}}, align 4, !tbaa !4 +// CHECK: store i32 4, i32* %{{.*}}, align 4, !tbaa !4 +// PATH: define i32 @{{.*}}( +// PATH: store i32 1, i32* %{{.*}}, align 4, !tbaa !14 +// PATH: store i32 4, i32* %{{.*}}, align 4, !tbaa !17 + S->f32 = 1; + S2->f32 = 4; + return S->f32; +} + +uint32_t g10(StructS *S, StructS2 *S2, uint64_t count) { +// CHECK: define i32 @{{.*}}( +// CHECK: store i32 1, i32* %{{.*}}, align 4, !tbaa !4 +// CHECK: store i16 4, i16* %{{.*}}, align 2, !tbaa !5 +// PATH: define i32 @{{.*}}( +// PATH: store i32 1, i32* %{{.*}}, align 4, !tbaa !14 +// PATH: store i16 4, i16* %{{.*}}, align 2, !tbaa !19 + S->f32 = 1; + S2->f16 = 4; + return S->f32; +} + +uint32_t g11(StructC *C, StructD *D, uint64_t count) { +// CHECK: define i32 @{{.*}}( +// CHECK: store i32 1, i32* %{{.*}}, align 4, !tbaa !4 +// CHECK: store i32 4, i32* %{{.*}}, align 4, !tbaa !4 +// PATH: define i32 @{{.*}}( +// PATH: store i32 1, i32* %{{.*}}, align 4, !tbaa !20 +// PATH: store i32 4, i32* %{{.*}}, align 4, !tbaa !22 + C->b.a.f32 = 1; + D->b.a.f32 = 4; + return C->b.a.f32; +} + +uint32_t g12(StructC *C, StructD *D, uint64_t count) { +// CHECK: define i32 @{{.*}}( +// CHECK: store i32 1, i32* %{{.*}}, align 4, !tbaa !4 +// CHECK: store i32 4, i32* %{{.*}}, align 4, !tbaa !4 +// TODO: differentiate the two accesses. +// PATH: define i32 @{{.*}}( +// PATH: store i32 1, i32* %{{.*}}, align 4, !tbaa !9 +// PATH: store i32 4, i32* %{{.*}}, align 4, !tbaa !9 + StructB *b1 = &(C->b); + StructB *b2 = &(D->b); + // b1, b2 have different context. + b1->a.f32 = 1; + b2->a.f32 = 4; + return b1->a.f32; +} + +// CHECK: !1 = metadata !{metadata !"omnipotent char", metadata !2} +// CHECK: !2 = metadata !{metadata !"Simple C/C++ TBAA"} +// CHECK: !4 = metadata !{metadata !"int", metadata !1} +// CHECK: !5 = metadata !{metadata !"short", metadata !1} + +// PATH: !1 = metadata !{metadata !"omnipotent char", metadata !2} +// PATH: !4 = metadata !{metadata !"int", metadata !1} +// PATH: !5 = metadata !{metadata !6, metadata !4, i64 4} +// PATH: !6 = metadata !{metadata !"_ZTS7StructA", i64 0, metadata !7, i64 4, metadata !4} +// PATH: !7 = metadata !{metadata !"short", metadata !1} +// PATH: !8 = metadata !{metadata !6, metadata !7, i64 0} +// PATH: !9 = metadata !{metadata !10, metadata !4, i64 8} +// PATH: !10 = metadata !{metadata !"_ZTS7StructB", i64 0, metadata !7, i64 4, metadata !6, i64 20, metadata !4} +// PATH: !11 = metadata !{metadata !10, metadata !7, i64 4} +// PATH: !12 = metadata !{metadata !10, metadata !4, i64 20} +// PATH: !13 = metadata !{metadata !10, metadata !4, i64 16} +// PATH: !14 = metadata !{metadata !15, metadata !4, i64 4} +// PATH: !15 = metadata !{metadata !"_ZTS7StructS", i64 0, metadata !7, i64 4, metadata !4} +// PATH: !16 = metadata !{metadata !15, metadata !7, i64 0} +// PATH: !17 = metadata !{metadata !18, metadata !4, i64 4} +// PATH: !18 = metadata !{metadata !"_ZTS8StructS2", i64 0, metadata !7, i64 4, metadata !4} +// PATH: !19 = metadata !{metadata !18, metadata !7, i64 0} +// PATH: !20 = metadata !{metadata !21, metadata !4, i64 12} +// PATH: !21 = metadata !{metadata !"_ZTS7StructC", i64 0, metadata !7, i64 4, metadata !10, i64 28, metadata !4} +// PATH: !22 = metadata !{metadata !23, metadata !4, i64 12} +// PATH: !23 = metadata !{metadata !"_ZTS7StructD", i64 0, metadata !7, i64 4, metadata !10, i64 28, metadata !4, i64 32, metadata !1} git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178784 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
3105627bd76d6a0cc5ee305c99f4c96519bac9ac |
04-Apr-2013 |
Eric Christopher <echristo@gmail.com> |
Plumb through the -fsplit-stack option using the existing backend support. Caveat: Other than the existing segmented stacks support, no claims are made of this working. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178744 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
fe6b2713656c2d1bf559be357f0e0bf2d09bebd6 |
30-Mar-2013 |
Hal Finkel <hfinkel@anl.gov> |
Add support for gcc-compatible -mfprnd -mno-fprnd PPC options gcc provides -mfprnd and -mno-fprnd for controlling the fprnd target feature; support these options as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178414 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
1bfc28c48c1b86a05d2e07b403107ef3da5a0f8e |
29-Mar-2013 |
Michael Liao <michael.liao@intel.com> |
Add RDSEED intrinsic support defined in AVX2 extension git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178331 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
829d187e2100d2cfd85acefc2e867d12336e393f |
28-Mar-2013 |
Hal Finkel <hfinkel@anl.gov> |
Add support for gcc-compatible -mpopcntd -mno-popcntd PPC options gcc provides -mpopcntd and -mno-popcntd for controlling the popcntd target feature; support these options as well. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178235 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
286f3e638fd842619f853127907398859367a464 |
28-Mar-2013 |
Simon Atanasyan <simon@atanasyan.com> |
[Mips] Handle pseudo-target flags '-EL' and '-EB' and properly adjust toolchain flags for MIPS targets. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178232 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f4320ab08da5e4c927ef326c68d5081f5f2a2268 |
28-Mar-2013 |
Hal Finkel <hfinkel@anl.gov> |
Add support for gcc-compatible -mmfcrf -mno-mfcrf PPC options gcc provides -mmfcrf and -mno-mfcrf for controlling what we call the mfocrf target feature. Also, PPC is now making use of the static function AddTargetFeature used by the Mips Driver code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178227 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
c544ba09695e300f31355af342258bd57619e737 |
27-Mar-2013 |
Douglas Gregor <dgregor@apple.com> |
<rdar://problem/13509689> Introduce -module-file-info option that provides information about a particular module file. This option can be useful for end users who want to know why they ended up with a ton of different variants of the "std" module in their module cache. This problem should go away over time, as we reduce the need for module variants, but it will never go away entirely. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178148 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
ypes.def
|
72339a0d160720c6301d629761e701e5fad56f5e |
26-Mar-2013 |
Michael Liao <michael.liao@intel.com> |
Add PRFCHW intrinsic support - Add head 'prfchwintrin.h' to define '_m_prefetchw' which is mapped to LLVM/clang prefetch builtin - Add option '-mprfchw' to enable PRFCHW feature and pre-define '__PRFCHW__' macro git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178041 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
d44d2872b2ebe58237de4dbc350b82cab944ccc5 |
25-Mar-2013 |
Douglas Gregor <dgregor@apple.com> |
<rdar://problem/13434605> Periodically prune the module cache so that it does not grow forever. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177918 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
29511875348c49c9c5a14bb086cd51e17feb01c9 |
24-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Reject -no-integrated-as on windows. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177840 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
76e6e1377ff837047fb8e03a199c7f286c53897b |
23-Mar-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
If a .syms file is available alongside a sanitizer runtime, pass it to the linker via --dynamic-list instead of using --export-dynamic. This reduces the size of the dynamic symbol table, and thus of the binary (in some cases by up to ~30%). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177783 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
f48b93cb2054e83e43ca4391b8ec70be89fa2e30 |
20-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove the Tools DensMap from the toolchain. Each toolchain has a set of tools, but they are all of known types. It can have a linker, an assembler, a "clang" (compile, analyze, ...) a non-clang compiler, etc. Instead of keeping a map, just have member variable for each type of tool. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177479 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
83c546afef39d6b7be69f3f399804ebf037c4022 |
20-Mar-2013 |
Nick Lewycky <nicholas@mxc.ca> |
The flag "-coverage-function-names-in-data" is actually backwards -- we do emit function names in .gcda files by default, and the flag turns that off! Rename the flag to make it match what it actually does. This keeps the default format compatible with gcc 4.2. Also add a test for this flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177475 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
f2b5e0707229e1149828ebc8d01d9308a997d6df |
20-Mar-2013 |
Nick Lewycky <nicholas@mxc.ca> |
Make clang emit linkage names in debug info for subprograms when coverage info is enabled. Also add a new -test-coverage cc1 flag which makes testing coverage possible and add our first clang-side coverage test. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177470 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
c0a55d12caff98504eace18b553bb111160a8131 |
19-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Finish refactoring the tool selection logic. The general pattern now is that Foobar::constructTool only creates tools defined in the tools::foobar namespace and then delegates to the parent. The remaining duplicated code is now in the tools themselves. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177368 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
5b222059399ec9cccba7a393dc470adfb8a3db0f |
18-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Centralize the recording of which tools have been constructed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177319 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
26adbe42d1fecd135dea6739ec2801f02473218f |
18-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove unused argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177303 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
af370e6e051e505016637e23418354db625dc796 |
18-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Pass an ArgList to every toolchain constructor. Remove the useIntegratedAs argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177301 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
7ce8d82c4182b8b98d4b5c44f5258b9e9b2c1350 |
18-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Inline ShouldUseIntegratedAssembler and move the documentation to useIntegratedAs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177300 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
5470cd27e47aea163daaa76dde36010753400663 |
18-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Refactor a bit of duplicated code to useIntegratedAs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177299 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
e5dce308870cd7d6b5156640af3724433bc1c575 |
18-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove unused argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177293 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
d5320184367b681087e9ff74fc57ed2c5954c8ec |
18-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove unused argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177287 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
6aa240c03dd68ab413106d6af7a18af1c9b4e872 |
16-Mar-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Remove -Wspellcheck and replace it with a diagnostic option. Thanks to Richard S. for pointing out that the warning would show up with -Weverything. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177218 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
480760f8c7db7a1b77a73f4833bb99f657802775 |
08-Mar-2013 |
Chad Rosier <mcrosier@apple.com> |
[driver] If we're just linking, don't report --param X as unused option. PR15327 rdar://13372628 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176670 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
b9aa6739700d10e99da64cfa9b58ba7ca1c248e2 |
07-Mar-2013 |
Matthew Curtis <mcurtis@codeaurora.org> |
Minor refactor of how we get compilation phases. There is now a single function to get the list of phases for a given output Type. No functionality change intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176628 91177308-0d34-0410-b5e6-96231b3b80d8
hases.h
ypes.h
|
0f815f1f91e5cf0726fd8296445038fec3bed80b |
07-Mar-2013 |
Nick Lewycky <nicholas@mxc.ca> |
Add flags for additional control over coverage generation. Pick the version string to be emitted, and two properties about the files themselves. Use $PWD to absolut-ify the path to the coverage file. Yes, this is what GCC does. Reverts my own r175706. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176617 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
5b9f5cc7c4310aec110f315df6fc6d6366b24b08 |
03-Mar-2013 |
David Chisnall <csdavec@swan.ac.uk> |
Default to enabling default-synthesized ivars on all platforms git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176419 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
80190399f5a062db72127869978699af65951b73 |
22-Feb-2013 |
Eric Christopher <echristo@gmail.com> |
Split out the command handling for split debug info, we're going to want to propagate some information through the module into the back end and so need to pass it through to codegen. Also make the methods file static so we can use them in other places. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175916 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
6ebf09130479bc7605aa09a3e6c4dc2ba3513495 |
22-Feb-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
Comment parsing: add CommentOptions to allow specifying custom comment block commands Add an ability to specify custom documentation block comment commands via a new class CommentOptions. The intention is that this class will hold future customizations for comment parsing, including defining documentation comments with specific numbers of parameters, etc. CommentOptions instance is a member of LangOptions. CommentOptions is controlled by a new command-line parameter -fcomment-block-commands=Foo,Bar,Baz. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175892 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
9e738cc9d4b4655c44dadeb22f3a314daf43b995 |
22-Feb-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Add -fbracket-depth=N, analogous to -ftemplate-depth= and -fconstexpr-depth=, to control the check for the C 5.2.4.1 / C++ [implimits] restriction on nesting levels for parentheses, brackets and braces. Some code with heavy macro use exceeds the default limit of 256, but we don't want to increase it generally to avoid stack overflow on stack-constrained systems. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175855 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
168c96d42857ee98326b077189115cc82be1e2c3 |
22-Feb-2013 |
Eric Christopher <echristo@gmail.com> |
Grammar. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175833 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
|
59320e770f90a59c74f2be10f198e3c390195628 |
21-Feb-2013 |
Eric Christopher <echristo@gmail.com> |
Remove the SplitDebug action and replace with a set of commands in the compilation setup. Note that this doesn't currently work for -no-integrated-as. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175813 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
|
649aa6adc4d8650033508d38d3b442d355d90824 |
21-Feb-2013 |
Chad Rosier <mcrosier@apple.com> |
[driver] Add a dump method for ArgList. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175777 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
a880b19aa6ef1dc95936f5de052be7a7d6ee6814 |
19-Feb-2013 |
John McCall <rjmccall@apple.com> |
Add support for -fvisibility-ms-compat. We treat this as an alternative to -fvisibility=<?> which changes the default value visibility to "hidden" and the default type visibility to "default". Expose a -cc1 option for changing the default type visibility, repurposing -fvisibility as the default value visibility option (also setting type visibility from it in the absence of a specific option). rdar://13079314 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175480 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
9ef9b8540a608a93efaaae1d26d94e8087c30b55 |
19-Feb-2013 |
David Blaikie <dblaikie@gmail.com> |
Use LLVM_DELETED_FUNCTION rather than '// do not implement' comments. Also removes some redundant DNI comments on function declarations already using the macro. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175465 91177308-0d34-0410-b5e6-96231b3b80d8
ptSpecifier.h
|
953a61f26bf79932b9699b09add4c388764de170 |
07-Feb-2013 |
Douglas Gregor <dgregor@apple.com> |
Rename -fmodule-cache-path <blah> to -fmodules-cache-path=<blah> for consistency. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174645 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
2a06085281d1b6aee628f85e8676eec04542cbc9 |
07-Feb-2013 |
Douglas Gregor <dgregor@apple.com> |
Introduce -fmodules-ignore-macro=NNN to ignore a macro when building/loading modules. The use of this flag enables a modules optimization where a given set of macros can be labeled as "ignored" by the modules system. Definitions of those macros will be completely ignored when building the module hash and will be stripped when actually building modules. The overall effect is that this flag can be used to drastically reduce the number of Eventually, we'll want modules to tell us what set of macros they respond to (the "configuration macros"), and anything not in that set will be excluded. However, that requires a lot of per-module information that must be accurate, whereas this option can be used more readily. Fixes the rest of <rdar://problem/13165109>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174560 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
1975c17e25b2d781bba95d47e8dabe6005815d5a |
06-Feb-2013 |
Jordan Rose <jordan_rose@apple.com> |
Accept and ignore the -fextended-identifiers option. This was GCC's option to turn on UCN support, which we always have on now in C99 and C++ modes. Additionally, mark the -fno-extended-identifiers option as unsupported, since we don't support disabling UCNs in C99 and C++ modes. PR11538 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174530 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
c706c8e440abf61910c042380e19c67932998395 |
05-Feb-2013 |
Eric Christopher <echristo@gmail.com> |
Driver and option support for -gsplit-dwarf. This is a part of the DWARF5 split dwarf proposal. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174349 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
C1Options.td
ptions.td
|
3c6aaeb26202b41173dd9ea982833fe975147d80 |
01-Feb-2013 |
Hal Finkel <hfinkel@anl.gov> |
Add -mqpx and -mno-qpx feature flags to toggle use of the PPC QPX vector instruction set I've renamed the altivec test to ppc-features (because now there is more than one feature to test). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174204 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
75dbc717c21a662b7836ed34cc4e7da7b8fa33c0 |
01-Feb-2013 |
Chad Rosier <mcrosier@apple.com> |
[driver] Don't try to generate diagnostic information for dsymutil crashes. Part of rdar://13134273 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174203 91177308-0d34-0410-b5e6-96231b3b80d8
ool.h
|
199402b9e081dedc28e19ab6e727470b34f2f64d |
01-Feb-2013 |
Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
Enable -fno-altivec, -mno-altivec for PowerPC. Introduces these negation forms explicitly and uses them to control a new "altivec" target feature for PowerPC. This allows avoiding generating Altivec instructions on processors that support Altivec. The new test case verifies that the Altivec "lvx" instruction is not used when -fno-altivec is present on the command line. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174140 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
ac3a3e7a402cd349dd2b7d70cd92c5fe702ae831 |
30-Jan-2013 |
Anna Zaks <ganna@apple.com> |
[analyzer] Make shallow mode more shallow. Redefine the shallow mode to inline all functions for which we have a definite definition (ipa=inlining). However, only inline functions that are up to 4 basic blocks large and cut the max exploded nodes generated per top level function in half. This makes shallow faster and allows us to keep inlining small functions. For example, we would keep inlining wrapper functions and constructors/destructors. With the new shallow, it takes 104s to analyze sqlite3, whereas the deep mode is 658s and previous shallow is 209s. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173958 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
6bbe1442a5f3f5f761582a9005e9edf1d49c4da2 |
30-Jan-2013 |
Anna Zaks <ganna@apple.com> |
[analyzer] Use analyzer config for max-inlinable-size option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173957 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
ce32890df08387b50a960f785da79ac5582b7f74 |
30-Jan-2013 |
Anna Zaks <ganna@apple.com> |
[analyzer] Remove further references to analyzer-ipa. Thanks Jordan! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173955 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
78d85b1c5830a881c0a20a1b3fea99ee73149590 |
30-Jan-2013 |
Chad Rosier <mcrosier@apple.com> |
[ubsan] Implement the -fcatch-undefined-behavior flag using a trapping implementation; this is much more inline with the original implementation (i.e., pre-ubsan) and does not require run-time library support. The trapping implementation can be invoked using either '-fcatch-undefined-behavior' or '-fsanitize=undefined-trap -fsanitize-undefined-trap-on-error', with the latter being preferred. Eventually, the -fcatch-undefined-behavior' flag will be removed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173848 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
a16355c31878403443f99077cc8df8318457faf5 |
29-Jan-2013 |
Chad Rosier <mcrosier@apple.com> |
[driver] Refactor the driver so that a failing commands doesn't prevent subsequent commands from being executed. The diagnostics generation isn't designed for this use case, so add a note to fix this in the very near future. For now, just generated the diagnostics for the first failing command. Part of rdar://12984531 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173825 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
river.h
|
20c6f2eae500242d3aef5daaa55d440a0786a1fd |
28-Jan-2013 |
Douglas Gregor <dgregor@apple.com> |
Enable the global module index by default. Introduce the -fno-modules-global-index -cc1 option to allow one to disable the index for performance testing purposes, but with a 10% win in -fsyntax-only time, there is no reason a user would do this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173707 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
f575d6e7c3b887ea4c5394d2c7e322c7a929a57e |
25-Jan-2013 |
Douglas Gregor <dgregor@apple.com> |
Rename the -cc1 option "-generate-module-index" to "-fmodules-global-index" and expand its behavior to include both the use and generation of the global module index. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173404 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
9d718635fa805674aaba5d938f3dc6b35b8632ba |
24-Jan-2013 |
Chad Rosier <mcrosier@apple.com> |
[driver] Associate a JobAction with each result file. This enables the driver to delete result files for only those commands that fail. Part of rdar://12984531 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173361 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
til.h
|
a6b00fc97669aa25d89ae9f202b05dfadfd0e324 |
23-Jan-2013 |
Douglas Gregor <dgregor@apple.com> |
Implement the writer side of the global module index. The global module index is a "global" index for all of the module files within a particular subdirectory in the module cache, which keeps track of all of the "interesting" identifiers and selectors known in each of the module files. One can perform a fast lookup in the index to determine which module files will have more information about entities with a particular name/selector. This information can help eliminate redundant lookups into module files (a serious performance problem) and help with creating auto-import/auto-include Fix-Its. The global module index is created or updated at the end of a translation unit that has triggered a (re)build of a module by scraping all of the .pcm files out of the module cache subdirectory, so it catches everything. As with module rebuilds, we use the file system's atomicity to synchronize. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173301 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
b2e2157f905b0b6e27f1d3f5e1f38778c6731813 |
22-Jan-2013 |
Chad Rosier <mcrosier@apple.com> |
[ms-inline asm] Remove the -fenable-experimental-ms-inline-asm flag. MS-style inline assembly can be enable with -fasm-blocks or -fms-extensions alone. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173186 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
4bdc60434c79126b75aee2bb391275f3bb746364 |
20-Jan-2013 |
Alexey Samsonov <samsonov@google.com> |
Add top-level Clang flag -f(no-)sanitize-address-zero-base-shadow that makes AddressSanitizer use bottom of the address space for the shadow memory. On Linux it can be used with -fPIE/-pie to improve performance. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172974 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
d47afb96a3f988e6d21a92fe4dfe875ab227c7c0 |
20-Jan-2013 |
Sean Silva <silvas@purdue.edu> |
Nuke SetUpBuildDumpLog. Also, it was the only reason that `argc` and `argv` were being passed into createDiagnostics, so remove those parameters and clean up callers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172945 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
0234179282d59e6dfccc8b2da72a9a71bf5b6ac3 |
17-Jan-2013 |
Kevin Enderby <enderby@apple.com> |
We want the dwarf AT_producer for assembly source files to match clang's AT_producer. Which includes clang's version information so we can tell which version of the compiler was used. This is second of the two steps to allow us to do this. The first was a change to llvm-mc with revision 172630 to provide a method to set the AT_producer string. This second step has the clang driver passing the value of getClangFullVersion() via the new flag -dwarf-debug-producer when invoking the integrated assembler on assembly source files. Then using the new setDwarfDebugProducer() method to set the AT_producer string. rdar://12888242 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172758 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.td
|
f43b7214e812ddca74a6213608c69c960e067956 |
16-Jan-2013 |
Douglas Gregor <dgregor@apple.com> |
Add -fmodules-autolink/-fno-modules-autolink (defaults to on) so that users can explicitly enable/disable modules autolinking. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172592 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
50a70cd11801fd9a700d06e447095249c34c261f |
15-Jan-2013 |
Douglas Gregor <dgregor@apple.com> |
Add -fopenmp -cc1 option and wire it up to define _OPENMP, from Alexey Bataev! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172509 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
cfa88f893915ceb8ae4ce2f17c46c24a4d67502f |
12-Jan-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
Remove useless 'llvm::' qualifier from names like StringRef and others that are brought into 'clang' namespace by clang/Basic/LLVM.h git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172323 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
2d382d149b442b928fd3fb8edcc8d82ea9325872 |
30-Dec-2012 |
Will Dietz <wdietz2@illinois.edu> |
[ubsan] Recover by default, use -fno-sanitize-recover to disable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171264 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
34ef11be9d09ebf916ab02a521e37be6e9e102d3 |
24-Dec-2012 |
Evgeniy Stepanov <eugeni.stepanov@gmail.com> |
Support -fsanitize-memory-track-origins. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171020 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
27e2b983beb8b5a29869639637327725623069a8 |
18-Dec-2012 |
Eric Christopher <echristo@gmail.com> |
Add support for passing the main file name down to the assembler for location information. Part of PR14624 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170391 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.td
|
d566df67bed6381f6e859bbd21fd43ff89277cc0 |
17-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Fix PR14625 by teaching the driver to detect PWD for assembly files. This also requires adding support to -cc1as for passing the detecting PWD down through LLVM's debug info (which in turn required the LLVM change in r170371). The test case is weak (we only test the driver behavior) because there is currently to infrastructure for running cc1as in the test suite. So those four lines are untested (much like all other lines in that file), but we have a test for the same pattern using llvm-mc in the LLVM repository. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170373 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.td
|
443c999c967d555f6942834b0924c60226b3e6f2 |
11-Dec-2012 |
Hal Finkel <hfinkel@anl.gov> |
Add -fslp-vectorize to enable bb-vectorize Add -fslp-vectorize (with -ftree-slp-vectorize as an alias for gcc compatibility) to provide a way to enable the basic-block vectorization pass. This uses the same acronym as gcc, superword-level parallelism (SLP), also common in the literature, to refer to basic-block vectorization. Nadav suggested this as a follow-up to the adding of -fvectorize. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169909 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
10b5fa283359bd423f8624c4dda11899bcc8ca9c |
11-Dec-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Add the -ftree-vectorize flag as a alias of -fvectorize to maintain compatibility with gcc. rdar://12839978 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169888 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
c04d0934dfc78038ec1c073d9215750bd6a39c76 |
11-Dec-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Add the -fvectorize flag to enable the loop vectorization passes. rdar://12839978 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169885 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
33c95f1178999ea06837769f90be8d7b8d57bb4d |
06-Dec-2012 |
Matthew Curtis <mcurtis@codeaurora.org> |
Hexagon TC: Add/improve support for small data threshold, pic, pie git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169517 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
5fdf350e39c6e260602dbbd709101a9bb55e75f1 |
06-Dec-2012 |
Matthew Curtis <mcurtis@codeaurora.org> |
Hexagon TC: Reimplement Link::ConstructJob to call linker directly Rather than calling gcc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169512 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
15490fd42d7d8dca2f9b5b3a9dc074892ca1acd7 |
05-Dec-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver, ms-inline asm] MS-Style inline assembly is controlled by the -fasm-blocks flag, not the -fms-extensions flag. rdar://12808010 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169422 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
30a2e16f6c27f888dd11eba6bbbae1e980078fcb |
04-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Sort #include lines for all files under include/... This is a simpler sort, entirely automatic with the help of llvm/utils/sort_includes.py -- no manual edits here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169238 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
rgList.h
river.h
ob.h
ption.h
oolChain.h
|
91ecfa6af51836d3ccc90beddab1193b0c060739 |
03-Dec-2012 |
Alexey Samsonov <samsonov@google.com> |
Add Clang flags -fsanitize-blacklist and -fno-sanitize-blacklist. Make this flag usable for ASan. Blacklisting can be used to disable sanitizer checks for particular file/function/object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169144 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
ad95481b2769ad61f23afc5e2c31f11c66090657 |
02-Dec-2012 |
Will Dietz <wdietz2@illinois.edu> |
[ubsan] Add flag to enable recovery from checks when possible. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169114 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
bda07ace55e40bd1a620051156fa9b13ad3936aa |
01-Dec-2012 |
Simon Atanasyan <satanasyan@mips.com> |
[MIPS] Add -mxgot/-mno-xgot command line options to enable/disable support of GOT larger than 64k. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169098 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
17c874a944090a74aa890d7b5ef361be6e4a0184 |
27-Nov-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove some dead code. CLANG_IS_PRODUCTION is now just a build flag and is not used in any #ifdef. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168703 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
a6b2581f9595fb803fe7e2ef1d9f25e75b26d2fb |
22-Nov-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Fix the '-fuse-init-array' option to actually be an option. Previously, this flag to CC1 was never exposed at the clang driver layer, and if you happened to enable it (by being on Android or GCC 4.7 platform), you couldn't *disable* it, because there was no 'no' variant. The whole thing was confusingly implemented. Now, the target-specific flag processing gets the driver arg list, and we use standard hasFlag with a default based on the GCC version and/or Android platform. The user can still pass the 'no-' variant to forcibly disable the flag, or pass the positive variant to clang itself to enable the flag. The test has also been substantially cleaned up and extended to cover these use cases. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168473 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
oolChain.h
|
7ce816a77dc79f71950e9e96185e3523ee08994b |
19-Nov-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Completely re-work how the Clang driver interprets PIC and PIE options. There were numerous issues here that were all entangled, and so I've tried to do a general simplification of the logic. 1) The logic was mimicing actual GCC bugs, rather than "features". These have been fixed in trunk GCC, and this fixes Clang as well. Notably, the logic was always intended to be last-match-wins like any other flag. 2) The logic for handling '-mdynamic-no-pic' was preposterously unclear. It also allowed the use of this flag on non-Darwin platforms where it has no actual meaning. Now this option is handled directly based on tests of how llvm-gcc behaves, and it is only supported on Darwin. 3) The APIs for the Driver's ToolChains had the implementation ugliness of dynamic-no-pic leaking through them. They also had the implementation details of the LLVM relocation model flag names leaking through. 4) The actual results of passing these flags was incorrect on Darwin in many cases. For example, Darwin *always* uses PIC level 2 if it uses in PIC level, and Darwin *always* uses PIC on 64-bit regardless of the flags specified, including -fPIE. Darwin never compiles in PIE mode, but it can *link* in PIE mode. 5) Also, PIC was not always being enabled even when PIE was. This isn't a supported mode at all and may have caused some fallout in builds with complex PIC and PIE interactions. The result is (I hope) cleaner and clearer for readers. I've also left comments and tests about some of the truly strage behavior that is observed on Darwin platforms. We have no real testing of Windows platforms and PIC, but I don't have the tools handy to figure that out. Hopefully others can beef up our testing here. Unfortunately, I can't test this for every platform. =/ If folks have dependencies on these flags that aren't covered by tests, they may break. I've audited and ensured that all the changes in behavior of the existing tests are intentional and good. In particular I've tried to make sure the Darwin behavior (which is more suprising than the Linux behavior) also matches that of 'gcc' on my mac. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168297 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
72511f3adcc89a29c02e36283536beadf9ef555e |
19-Nov-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Remove a no-op 'const' from a by-value return type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168296 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
|
7db16db1ad37a77d45de26bd26725a296025981a |
17-Nov-2012 |
Chad Rosier <mcrosier@apple.com> |
Typo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168222 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
3d145f660a23d5bdabdd1ead83c51f3df1489b09 |
15-Nov-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
block extended signatur option. Change previous option to a cc1 -fencode-extended-block-signature and pass it to cc1 and recognize this option to produce extended block type signature. // rdar://12109031 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168063 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
oolChain.h
|
5bab9ae87c41148ee2f92d312945c1e9303222e8 |
15-Nov-2012 |
Nick Lewycky <nicholas@mxc.ca> |
Revert r167567, restoring the ability of clang to run gcc in cases where it can't handle the input file type. This resulted in PR14338. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168024 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ypes.h
|
62221b17c90457df9ca0ff20bb54d634e8951def |
15-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Add -cc1 option -fno-diagnostics-use-presumed-location, a handy mode for working with preprocessed testcases. This causes source locations in diagnostics to point at the spelling location instead of the presumed location, while still keeping the semantic effects of the line directives (entering and leaving system-header mode, primarily). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168004 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
06cffc0511ba76d979fad9ef6944e685936b62f0 |
15-Nov-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-C blocks: under cc1 flag -encode-extended-block-signature, generate expanded signature encoding to include types as we already do this for protocol method lists. // rdar://12109031 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167997 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
6f0b00a2e286adc813beb0a55ce3ffcda10cce77 |
14-Nov-2012 |
Matt Beaumont-Gay <matthewbg@google.com> |
Fix typo git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167891 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.def
|
879c92c87549e1c37276a29e7d610523c9659aab |
11-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Fix a typo which Matt pointed out. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167679 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
463eb89d5e36b05d74c14b937384076d745b3b84 |
10-Nov-2012 |
Michael Liao <michael.liao@intel.com> |
Add clang support of RTM from TSX - New options '-mrtm'/'-mno-rtm' are added to enable/disable RTM feature - Builtin macro '__RTM__' is defined if RTM feature is enabled - RTM intrinsic header is added and introduces 3 new intrinsics, namely '_xbegin', '_xend', and '_xabort'. - 3 new builtins are added to keep compatible with gcc, namely '__builtin_ia32_xbegin', '__builtin_ia32_xend', and '__builtin_ia32_xabort'. - Test cases for pre-defined macro and new intrinsic codegen are added. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167665 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
e59188b0bd88ea488f2ec2f10a4ad3c4316adbce |
10-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
-momit-leaf-frame-pointer is a -m option, not a -f option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167664 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
da2d2c724da8a495533187c3c8d385004a7ec3d0 |
10-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Document -W in clang --help. Also make the help text more consistent (don't end descriptions in periods, use | to separate possible values). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167645 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
028eb657ec50ac7c629e67660ee31ce27b8c5829 |
10-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Don't include the help for -mips* in clang --help. These are just aliases for other options, and not common enough to be worth including here. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167644 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
0f3edc5d4644d139501ece9e8c9926f64902ae52 |
10-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
-Wlarge-by-value-copy may be awesome, but it really shouldn't be the one and only -W flag which clang --help lists. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167643 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
762d15d5dccf818bd88c80e957390e31e41b9277 |
09-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Remove --help text for deprecated sanitizer options, add --help text for -fsanitize=. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167639 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f1eaab122932a5c61b13ce9ae6d590e24558eb84 |
09-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
PR14303: Add a NoDriverOption flag to those options which are not accepted by the driver (the options defined in CC1Options.td) and exclude their help from "clang --help". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167638 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptParser.td
ptTable.h
ption.h
|
7e293276281bd5bf8526c064d298082b08f0bd8b |
09-Nov-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Add a -mstrict-align compiler option for ARM targets. rdar://12340498 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167619 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
d2a527eae6df377b326e8d764782bc34f1e64189 |
08-Nov-2012 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: The -arch argument values aren't exactly the arch names from a triple. - Translate the special case of powerpc to its expected -arch name. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167571 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
85b7f7ddf2f09778ec303f5a39f9e67e3aae1115 |
08-Nov-2012 |
Bob Wilson <bob.wilson@apple.com> |
Rip out a bunch of code for invoking gcc from clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167567 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ypes.h
|
64c4f29ff3b98d412e0235504364096e997b04bb |
08-Nov-2012 |
Bob Wilson <bob.wilson@apple.com> |
Remove code to fall back to llvm-gcc for i386 kexts. More cleanups to follow in separate commits.... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167566 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
d6396a681c9acbe56bc41bbc2bed2db45755bcd7 |
05-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Use the individual -fsanitize=<...> arguments to control which of the UBSan checks to enable. Remove frontend support for -fcatch-undefined-behavior, -faddress-sanitizer and -fthread-sanitizer now that they don't do anything. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167413 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
c4dabadb51475e76b606024f144e7cf93b0bad00 |
05-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Add -fsanitize=<sanitizers> argument to driver and frontend, and add -fno-sanitize=<sanitizers> argument to driver. These allow ASan, TSan, and the various UBSan checks to be enabled and disabled separately. Right now, the different modes can't be combined, but the intention is that combining UBSan and the other sanitizers will be permitted in the near future. Currently, the UBSan checks will all be enabled if any of them is; that will be fixed by the next patch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167411 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
1d489cf4a04ad0ad8ac2696e4eed0995f3a67288 |
01-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Remove first argument from Arg::getValue; it's been unused since r105760. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167211 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
|
66fb02897b5c2e66b80e8acd9c8a5811dd02d6ee |
31-Oct-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Remove the -ccc-host-triple alias. This has been replaced by the -target option. rdar://10692880 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167158 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
c91b41a64ccce6d1097d85c8c7354ea63a5566a0 |
31-Oct-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Completely rework how superfluous options are stripped out of the crash diagnostics script. This addresses the FIXME pertaining to quoted arguments. We also delineate between those flags that have an argument (e.g., -D macro, -MF file) and those that do not (e.g., -M, -MM, -MG). Finally, we add the -dwarf-debug-flags to the list of flags to be removed. rdar://12329974 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167152 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
|
8c610b075cb2f9dae1178ab881a0aa9f91b9bcd5 |
31-Oct-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove the -ccc-no-clang option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167093 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ptions.td
|
e6c3458723d954d1ba9b73a2d93d2e2d67dd3510 |
31-Oct-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove ccc-no-clang-cpp, which is also dead now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167062 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ptions.td
|
d2d4d68a58898c5d13d66d45a5d9440fc1d790fe |
30-Oct-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
In the past "production" clang builds would not be used for c++, and we had the -ccc-clang-cxx and -ccc-no-clang-cxx options to force them on or off for testing. Clang c++ support is now production quality and these options are dead. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166986 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ptions.td
|
2902829d27ca3d3bb24d55dd99e8a218cc3a415f |
30-Oct-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove a bit of dead code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166983 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.h
|
286d6236850ed3710822e659afdfdf08a315716b |
27-Oct-2012 |
Mahesha S <mahesha.llvm@gmail.com> |
Reverted back the changes made in 166868 and in 166869 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166871 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f3b52315e2ee52bdff9cba31b037c7e6b3adfadc |
27-Oct-2012 |
Mahesha S <mahesha.llvm@gmail.com> |
------------------------------------------------- Feature: OpenMP support in CLANG: Sub-Feature: Support for option -fopenmp Files Changed/Added: * include/clang/Driver/Options.td (C) * include/clang/Basic/LangOptions.def (C) * lib/Driver/Tools.cpp (C) * lib/Frontend/CompilerInvocation.cpp (C) Test Cases Changed/Added: * test/Driver/clang_fopenmp_opt.c (A) ------------------------------------------------- git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166868 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
4d9e497a2b1eab3b1214848216050c64fc3acfd6 |
24-Oct-2012 |
Jordan Rose <jordan_rose@apple.com> |
[analyzer] Replace -analyzer-no-eagerly-trim-egraph with graph-trim-interval. After every 1000 CFGElements processed, the ExplodedGraph trims out nodes that satisfy a number of criteria for being "boring" (single predecessor, single successor, and more). Rather than controlling this with a cc1 option, which can only disable this behavior, we now have an analyzer-config option, 'graph-trim-interval', which can change this interval from 1000 to something else. Setting the value to 0 disables reclamation. The next commit relies on this behavior to actually test anything. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166528 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
bb531706602048716a6c36f1ea59f277be9f6753 |
23-Oct-2012 |
Michael J. Spencer <bigcheesegs@gmail.com> |
[Options] Fix two options I mistransformed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166458 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.td
|
c635710bcbb9598acd5a14647ba7ca28bee89a68 |
23-Oct-2012 |
Michael J. Spencer <bigcheesegs@gmail.com> |
[Options] Add prefixes to options. Each option has a set of prefixes. When matching an argument such as -funroll-loops. First the leading - is removed as it is a prefix. Then a lower_bound search for "funroll-loops" is done against the option table by option name. From there each option prefix + option name combination is tested against the argument. This allows us to support Microsoft style options where both / and - are valid prefixes. It also simplifies the cases we already have where options come in both - and -- forms. Almost every option for gnu-ld happens to have this form. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166444 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
C1AsOptions.h
C1AsOptions.td
C1Options.td
ptParser.td
ptTable.h
ption.h
ptions.h
ptions.td
|
91e06dab9335ed6b4474a74353549c708cf3d936 |
20-Oct-2012 |
Michael J. Spencer <bigcheesegs@gmail.com> |
[Options] Make Option non clang specific. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166348 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
|
e4151c5d1b48efac740b89cc16e5054850cbdecb |
20-Oct-2012 |
Michael J. Spencer <bigcheesegs@gmail.com> |
[Options] make Option a value type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166347 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
rgList.h
ptTable.h
ption.h
|
f38523388174760dcbad810ef60d8504d7df6b4c |
19-Oct-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Revert r166223 and the subsequent commits that depend on it, r166230 & r166235. This seems to have introduced assertion hit when building compiler-rt. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166245 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
rgList.h
ptTable.h
ption.h
|
da3301eec823fe770bfa49a1cb19649506caa698 |
18-Oct-2012 |
Eric Christopher <echristo@gmail.com> |
Add a new option for and disable column number information as there are no known current users of column info. Robustify and fix up a few tests in the process. Reduces the size of debug information by a small amount. Part of PR14106 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166236 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
5b341da0eb6478c22b9587f03572a249ebbd00dc |
18-Oct-2012 |
Eric Christopher <echristo@gmail.com> |
Remove trailing comma. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166235 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
|
d2deb91b02ae1d810719e4a5a63dc404f362575a |
18-Oct-2012 |
Michael J. Spencer <bigcheesegs@gmail.com> |
[Options] Make Option non clang specific. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166230 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
|
97b8fd941475ec233b329a21a4ec94698f8a4b5b |
18-Oct-2012 |
Michael J. Spencer <bigcheesegs@gmail.com> |
[Options] make Option a value type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166223 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
rgList.h
ptTable.h
ption.h
|
b43d87b0646aa04951056c7e0d1ab9a58eb09f66 |
12-Oct-2012 |
Sean Silva <silvas@purdue.edu> |
Remove pointless classof()'s. Updates to llvm/Support/Casting.h have rendered these classof()'s irrelevant. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165770 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
rg.h
ob.h
|
146e5a4a787a2ebfe89a6b74e7c22d850bf1c858 |
11-Oct-2012 |
Manman Ren <mren@apple.com> |
X86: add F16C support in Clang Support the following intrinsics: _mm_cvtph_ps, _mm256_cvtph_ps, _mm_cvtps_ph, _mm256_cvtps_ph rdar://12407875 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165685 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
bc0a925caac5e1a8201af4e8500da0bc4bd4d955 |
11-Oct-2012 |
Eric Christopher <echristo@gmail.com> |
Revert "[Options] make Option a value type." Author: Michael J. Spencer <bigcheesegs@gmail.com> Date: Wed Oct 10 21:48:26 2012 +0000 [Options] make Option a value type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165663 91177308-0d34-0410-b5e6-96231b3b80d8 This reverts commit 0464fd5e4ce2193e786e5adcab6b828f9366dae3. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165667 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
rgList.h
ptTable.h
ption.h
|
0464fd5e4ce2193e786e5adcab6b828f9366dae3 |
10-Oct-2012 |
Michael J. Spencer <bigcheesegs@gmail.com> |
[Options] make Option a value type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165663 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
rgList.h
ptTable.h
ption.h
|
238b6a9d33bf87e23f86866885394cd453a06495 |
09-Oct-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
The clang driver has a fairly fancy support for executing gcc instead of clang itself. This dates back to clang's early days and while it looks like some of it is still used (for kext for example), other parts are probably dead. Remove the -ccc-clang-archs option and associated code. I don't think there is any remaining setup where clang doesn't support an architecture but it can expect an working gcc cross compiler to be available. A nice side effect is that tests no longer need to differentiate architectures that are included in production builds of clang and those that are not. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165545 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ptions.td
|
e20e508aecf413f84b0dc4928cbf4bb5ce6c5bdc |
04-Oct-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Driver: Link crtfastmath.o if it's available and -ffast-math is specified. crtfastmath.o contains routines to set the floating point flags to a faster, unsafe mode. Linking it in speeds up code dealing with denormals significantly (PR14024). For now this is only enabled on linux where I can test it and crtfastmath.o is widely available. We may want to provide a similar file with compiler-rt eventually and/or enable it on other platforms too. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165240 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
9b7dcdb53cee4234c48bb4ceeef39536419945cf |
03-Oct-2012 |
Michael J. Spencer <bigcheesegs@gmail.com> |
[Options] Store the owning OptTable in Option so it can construct Group and Alias. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165150 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
|
fc44e88cbdf013d285f2e4e3962fb80dcad56770 |
03-Oct-2012 |
Simon Atanasyan <satanasyan@mips.com> |
Remove useless parameter "WantFile" from Driver::GetProgramPath(). This parameter is useless because nowhere used explicitly and always gets its default value - "false". The patch reviewed by Rafael Espindola. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165149 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
oolChain.h
|
663117ab56390a18f4157ca84c9a92e5c6cad054 |
26-Sep-2012 |
Michael J. Spencer <bigcheesegs@gmail.com> |
[Options] Store the option ID in OptTable::Info. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164644 91177308-0d34-0410-b5e6-96231b3b80d8
ptTable.h
ption.h
|
80ecf5e66738a7058da58489ca55200212f3d42c |
26-Sep-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Add support for the -fno-fast-math option. rdar://12299433 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164638 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
1370d37f60a173b2acf0afce92db063f06b30b2d |
25-Sep-2012 |
Douglas Gregor <dgregor@apple.com> |
-iframework should allow separate arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164607 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
03a86385d6628398e1671db1d1970eb83ef0f8b3 |
23-Sep-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Implement ToolChain::IsUnwindTablesDefault to reduce code duplication a bit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164473 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
8e1c598310d5cd75700cf800cb333b985ce05420 |
21-Sep-2012 |
Simon Atanasyan <satanasyan@mips.com> |
Add four new command line options for MIPS CPU selection: -mips32, -mips32r2, -mips64, -mips64r2. The patch reviewed by Eric Christopher. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164410 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
72d54e1ee7fdd6d309d34fae59844ab7b1d5b58e |
21-Sep-2012 |
Chad Rosier <mcrosier@apple.com> |
Update comment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164390 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f56faa01936b9cf909623d7f06e3c2569ca4a78e |
15-Sep-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Use LLVM_DELETED_FUNCTION in place of 'DO NOT IMPLEMENT' comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163983 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
rgList.h
|
1824d54df85a462ada812dadda18130f951d40f3 |
13-Sep-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Fix Doxygen misuse: refer to parameter names in paragraphs correctly (\arg is not what most people want -- it starts a new paragraph). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163793 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ompilation.h
river.h
ool.h
oolChain.h
|
127ff2ea6440c3da4b47f9c8b3b190254a97e7b5 |
13-Sep-2012 |
Ted Kremenek <kremenek@apple.com> |
Conditionally parse documentation comments in system headers by passing -fretain-comments-from-system-headers. By default, the compiler no longer parses such documentation comments, as they can result in a noticeable compile time/PCH slowdown. Fixes <rdar://problem/11860820>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163778 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
5a1ffe98b04120846a15f7105905b5f363b08635 |
06-Sep-2012 |
Jordan Rose <jordan_rose@apple.com> |
[analyzer] Always include destructors in the analysis CFG. While destructors will continue to not be inlined (unless the analyzer config option 'c++-inlining' is set to 'destructors'), leaving them out of the CFG is an incomplete model of the behavior of an object, and can cause false positive warnings (like PR13751, now working). Destructors for temporaries are still not on by default, since (a) we haven't actually checked this code to be sure it's fully correct (in particular, we probably need to be very careful with regard to lifetime-extension when a temporary is bound to a reference, C++11 [class.temporary]p5), and (b) ExprEngine doesn't actually do anything when it sees a temporary destructor in the CFG -- not even invalidate the object region. To enable temporary destructors, set the 'cfg-temporary-dtors' analyzer config option to '1'. The old -cfg-add-implicit-dtors cc1 option, which controlled all implicit destructors, has been removed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163264 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
5b86ffd219bdee7720217d5755b772726668b242 |
05-Sep-2012 |
Abramo Bagnara <abramo.bagnara@gmail.com> |
Allow disabling of wchar_t type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163221 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
5d9cb1b9880f3cc5a96950644da6bf9c2b76149f |
04-Sep-2012 |
Joao Matos <ripzonetriton@gmail.com> |
Revert r163076 per chandlerc's request. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163146 91177308-0d34-0410-b5e6-96231b3b80d8
til.h
|
601944aeaf1369f92b90e5c279c22f557eb87cdb |
02-Sep-2012 |
Joao Matos <ripzonetriton@gmail.com> |
Refactored the Windows headers location lookup code. Expose it so standalone tools can have access to it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163076 91177308-0d34-0410-b5e6-96231b3b80d8
til.h
|
318cc3c07eaca04d319be841e9e3bac35d1ff9f5 |
30-Aug-2012 |
Ted Kremenek <kremenek@apple.com> |
Change -analyzer-config to use '=' as the key-value separator, and only support the '-analyzer-config key=val' variant. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162891 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
7b73e0832b20af1f43601a3d19e76d02d9f4dce5 |
29-Aug-2012 |
Ted Kremenek <kremenek@apple.com> |
Add new -cc1 driver option -analyzer-config, which allows one to specify a comma separated collection of key:value pairs (which are strings). This allows a general way to provide analyzer configuration data from the command line. No clients yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162827 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
04a42791609ea958bcb13c84e97118f1a3007eb9 |
21-Aug-2012 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Reduce the amount of state in the Option class by relying on the data from OptTable::Info. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162299 91177308-0d34-0410-b5e6-96231b3b80d8
ptTable.h
ption.h
|
a7afeb040416c0eaac19b92db914913a788044f5 |
21-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Add support for the --param ssp-buffer-size= driver option. PR9673 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162285 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
0a7dd788dbef975f35f273c7ab913f480f7edd60 |
21-Aug-2012 |
John McCall <rjmccall@apple.com> |
Screw around with ObjCRuntime some more, changing the diagnostics for bad deployment targets and adding a few more predicates. Includes a patch by Jonathan Schleifer to enable ARC for ObjFW. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162252 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
4327557dfafe16c031691ed061f52a708e4c6b7a |
20-Aug-2012 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Make Option non virtual. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162231 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
|
e1ce783708b65eaa832ffad03d239264046dd0eb |
31-Jul-2012 |
Jordan Rose <jordan_rose@apple.com> |
[analyzer] Turn -cfg-add-initializers on by default, and remove the flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161060 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
171af64ef10ae816ed2a4f15f5d17aca1d71769f |
31-Jul-2012 |
Alexander Kornienko <alexfh@google.com> |
Added -ast-list option to dump filterable AST decl node names. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161040 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
e34a052d642ba7830174b1a51787251d7f704f80 |
26-Jul-2012 |
Alexander Kornienko <alexfh@google.com> |
Added -ast-dump-filter option to clang -cc1. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160784 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
d256f8673bf2499f57e0f40aab30ff243d576c17 |
21-Jul-2012 |
Chad Rosier <mcrosier@apple.com> |
Rename -fms-inline-asm to -fenable-experimental-ms-inline-asm. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160590 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
0cfe9a1ceb8c4e60a9deb91003c04aba3ec9eade |
20-Jul-2012 |
Chad Rosier <mcrosier@apple.com> |
Revert accidental commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160574 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
f925e0414d76d39d612d54d233e9fa2ee04b0a27 |
20-Jul-2012 |
Chad Rosier <mcrosier@apple.com> |
Add a new flag, -fms-inline-asm, that enables the output of MS-style inline assembly. By default, we don't emit IR for MS-style inline assembly (see r158833 as to why). This is strictly for testing purposes and should not be enabled with the expectation that things will work. This is a temporary flag and will be removed once MS-style inline assembly is fully supported. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160573 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
b13291aa59c4c074e70f2d0181f9721e38b494d4 |
19-Jul-2012 |
Jordan Rose <jordan_rose@apple.com> |
Capitalize "Objective-C" and "C++" in user-facing contexts. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160516 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
455e72e7625a8f87c2c302d8d82baee5c111e094 |
19-Jul-2012 |
Bob Wilson <bob.wilson@apple.com> |
Define __FINITE_MATH_ONLY__ based on -ffast-math and -ffinite-math-only. This macro was being unconditionally set to zero, preceded by a FIXME comment. This fixes <rdar://problem/11845441>. Patch by Michael Gottesman! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160491 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
198871cc90375246d8692680467ff6e810edac36 |
12-Jul-2012 |
Tanya Lattner <tonic@nondot.org> |
Add OpenCL metadata for kernel arg names. This output is controlled via a flag as noted in the OpenCL Spec. Includes a test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160092 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
6994bb61eff86b2db53253ec74b24c4142fc080e |
08-Jul-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add missing options for -m(no-){pclmul,fma,xop}. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159913 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
84f30809a2ce02183609a738aaa116d832e61da3 |
07-Jul-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Wire up -mrdrnd for X86. For some reason GCC decided to call the feature rdrnd instead of rdrand, which requires translating it for LLVM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159897 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
e8cf7d143446c45568bb7c9a6fbd8f32ca6ae93e |
07-Jul-2012 |
Ted Kremenek <kremenek@apple.com> |
Re-apply r159875 with fixes. - Split pedantic driver flag test into separate test file, and XFAIL on cygwin,mingw32 - Fix bug in tablegen logic where a missing '{' caused errors to be included in -Wpedantic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159892 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
3b4c53259603ba389373362f476648b2b1ab9eca |
07-Jul-2012 |
NAKAMURA Takumi <geek4civic@gmail.com> |
Revert rr159875, "Implement -Wpedantic and --no-pedantic to complement -Weverything." It broke several builds. I suspect FileCheck might match assertion failure, even if clang/test/Misc/warning-flags.c passed the test. > 0. Program arguments: bin/./clang -### -pedantic -Wpedantic clang/test/Driver/warning-options.cpp git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159886 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
25570a94ca6b706d19812b0f8df25a63ec3445c8 |
07-Jul-2012 |
Ted Kremenek <kremenek@apple.com> |
Implement -Wpedantic and --no-pedantic to complement -Weverything. This patch introduces some magic in tablegen to create a "Pedantic" diagnostic group which automagically includes all warnings that are extensions. This allows a user to suppress specific warnings traditionally under -pedantic used an ordinary warning flag. This also allows users to use #pragma to silence specific -pedantic warnings, or promote them to errors, within blocks of text (just like any other warning). -Wpedantic is NOT an alias for -pedantic. Instead, it provides another way to (a) activate -pedantic warnings and (b) disable them. Where they differ is that -pedantic changes the behavior of the preprocessor slightly, whereas -Wpedantic does not (it just turns on the warnings). The magic in the tablegen diagnostic emitter has to do with computing the minimal set of diagnostic groups and diagnostics that should go into -Wpedantic, as those diagnostics that already members of groups that themselves are (transitively) members of -Wpedantic do not need to be included in the Pedantic group directly. I went back and forth on whether or not to magically generate this group, and the invariant was that we always wanted extension warnings to be included in -Wpedantic "some how", but the bookkeeping would be very onerous to manage by hand. -no-pedantic (and --no-pedantic) is included for completeness, and matches many of the same kind of flags the compiler already supports. It does what it says: cancels out -pedantic. One discrepancy is that if one specifies --no-pedantic and -Weverything or -Wpedantic the pedantic warnings are still enabled (essentially the -W flags win). We can debate the correct behavior here. Along the way, this patch nukes some code in TextDiagnosticPrinter.cpp and CXStoredDiagnostic.cpp that determine whether to include the "-pedantic" flag in the warning output. This is no longer needed, as all extensions now have a -W flag. This patch also significantly reduces the number of warnings not under flags from 229 to 158 (all extension warnings). That's a 31% reduction. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159875 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
c9686716d2ceb5518178dca98670ec34c472a1be |
06-Jul-2012 |
Lang Hames <lhames@gmail.com> |
Add -ffp-contract = { fast | on | off } command line option support. This flag sets the 'fp-contract' mode, which controls the formation of fused floating point operations. Available modes are: - Fast: Form fused operations anywhere. - On: Form fused operations where allowed by FP_CONTRACT. This is the default mode. - Off: Don't form fused operations (in future this may be relaxed to forming fused operations where it can be proved that the result won't be affected). Currently clang doesn't support the FP_CONTRACT pragma, so the 'On' and 'Off' modes are equivalent. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159794 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
d797a85866fd5ce62850dd145396b451364032a3 |
05-Jul-2012 |
Simon Atanasyan <satanasyan@mips.com> |
MIPS: Add -mdsp/-mno-dsp and -mdspr2/-mno-dspr2 command line options support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159769 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
0b273efa37a38deab77dadf72540c9c07c63f8cf |
05-Jul-2012 |
Simon Atanasyan <satanasyan@mips.com> |
MIPS: Add -mips16 / -mno-mips16 command line support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159747 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
2c7886ddec1e2cee68daee9866637d2e02f434ef |
04-Jul-2012 |
David Chisnall <csdavec@swan.ac.uk> |
Hoist the logic for selecting the Objective-C dispatch method into the runtime class, from the target. No functionality change, just less duplicated logic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159710 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
109e6de8db5614fa327754a279ca4f0be04dea3f |
03-Jul-2012 |
James Dennett <jdennett@google.com> |
Documentation cleanup: * Added file header documentation with \file and \brief; * Cleaned up existing doc comments and added/annotated \brief summaries. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159629 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
|
d99ef536b241071b6f4c01db6525dc03242ac30b |
02-Jul-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Add a new libclang completion API to get brief documentation comment that is attached to a declaration in the completion string. Since extracting comments isn't free, a new code completion option is introduced. A new code completion option that enables including brief comments into CodeCompletionString should be a, err, code completion option. But because ASTUnit caches global declarations during parsing before even completion consumer is created, the option is duplicated as a translation unit option (in both libclang and ASTUnit, like the option to cache code completion results). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159539 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
e75d9cfbf41a0ee9e456a665776f91fdd9773b36 |
30-Jun-2012 |
David Blaikie <dblaikie@gmail.com> |
Use -frewrite-includes for crash reports. In future changes we should: * use __builtin_trap rather than derefing 'random' volatile pointers. * avoid dumping temporary files into /tmp when running tests, instead preferring a location that is properly cleaned up by lit. Review by Chandler Carruth. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159469 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
ypes.def
|
de981f3ff163bc9ec69e4c5e7316e94276412993 |
28-Jun-2012 |
Hans Wennborg <hans@hanshq.net> |
Add -ftls-model command-line flag. This allows for setting the default TLS model. (PR9788) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159336 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
246b6aa6763de8c617d564ef33123a8f3293a80e |
26-Jun-2012 |
Richard Trieu <rtrieu@google.com> |
Add template type diffing to Clang. This feature will provide a better comparison between two templated types when they both appear in a diagnostic. Type elision will remove indentical template arguments, which can be disabled with -fno-elide-type. Cyan highlighting is applied to the differing types. For more formatting, -fdiagnostic-show-template-tree will output the template type as an indented text tree, with differences appearing inline. Template tree works with or without type elision. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159216 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
7ed4f663287b087bc566d29d9febdfdeb8dd2776 |
26-Jun-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Make -serialize-diagnostics (one dash) and alias for --serialize-diagnostics. rdar://11734800 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159208 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
7f3260764a3614e22dcf24d71c1155f14a9b4e6e |
21-Jun-2012 |
Alexey Samsonov <samsonov@google.com> |
Improve support for -g options accepted by Clang: 1. Accept flags -g[0-3], -ggdb[0-3], -gdwarf-[2-4] and collapse them to simple -g (except -g0/-ggdb0). 2. Produce driver error on unsupported formats (-gcoff, -gstabs, -gvms) and options (-gtoggle). 3. Recognize and ignore flags -g[no-]strict-dwarf, -g[no-]record-gcc-switches. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158906 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
8ab6c24076444fc6bda9a28c1100ba106ddffaa6 |
20-Jun-2012 |
Ted Kremenek <kremenek@apple.com> |
Revert "Provide a -no-pedantic to cancel out -pedantic." This needs to be designed a bit further. We may wish to just have -Wno flags to silence warnings, and not have a -no-pedantic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158796 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
260611a32535c851237926bfcf78869b13c07d5b |
20-Jun-2012 |
John McCall <rjmccall@apple.com> |
Restructure how the driver communicates information about the target Objective-C runtime down to the frontend: break this down into a single target runtime kind and version, and compute all the relevant information from that. This makes it relatively painless to add support for new runtimes to the compiler. Make the new -cc1 flag, -fobjc-runtime=blah-x.y.z, available at the driver level as a better and more general alternative to -fgnu-runtime and -fnext-runtime. This new concept of an Objective-C runtime also encompasses what we were previously separating out as the "Objective-C ABI", so fragile vs. non-fragile runtimes are now really modelled as different kinds of runtime, paving the way for better overall differentiation. As a sort of special case, continue to accept the -cc1 flag -fobjc-runtime-has-weak, as a sop to PLCompatibilityWeak. I won't go so far as to say "no functionality change", even ignoring the new driver flag, but subtle changes in driver semantics are almost certainly not intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158793 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
bjCRuntime.h
ptions.td
oolChain.h
|
8af669f2f1d92436fe6dc43144bb084a620e7516 |
19-Jun-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add a -fuse-init-array option to cc1 and map to the UseInitArray target option. On the driver, check if we are using libraries from gcc 4.7 or newer and if so pass -fuse-init-array to the frontend. The crtbegin*.o files in gcc 4.7 no longer call the constructors listed in .ctors, so we have to use .init_array. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158694 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
oolChain.h
|
c4033f318260b21408c9925537fb748ef1f3b179 |
17-Jun-2012 |
Hal Finkel <hfinkel@anl.gov> |
For compatibility with gcc, accept -maltivec as an alias of -faltivec. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158613 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
86123c6ca98e602e48515ec74df940c597c88506 |
15-Jun-2012 |
James Dennett <jdennett@google.com> |
Documentation cleanup: * Converted comments to use \brief to provide summaries; * Fixed uses of \arg that should be \p; * Fixed \param [in] [out] to \param [in,out]; * Made minor formatting fixes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158510 91177308-0d34-0410-b5e6-96231b3b80d8
ptTable.h
|
c1a88f27bea81b270c63329a87811f91c8e467fe |
15-Jun-2012 |
James Dennett <jdennett@google.com> |
Documentation cleanup: use \p ParameterName when referring to a parameter, not \arg ParameterName (which should be used only when documenting that parameter, not when referring to it from elsewhere). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158509 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.h
|
940152f726353e08e3bdcef6f85bc8aa73173597 |
14-Jun-2012 |
David Blaikie <dblaikie@gmail.com> |
Support -f[no-]rewrite-includes from the driver. Review by Chandler Carruth. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158463 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
f1492f970c7c6eb85dc18f13fb864b185bed1d23 |
14-Jun-2012 |
David Blaikie <dblaikie@gmail.com> |
Support -frewrite-includes as an option while preprocessing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158460 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
60ad16b7e24cdb88c577c107b69da85458000858 |
14-Jun-2012 |
David Blaikie <dblaikie@gmail.com> |
Rename -rewrite-includes to -frewrite-includes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158458 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
f122a138e39dbb29162abfa9a3d44091d8efa7af |
13-Jun-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Add -isystem-prefix and -ino-system-prefix arguments, which can be used to override whether headers are system headers by checking for prefixes of the header name specified in the #include directive. This allows warnings to be disabled for third-party code which is found in specific subdirectories of include paths. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158418 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
dc9327a8da640ecf7b15c5d5b726cd67a0e63284 |
13-Jun-2012 |
John McCall <rjmccall@apple.com> |
Provide a -no-pedantic to cancel out -pedantic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158416 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
b8c5e6b9387393072301e973b166607957300785 |
06-Jun-2012 |
Jordan Rose <jordan_rose@apple.com> |
Fix Makefile: Options.td depends on CC1Options.td. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158105 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
8c0b3787e7ccc7978b42dfbb84da2b802c743a5d |
06-Jun-2012 |
David Blaikie <dblaikie@gmail.com> |
Add a -rewrite-includes option, which is similar to -rewrite-macros, but only expands #include directives. Patch contributed by Lubos Lunak (l.lunax@suse.cz). Review by Matt Beaumont-Gay (matthewbg@google.com). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158093 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
48d798ce32447607144db70a484cdb99c1180663 |
02-Jun-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Fix typos found by http://github.com/lyda/misspell-check git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157886 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
003ab6682376a0e4544df295bddcf0d991275c40 |
29-May-2012 |
Simon Atanasyan <satanasyan@mips.com> |
Factor out the code retrieves the last PIC related argument from the Clang::ConstructJob() to the new ArgList::getLastArg() routine with eight argument. That simplifies reusing of this code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157633 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
d6277fb9e0353edffc0d6c8655a65542c08cf6f1 |
21-May-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[driver] When creating the compiler invocation out of command-line arguments, force use of clang frontend for the driver. Fixes rdar://11356765. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157205 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
a39238bda44ab45d53785eb23006a65483a4e139 |
17-May-2012 |
Chad Rosier <mcrosier@apple.com> |
Add -mno-implicit-float to the M group. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157014 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
005af27c607536038864ff36d480b5ecd066a267 |
16-May-2012 |
Chad Rosier <mcrosier@apple.com> |
Rename the driver option to -mno-implicit-float, per Eli's suggestion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156950 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
ee9ad5ce4840b3c95024948c89d00945ffdda9bb |
16-May-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Allow the driver to directly accept the -no-implicit-float option, so that the generation of implicit floating point instructions can be disable for ARM. rdar://11409142 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156942 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
5f9688b7c7fdeafdf530056d49f82d2ec6ca457f |
10-May-2012 |
Sirish Pande <spande@codeaurora.org> |
Hexagon V5 FP support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156567 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
b3198a841e7f356f171f1e11faff014b2deb1eb8 |
09-May-2012 |
Nuno Lopes <nunoplopes@sapo.pt> |
add -fbounds-checking option. When enabled, clang generates bounds checks for array and pointers dereferences. Work to follow in LLVM's backend. OK'ed by Chad; thanks for the review. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156431 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
fd00eecad6fa5400cf37269d84361a0551d0e6d3 |
04-May-2012 |
Alexey Samsonov <samsonov@google.com> |
This patch adds a new Clang compiler flag "-gline-tables-only". It reduces the amount of emitted debug information: 1) DIEs in .debug_info have types DW_TAG_compile_unit, DW_TAG_subprogram, DW_TAG_inlined_subroutine (for opt builds) and DW_TAG_lexical_block only. 2) .debug_str contains only function names. 3) No debug data for types/namespaces/variables is emitted. 4) The data in .debug_line is enough to produce valid stack traces with function names and line numbers. Reviewed by Eric Christopher. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156160 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
769aa2d46fa5dc0bee5285c95a80ad8749cb79cf |
02-May-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Driver: Turn the default value for -fmath-errno into a proper target hook and disable it by default on more platforms. For now -fno-math-errno is the default on BSD-derived platforms (Darwin, DragonFlyBSD, FreeBSD, NetBSD, OpenBSD). If the default is not right for your platform, please yell. I only verified the result with the default compilers on Darwin and FreeBSD. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155990 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
10601a36d1cb28d40ff8ef4febe07a01a156dfa8 |
01-May-2012 |
Douglas Gregor <dgregor@apple.com> |
Revert r155933 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155939 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
d53f6971a7c97c9a564c9a7b3b1dd773d120aac8 |
01-May-2012 |
Douglas Gregor <dgregor@apple.com> |
Fix CMake build git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155933 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
bfd7a525bcf372004787cb641b8c1566b9e8aba5 |
01-May-2012 |
James Molloy <james.molloy@arm.com> |
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/ git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155916 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.h
C1Options.td
MakeLists.txt
akefile
ptParser.td
ptTable.h
ption.h
ptions.td
|
e855b884799e3f651f59ef64911269eaf3df6e12 |
26-Apr-2012 |
Chad Rosier <mcrosier@apple.com> |
Remove the group from -fhonor_infinites/-fno_honor_infinites aliases. Aliases with groups are unsupported. rdar://11324283 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155637 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
6603ff85d415c2aa72579f1a247012b75bfc2a19 |
23-Apr-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Revert r155363, due to the underlying patches in LLVM causing regression test suite failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155371 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
ac28eca18a9f0a343c78ba90b02dfe52302c1f19 |
23-Apr-2012 |
Sirish Pande <spande@codeaurora.org> |
Hexagon V5 (floating point) support in cfe. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155363 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
103f41d0e72a9e52a07e19cbde58c3afc8735098 |
18-Apr-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Revert some Hexagon builtin commits to match reverts done to LLVM in r155047. See the LLVM log for the primary motivation: http://llvm.org/viewvc/llvm-project?rev=155047&view=rev Primary commit r154828: - Several issues were raised in review, and fixed in subsequent commits. - Follow-up commits also reverted, and which should be folded into the original before reposting: - r154837: Re-add the 'undef BUILTIN' thing to fix the build. - r154928: Fix build warnings, re-add (and correct) header and license - r154937: Typo fix. Please resubmit this patch with the relevant LLVM resubmission. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155048 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
7ac715fd3118362f14574c312b044d22e3afeee9 |
16-Apr-2012 |
Sirish Pande <spande@codeaurora.org> |
Hexagon V5(Floating Point) support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154828 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
4762a2da74875d2ae94e0d77d38ed964816cce36 |
16-Apr-2012 |
Sebastian Pop <spop@codeaurora.org> |
use DEFAULT_SYSROOT git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154792 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
|
105047124ca8ccc27e4fa48ae8af8bb472c57648 |
13-Apr-2012 |
Douglas Gregor <dgregor@apple.com> |
Remove the -cc1-level option "-pubnames-dump". Such things should stay out of the tree and use the tooling infrastructure. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154668 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
e51fe0972a781e79abae550786ebed7d1da54252 |
09-Apr-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c: remove -fobjc-default-synthesize-properties from the driver. cc1 option remains though to invoke default property synthesis. // rdar://11209719 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154334 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
e52e2e6f4840c2fa8f7e6289cab976e2c8d2fdc0 |
09-Apr-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
objective-c: Remove -fno-objc-default-synthesize-properties as the driver option. // rdar://11209719 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154331 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
561d62280aecff3168097086425a7da0442d0de4 |
09-Apr-2012 |
David Chisnall <csdavec@swan.ac.uk> |
Revert r154321, pending more discussion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154327 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
649ee3fec12dcf7167630ff88087ad116e9eefa6 |
09-Apr-2012 |
David Chisnall <csdavec@swan.ac.uk> |
Add -fobjc-trace to emit a call before and after each Objective-C message send for hooking in code flow visualisation applications. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154321 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
5e219cf7f896873c1c1e64b9e87a7dade99debba |
08-Apr-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Teach Clang about PIE compilations. This is the first step of PR12380. First, this patch cleans up the parsing of the PIC and PIE family of options in the driver. The existing logic failed to claim arguments all over the place resulting in kludges that marked the options as unused. Instead actually walk all of the arguments and claim them properly. We now treat -f{,no-}{pic,PIC,pie,PIE} as a single set, accepting the last one on the commandline. Previously there were lots of ordering bugs that could creep in due to the nature of the parsing. Let me know if folks would like weird things such as "-fPIE -fno-pic" to turn on PIE, but disable full PIC. This doesn't make any sense to me, but we could in theory support it. Options that seem to have intentional "trump" status (-static, -mkernel, etc) continue to do so and are commented as such. Next, a -pie-level flag is threaded into the frontend, rigged to a language option, and handled preprocessor, setting up the appropriate defines. We'll now have the correct defines when compiling with -fpie. The one place outside of the preprocessor that was inspecting the PIC level (as opposed to the relocation model, which is set and handled separately, yay!) is in the GNU ObjC runtime. I changed it to exactly preserve existing behavior. If folks want to change its behavior in the face of PIE, they can do that in a separate patch. Essentially the only functionality changed here is the preprocessor defines and bug-fixes to the argument management. Tests have been updated and extended to test all of this a bit more thoroughly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154291 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
3953911de1e81aec780c00102b39a2bfac8f4734 |
05-Apr-2012 |
Nico Weber <nicolasweber@gmx.de> |
Honor -fno-pic, -fno-PIC, -fno-pie, -fno-PIE. Review at http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20120402/055759.html git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154064 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
7a938fa66be42710b034a79106de337a275fd265 |
04-Apr-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Create a new -mfpmath= option, which is used to control whether clang uses Neon instructions for single-precision FP. -mfpmath=neon is analogous to passing llc -mattr=+neonfp. -mfpmath=[vfp|vfp2|vfp3|vfp4] is analogous to passing llc -mattr=-neonfp. rdar://11108618 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154046 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
582b395ea4d5dfe353e2132a470d39efe2f84a54 |
02-Apr-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
Use -rewrite-legacy-objc as clang argument for translating objective-c's fragile abi, Use -rewrite-objc for translating objective-c's modern abi. // rdar://11143173 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153877 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
ypes.def
|
40afb7d4f3840e5b9dcdf77086d9e4843fd5463a |
30-Mar-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Create a new L_Group for language options and add the -std= option to said group. Also classify the group as a CompileOnly_Group so that this option does not cause an unused argument warning when used with a link command. rdar://11153013 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153763 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
b47dbcbc12430fdf3e5a5b9f59cdec5480e89e75 |
28-Mar-2012 |
Anna Zaks <ganna@apple.com> |
[analyzer] Enable retry exhausted without inlining by default. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153591 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
82fe6aea407a5a09a6131452ce622087ba83880d |
28-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Move the emission of strict enum range metadata behind a flag (the same flag as GCC uses: -fstrict-enums). There is a *lot* of code making unwarranted assumptions about the underlying type of enums, and it doesn't seem entirely reasonable to eagerly break all of it. Much more importantly, the current state of affairs is *very* good at optimizing based upon this information, which causes failures that are very distant from the actual enum. Before we push for enabling this by default, I think we need to implement -fcatch-undefined-behavior support for instrumenting and trapping whenever we store or load a value outside of the range. That way we can track down the misbehaving code very quickly. I discussed this with Rafael, and currently the only important cases he is aware of are the bool range-based optimizations which are staying hard enabled. We've not seen any issue with those either, and they are much more important for performance. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153550 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
5903a373db3d27794c90b25687e0dd6adb0e497d |
27-Mar-2012 |
Anna Zaks <ganna@apple.com> |
[analyzer] Add an option to re-analyze a dead-end path without inlining. The analyzer gives up path exploration under certain conditions. For example, when the same basic block has been visited more than 4 times. With inlining turned on, this could lead to decrease in code coverage. Specifically, if we give up inside the inlined function, the rest of parent's basic blocks will not get analyzed. This commit introduces an option to enable re-run along the failed path, in which we do not inline the last inlined call site. This is done by enqueueing the node before the processing of the inlined call site with a special policy encoded in the state. The policy tells us not to inline the call site along the path. This lead to ~10% increase in the number of paths analyzed. Even though we expected a much greater coverage improvement. The option is turned off by default for now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153534 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
978fc9c485d21ee89b4f0bc77ce1ea55c65c7f12 |
27-Mar-2012 |
Douglas Gregor <dgregor@apple.com> |
Introduce a -cc1-level option -pubnames-dump, which simply dumps the list of identifiers that that 'public' names at the end of the translation unit, e.g., defined macros or identifiers with top-level names, in sorted order. Meant to support <rdar://problem/10921596>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153522 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
3f718609f41921180f09ccc6e73fe8742667608e |
27-Mar-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Put -cpp-precomp and -no-cpp-precomp under the clang_ignored_f_group. We don't currently support these options. rdar://11120518 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153485 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
64f678eab13b5de9dcebf13d973fbc4731eb1bfd |
16-Mar-2012 |
Chad Rosier <mcrosier@apple.com> |
Fix help text. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152872 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
fc055f943d154c9b7463f43a3b59e093723362c9 |
15-Mar-2012 |
Chad Rosier <mcrosier@apple.com> |
[frontend] Fix how the frontend handles -fno-inline. AFAIK clang now matches the behavior of gcc with respect to the -fno-inline and -fno-inline-functions flags. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152861 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
2dec85b21822f950bf6035640c496ad835e11728 |
13-Mar-2012 |
Chad Rosier <mcrosier@apple.com> |
[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>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152660 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
66253352131e3e7a22b3bfd0e180607aa2bfb988 |
09-Mar-2012 |
Anna Zaks <ganna@apple.com> |
[analyzer] Rework inlining related command line options. - Remove -analyzer-inline-call. - Add -analyzer-ipa=[none|inlining] - Add -analyzer-inlining-mode to allow experimentation for different performance tuning methods. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152351 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
8ba9a6244c56b19bc2a24de5d0c32ff37d50177b |
07-Mar-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Don't try to generate diagnostic information for linker crashes. rdar://10993648 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152180 91177308-0d34-0410-b5e6-96231b3b80d8
ool.h
|
e5de3767186e2a31659c91c55a9665eff077eae6 |
07-Mar-2012 |
Chad Rosier <mcrosier@apple.com> |
Missing period. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152160 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
634a4b1b045b13e7ddfa57934cf2b85d4348f77f |
06-Mar-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] What was implemented in r152130 was actually -fno-inline-functions, not -fno-inline. Part of rdar://10972766 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152145 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
30660a898545416f0fea2d717f16f75640001e38 |
06-Mar-2012 |
Ted Kremenek <kremenek@apple.com> |
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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152141 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
C1Options.td
ptions.td
ypes.def
|
ebcb57a8d298862c65043e88b2429591ab3c58d3 |
06-Mar-2012 |
Ted Kremenek <kremenek@apple.com> |
Add clang support for new Objective-C literal syntax for NSDictionary, NSArray, NSNumber, and boolean literals. This includes both Sema and Codegen support. Included is also support for new Objective-C container subscripting. My apologies for the large patch. It was very difficult to break apart. The patch introduces changes to the driver as well to cause clang to link in additional runtime support when needed to support the new language features. Docs are forthcoming to document the implementation and behavior of these features. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152137 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
bjCRuntime.h
ptions.td
|
6e2cdfd1c1e1522b5e9e0518ab5540a73e9d05cc |
06-Mar-2012 |
Chad Rosier <mcrosier@apple.com> |
Minor fix for r152130. Put -fno-inline in f_Group. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152132 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
250008b4678b19ef80866702e300bb4e53d9ff2d |
06-Mar-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Add support for -fno-inline. rdar://10972766 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152130 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
8fbb4e665dda8227f369877c11828e4402c48eba |
06-Mar-2012 |
Anna Zaks <ganna@apple.com> |
[analyzer] Bump up the size of the functions that should be considered for inlining to 200 BBs. Setting the max to 10 BBs introduced several false negatives, we'll reevaluate the setting later on along with other inlining heuristics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152072 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
8235f9c9c8b3d1737d1c6bd57f7ba3f616b92392 |
02-Mar-2012 |
Anna Zaks <ganna@apple.com> |
[analyzer] Bound the size of the functions being inlined + provide command line options for inlining tuning. This adds the option for stack depth bound as well as function size bound. + minor doxygenification git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151930 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
3c93122d31924d6d4a6265f36a0c98a164002da6 |
01-Mar-2012 |
Kostya Serebryany <kcc@google.com> |
Add a flag -fthread-sanitizer. This flag enables ThreadSanitizer instrumentation committed to llvm as r150423. The patch includes one test for -fthread-sanitizer and one similar test for -faddress-sanitizer. This patch does not modify the linker flags (as we do it for -faddress-sanitizer) because the run-time library is not yet committed and it's structure in compiler-rt is not 100% clear. The users manual wil be changed in a separate commit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151846 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
5840dd9a09c458ef894e7d47caab1d90dc4c1112 |
29-Feb-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[driver] Emit an error when trying to use ARC on macosx earlier than 10.6 rdar://10459258 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151706 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
670326f414ca3f8f2cb1ad2f8bd42d5804b563c8 |
28-Feb-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Add support for -g2 and -ggdb debug flags. rdar://10947759 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151654 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
81fb169f42769e02c7425b23885a261c025fd5e6 |
27-Feb-2012 |
Anna Zaks <ganna@apple.com> |
[analyzer] Add -analyzer-stats, which hooks up LLVM stats tracking. As in http://llvm.org/docs/ProgrammersManual.html#Statistic git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151570 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
2639ac628cff5dedb4fa60169082b2a1a9dd8694 |
22-Feb-2012 |
Chad Rosier <mcrosier@apple.com> |
Provide a way to disable auto-generation of preprocessed files during clang crash. This can speedup the process of generating a delta reduced test case. rdar://10905465 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151109 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
0e65959196b45d8afc89e9102c4fc4ec0d642066 |
19-Feb-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Implement a -gcc-toolchain command line option that does the same as configure's --with-gcc-toolchain. The configure option is now just a default value for the command line one. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150898 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
ceb15656fbab9ee1da319afa4934b8f6a5964758 |
15-Feb-2012 |
David Blaikie <dblaikie@gmail.com> |
Remove the unuseful -fdiagnostics-show-name This option was added in r129614 and doesn't have any use case that I'm aware of. It's possible that external tools are using these names - and if that's the case we can certainly reassess the functionality, but for now it lets us shave out a few unneeded bits from clang. Move the "StaticDiagNameIndex" table into the only remaining consumer, diagtool. This removes the actual diagnostic name strings from clang entirely. Reviewed by Chris Lattner & Ted Kremenek. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150612 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
fc30829694e62040c14f329f5491724fe7476241 |
10-Feb-2012 |
Jim Grosbach <grosbach@apple.com> |
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 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150273 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.td
|
f94d392847fb183b3012dbcb2e372b586c80b9fb |
09-Feb-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Kill the brief and full explanation fields from StaticDiagInfoRec. They were unused and wasted space for nothing. - per PR11952. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150199 91177308-0d34-0410-b5e6-96231b3b80d8
riverDiagnostic.h
|
50a9a12d4f7387bcff3213d4b56e74bab9f4f5d2 |
04-Feb-2012 |
Sean Callanan <scallanan@apple.com> |
Clang has existing support for debuggers that want to provide "po"-like functionality which treats the result of an expression implicitly as "id" (if it is not otherwise known) and prints it as an Objective-C object. This has in the past been gated by the "DebuggerSupport" language option, but that is too general. Debuggers also provide other commands like "print" that do not make any assumptions about whether the object is an Objective-C object. This patch makes the assumption conditional on a new language option: DebuggerCastResultToId. I have also made corresponding modifications to the testsuite. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149735 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
71fd6cc843719cab528a5df0899ad3d15cb9297f |
03-Feb-2012 |
Bob Wilson <bob.wilson@apple.com> |
Fix -ftrap-function fallout from llvm r145714. <rdar://problem/10799325> That llvm change removed the -trap-func backend option, so that using -ftrap-function with clang would cause the backend to complain. Fix it by adding the trap function name to the CodeGenOptions and passing it through to the TargetOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149679 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
773303a505c23d73da624f1e6abcf41a393dad2b |
03-Feb-2012 |
Douglas Gregor <dgregor@apple.com> |
Rename -dependency-graphviz to -dependencncy-dot git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149645 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
c69a181049ab52da29f8f69316a34c90c3ea3b8e |
02-Feb-2012 |
Douglas Gregor <dgregor@apple.com> |
Introduce a -cc1 option "-dependency-graphviz" that determines header dependencies and outputs them in GraphViz format. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149575 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
1d16f0f805c2a3e2198a87154990347b2759f6bd |
31-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Revert r149083 which is not the direction we're going in the Clang driver based on discussions with Doug Gregor. There are several issues: 1) The patch was not reviewed prior to commit and there were review comments. 2) The design of the functionality (triple-prefixed tool invocation) isn't the design we want for Clang going forward: it focuses on the "user triple" rather than on the "toolchain triple", and forces that bit of state into the API of every single toolchain instead of handling it automatically in the common base classes. 3) The tests provided are not stable. They fail on a few Linux variants (Gentoo among them) and on mingw32 and some other environments. I *am* interested in the Clang driver being able to invoke triple-prefixed tools, but we need to design that feature the right way. This patch just extends the previous hack without fixing the underlying problems with it. I'm working on a new design for this that I will mail for review by tomorrow. I am aware that this removes functionality that NetBSD relies on, but this is ToT, not a release. This functionality hasn't been properly designed, implemented, and tested yet. We can't "regress" until we get something that really works, both with the immediate use cases and with long term maintenance of the Clang driver. For reference, the original commit log: Keep track of the original target the user specified before normalization. This used to be captured in DefaultTargetTriple and is used for the (optional) $triple-$tool lookup for cross-compilation. Do this properly by making it an attribute of the toolchain and use it in combination with the computed triple as index for the toolchain lookup. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149337 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
e29cdebb4b9bb435d58aec5da844f46cf78cfbe2 |
30-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Fix yet another issue introduced when renaming '-ccc-host-triple' to '-target'. The original flag was part of a flag group that marked it as driver-only. The new flag didn't ever get equivalent treatment. This caused the '-target' flag to get passed down to any raw GCC invocation. Marking it as a driver option fixes this and PR11875. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149244 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
34144f67610be0ac6cb0d85d77bd57662b9232b9 |
26-Jan-2012 |
Joerg Sonnenberger <joerg@bec.de> |
Keep track of the original target the user specified before normalization. This used to be captured in DefaultTargetTriple and is used for the (optional) $triple-$tool lookup for cross-compilation. Do this properly by making it an attribute of the toolchain and use it in combination with the computed triple as index for the toolchain lookup. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149083 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
453dbcbe30093fbf947a0bec2fbd46e9694eafe9 |
26-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Extend the ExternalASTSource interface to allow the AST source to provide the layout of records, rather than letting Clang compute the layout itself. LLDB provides the motivation for this feature: because various layout-altering attributes (packed, aligned, etc.) don't get reliably get placed into DWARF, the record layouts computed by LLDB from the reconstructed records differ from the actual layouts, and badness occurs. This interface lets the DWARF data drive layout, so we don't need the attributes preserved to get the answer write. The testing methodology for this change is fun. I've introduced a variant of -fdump-record-layouts called -fdump-record-layouts-simple that always has the simple C format and provides size/alignment/field offsets. There is also a -cc1 option -foverride-record-layout=<file> to take the output of -fdump-record-layouts-simple and parse it to produce a set of overridden layouts, which is introduced into the AST via a testing-only ExternalASTSource (called LayoutOverrideSource). Each test contains a number of records to lay out, which use various layout-changing attributes, and then dumps the layouts. We then run the test again, using the preprocessor to eliminate the layout-changing attributes entirely (which would give us different layouts for the records), but supplying the previously-computed record layouts. Finally, we diff the layouts produced from the two runs to be sure that they are identical. Note that this code makes the assumption that we don't *have* to provide the offsets of bases or virtual bases to get the layout right, because the alignment attributes don't affect it. I believe this assumption holds, but if it does not, we can extend LayoutOverrideSource to also provide base offset information. Fixes the Clang side of <rdar://problem/10169539>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149055 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
f8de042335b7f4c037478ee0149ecf1f5c6d4a52 |
26-Jan-2012 |
Bob Wilson <bob.wilson@apple.com> |
Fix a minor bug in r148582, which made -ccc-host-triple into an alias option. I'm not adding a testcase because -ccc-host-triple is slated to be removed, but clang crashes if you try to use -ccc-host-triple without this fix. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149048 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
61d679ab2831b161c857cf3f974312fbd4ef1efd |
26-Jan-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce 3 new fixit options: -fixit-recompile applies fixits and recompiles the result -fixit-to-temporary applies fixits to temporary files -fix-only-warnings">, applies fixits for warnings only, not errors Combining "-fixit-recompile -fixit-to-temporary" allows testing the result of fixits without touching the original sources. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149027 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
26f0e4e7ab534fb42485c930f20a424ecc8c9830 |
26-Jan-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
arc migrator: Added an option to the migrator unused yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@149001 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
0671555f51808b88578bf9c383ef6ba36bb17d5f |
25-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Delete still more remnants of the now dead HostInfo. The janitoring will continue until cleanliness improves. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148951 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
18d7f3af752c41a197552a1ff25ddd639224b4bb |
25-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Delete the driver's HostInfo class. This abstraction just never really did anything. The two big pieces of functionality it tried to provide was to cache the ToolChain objects for each target, and to figure out the exact target based on the flag set coming in to an invocation. However, it had a lot of flaws even with those goals: - Neither of these have anything to do with the host, or its info. - The HostInfo class was setup as a full blown class *hierarchy* with a separate implementation for each "host" OS. This required dispatching just to create the objects in the first place. - The hierarchy claimed to represent the host, when in fact it was based on the target OS. - Each leaf in the hierarchy was responsible for implementing the flag processing and caching, resulting in a *lot* of copy-paste code and quite a few bugs. - The caching was consistently done based on architecture alone, even though *any* aspect of the targeted triple might change the behavior of the configured toolchain. - Flag processing was already being done in the Driver proper, separating the flag handling even more than it already is. Instead of this, we can simply have the dispatch logic in the Driver which previously created a HostInfo object create the ToolChain objects. Adding caching in the Driver layer is a tiny amount of code. Finally, pulling the flag processing into the Driver puts it where it belongs and consolidates it in one location. The result is that two functions, and maybe 100 lines of new code replace over 10 classes and 800 lines of code. Woot. This also paves the way to introduce more detailed ToolChain objects for various OSes without threading through a new HostInfo type as well, and the accompanying boiler plate. That, of course, was the yak I started to shave that began this entire refactoring escapade. Wheee! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148950 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ostInfo.h
|
4d7ff6e8639bdce74e39b90370729ad0179ebcca |
25-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Switch the ToolChain types to all store a Driver reference rather than a HostInfo reference. Nothing about the HostInfo was used by any toolchain except digging out the driver from it. This just makes that a lot more direct. The change was accomplished entirely mechanically. It's one step closer to removing the shim full of buggy copy/paste code that is HostInfo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148945 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
08386a9769575bd8290024aaaecb2dbad5bfd59d |
25-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Remove the TargetTriple object that I added to the Driver recently. This helped stage the refactoring of things a bit, but really isn't the right place for it. The driver may be responsible for compilations with many different targets. In those cases, having a target triple in the driver is actively misleading because for many of those compilations that is not actually the triple being targeted. This moves the last remaining users of the Driver's target triple to instead use the ToolChain's target triple. The toolchain has a single, concrete target it operates over, making this a more stable and natural home for it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148942 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
b5c6babd3d8e0233b8ea5a4eb1e2700e30c0d396 |
25-Jan-2012 |
Fariborz Jahanian <fjahanian@apple.com> |
arc migrator: Provide infrastructure to add options specific to migrator. Use its first option to warn migrating from GC to arc when NSAllocateCollectable/NSReallocateCollectable is used. // rdar://10532541 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148887 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
4a04d0b4aa33e98ea9e7b3e787f0490585ce9b6f |
24-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Remove HostInfo::useDriverDriver(). This was only used in two places inside the innards of the Driver implementation, and only ever implemented to return 'true' for the Darwin OSes. Instead use a more direct query on the target triple and a comment to document why the target matters here. If anyone is worried about this predicate getting wider use or improper use, I can make it a local or private predicate in the driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148797 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
|
91e6076b9bf5e09dc6b202d17a5647b724e6f6e6 |
24-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Hoist the targeted triple object into an actual object in the Driver. The Driver has a fixed target, whether we like it or not, the DefaultTargetTriple is not a default. This at least makes things more honest. I'll eventually get rid of most (if not all) of DefaultTargetTriple with this proper triple object. Bit of a WIP. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148796 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
1db772bd68502e0dabbd8efeb7f7c64a4ab2e37a |
23-Jan-2012 |
Nick Lewycky <nicholas@mxc.ca> |
Add support for -fno-optimize-sibling-calls. Currently only implemented in the X86 backend in LLVM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148689 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
9ec60dfe771ff28a84889dced6f8fd3748d3d55e |
20-Jan-2012 |
Sebastian Pop <spop@codeaurora.org> |
rename -ccc-host-triple into -target git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148582 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
64554ba9fc5f251108fd7d10a9c218e7bf985941 |
18-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
In the driver, -fmodules enables modules for C/Objective-C but one also needs -fcxx-modules to enable modules for C++/Objective-C++. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148393 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
31cbe684302a5ccb001fa2131c0e4aeaa372f5c0 |
13-Jan-2012 |
Eli Friedman <eli.friedman@gmail.com> |
Revert r148138; it's causing test failures. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148141 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
43115d4904431917ef6852ee089a8520b9940ba5 |
13-Jan-2012 |
Sebastian Pop <spop@codeaurora.org> |
remove assertions in the Hexagon backend specific clang driver Patch from Jyotsna Verma: I have made the changes to remove assertions in the Hexagon backend specific clang driver. Instead of asserting on invalid arch name, it has been modified to use the default value. I have changed the implementation of the CPU flag validation for the Hexagon backend. Earlier, the clang driver performed the check and asserted on invalid inputs. In the new implementation, the driver passes the last CPU flag (or sets to "v4" if not specified) to the compiler (and also to the assembler and linker which perform their own check) instead of asserting on incorrect values. This patch changes the setCPU function for the Hexagon backend in clang/lib/Basic/Targets.cpp which causes the compiler to error out on incorrect CPU flag values. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148139 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
edd4f3c39101912605c2a1868dd2be71aa218798 |
13-Jan-2012 |
Sebastian Pop <spop@codeaurora.org> |
rename -ccc-host-triple into -target git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148138 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
9606a57b6f2c43bf438a958fdffea1de60f6b2b7 |
13-Jan-2012 |
Sebastian Pop <spop@codeaurora.org> |
rename DefaultHostTriple into DefaultTargetTriple git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148137 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
edb9459c43dec5f376020f2b53833dee6549e11d |
05-Jan-2012 |
Chad Rosier <mcrosier@apple.com> |
[driver] Add support for passing -lazy_framework/-lazy_library to the linker. rdar://10630328 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147591 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
7025d2cc327ec75353454586df2987afce5e5789 |
03-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Add -fno-modules to the driver, to turn off modules (although they're off by default anyway). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147449 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
c514a8a0eaa575cf46b038cc27fa1e4e8c22f89a |
03-Jan-2012 |
Douglas Gregor <dgregor@apple.com> |
Rename the command-line option for mapping #include/#import over to module imports from -fauto-module-import to -fmodules. The new name will eventually be used to enable modules, and the #include/#import mapping is a crucial part of the feature. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147447 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
abf07a7fb669dcb74040eef948d61dfe3c59ff17 |
02-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Fix PR11685 by implementing -ffast-math and its various friends in the Clang driver. This involves a bunch of silly option parsing code to try to carefully emulate GCC's options. Currently, this takes a conservative approach, and unless all of the unsafe optimizations are enabled, none of them are. The fine grained control doesn't seem particularly useful. If it ever becomes useful, we can add that to LLVM first, and then expose it here. This also fixes a few tiny bugs in the flag management around -fhonor-infinities and -fhonor-nans; the flags now form proper sets both for enabling and disabling, with the last flag winning. I've also implemented a moderately terrifying GCC feature where a language change is also provided by the '-ffast-math' flag by defining the __FAST_MATH__ preprocessor macro. This feature is tracked and serialized in the frontend but it isn't used yet. A subsequent patch will add the preprocessor macro and tests for it. I've manually tested that codegen appears to respect this, but I've not dug in enough to see if there is an easy way to test codegen options w/o relying on the particulars of LLVM's optimizations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147434 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
C1Options.td
ptions.td
|
6a511e14074e186328020fce78fe0c33deb64d1b |
30-Dec-2011 |
Craig Topper <craig.topper@gmail.com> |
Add FMA4 feature flag. Intrinsics coming soon. Also make sse4a feature flag imply sse3. Matches gcc behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147370 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
e14e08b2552b43d81a295401ddf9b8da2c499233 |
29-Dec-2011 |
Craig Topper <craig.topper@gmail.com> |
Add popcnt feature flag to match gcc. This flag is implied when sse42 is enabled, but can be disabled separately. Move popcnt intrinsics to popcntintrin.h to match gcc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147340 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
31ceea096563c42e083eded27f6fe19ed244c0a1 |
25-Dec-2011 |
Craig Topper <craig.topper@gmail.com> |
Add BMI, BMI2, and LZCNT feature flags to enable adding intrinsics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147262 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
17ba267cae596d5eb35fa0963ebcf73571572940 |
23-Dec-2011 |
Anton Yartsev <anton.yartsev@gmail.com> |
fix for PR11634 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147224 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
567003e572eed69cf1e8a04601076c8803355c7a |
22-Dec-2011 |
Kevin Enderby <enderby@apple.com> |
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 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@147167 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.td
|
99ba9e3bd70671f3441fb974895f226a83ce0e66 |
20-Dec-2011 |
David Blaikie <dblaikie@gmail.com> |
Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146959 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
ob.h
|
79cbbdc8affe52591f7ee487a789639aa38331ec |
18-Dec-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Split the Windows toolchain definition into its own file. This is especially nice as the Windows toolchain needs the windows header files, and has lots of platform specific hooks in it. To facilitate the split, hoist a bunch of file-level static helpers into class-level static helpers. Spiff up their doxygen comments while there as they're now more likely to be looked up via docs. Hopefully, this will be followed by further breaking apart of the toolchain definitions. Most of the large and complex ones should likely live on their own. I'm looking at you Darwin. ;] git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146840 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
2b03bb0314cea77f0a8740609a9cccb2253ec1b1 |
17-Dec-2011 |
Craig Topper <craig.topper@gmail.com> |
Add -mavx2 and -mno-avx2 command line support. Also add core-avx2 processor type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146835 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
08d6e032a2a0a8656d12b3b7b93942987bb12eb7 |
16-Dec-2011 |
Richard Smith <richard-llvm@metafoo.co.uk> |
C++11 constexpr: Add note stacks containing backtraces if constant evaluation fails within a call to a constexpr function. Add -fconstexpr-backtrace-limit argument to driver and frontend, to control the maximum number of notes so produced (default 10). Fix APValue printing to be able to pretty-print all APValue types, and move the testing for this functionality from a unittest to a -verify test now that it's visible in clang's output. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146749 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
9f6d068b29ea2f6276f1105c71d9e768201f2b88 |
14-Dec-2011 |
Chad Rosier <mcrosier@apple.com> |
Per discussion on the list, remove BitcodeVerify pass to reimplement as a free function. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146530 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
ff7892758f1e46221b552486c1e329db92147ebc |
13-Dec-2011 |
Chad Rosier <mcrosier@apple.com> |
Add frontend flags to enable bitcode verifier pass. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146441 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
9631939f82c0eaa6fb3936a0ce58a41adfbc9011 |
12-Dec-2011 |
Tony Linthicum <tlinth@codeaurora.org> |
Hexagon backend support git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146413 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
001f628a693960380e37c2b58a1009da77d7e425 |
10-Dec-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Handle -f{no-}honor-infinities, -f{no-}honor-nans, and -ffinite-math-only. - No test case yet, I don't know how to construct a situation where this matters. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146297 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
c24767c9dd869ba0e78c2d4c86d86ed24b8e401e |
08-Dec-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add a --rtlib={compiler-rt,libgcc} argument which I plan to use to allow dual support for compiler-rt on Linux, during bringup. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146094 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
oolChain.h
|
4e785c908ae01519d3592eae2828e2cc94fb02eb |
06-Dec-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Stack realignment is a tristate. Add -mno-stackrealign to turn off all stack realignment, even with locals with alignment exceeding the ABI guarantee. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145909 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
e9d11dbfe1f3286c5f8a2f2fc8ac759f63890655 |
06-Dec-2011 |
Joerg Sonnenberger <joerg@bec.de> |
Add -mstack-alignment=X and fix -mstackrealign handling now that the backend options are gone. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145868 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
6649014b792f8a4b1bc1e8be8f844a72220af508 |
29-Nov-2011 |
Douglas Gregor <dgregor@apple.com> |
Eliminate the -emit-module option, which emitted a module by parsing a source file (e.g., a header). Immediately steal this useful option name for building modules from a module map file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145444 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
c18c42345636e2866fed75c7e434fb659d747672 |
21-Nov-2011 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Add driver arguments -ftemplate-depth=N and -fconstexpr-depth=N, with the same semantics and defaults as the corresponding g++ arguments. The historical g++ argument -ftemplate-depth-N is kept for compatibility, but modern g++ versions no longer document that option. Add -cc1 argument -fconstexpr-depth N to implement the corresponding functionality. The -ftemplate-depth=N part of this fixes PR9890. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145045 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
5d4d9807a65291cbe6ab88d4a4f74cb7fff01bde |
21-Nov-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
Teach the driver about failure result files, which are compilation output files that are valid regardless of whether the compilation succeeded or failed (but not if we crash). Add depfiles to the failure result file list. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145018 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
|
1b4eca67e073f0beefb9924cbe6c65427869f1fa |
16-Nov-2011 |
Kostya Serebryany <kcc@google.com> |
Add -f[no-]address-sanitizer flag git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144800 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
db1cde7dc7bb3aaf48118bd9605192ab94a93635 |
16-Nov-2011 |
Douglas Gregor <dgregor@apple.com> |
Add support for building a module from a module map to the -cc1 interface. This is currently limited to modules with umbrella headers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144736 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
b86b8dc7ef89405205f94635c1073cdb1a7093eb |
15-Nov-2011 |
Douglas Gregor <dgregor@apple.com> |
Add a -cc1-level option -fmodule-name=<name>, which will be used when building modules. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144680 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
36f6e30d5c21a693abf2612ef086e83e9696f0e0 |
11-Nov-2011 |
Ted Kremenek <kremenek@apple.com> |
Add top-level driver option '--serialize-diagnostics' for serialize compiler diagnostics to a file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144339 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
55ccbd5fbfc6dce1b93779ba2dac0da259503ae0 |
07-Nov-2011 |
Chad Rosier <mcrosier@apple.com> |
Tablegenify -g options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144001 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
07643086c6460095855573902d66aae1b08a6182 |
07-Nov-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Rip out one of the features I added for the driver-include-management. We don't actually need a separate flag for non-sysrooted paths as the driver has to manage the sysroot anyways. The driver is not infrequently adding paths to the header search based on their existence on the filesystem. For that, it has to add the sysroot anyways, we should pass it on down to CC1 already joined. More importantly, the driver cannot in all cases distinguish between sysrooted paths and paths that are relative to the Clang binary's installation directory. Essentially, we always need to ignore the system root for these internal header search options. It turns out in most of the places we were already providing the system root in the driver, and then another one in CC1 so this fixes several bugs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143917 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
103accc00cf1c9a09790ef487a9fb89ec0750fd7 |
05-Nov-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Fix a significant oversight in my move of MSVC includes to the driver: actually manage the builtin header file includes as well as the system ones. This one is actually debatable whether it belongs in the driver or not, as the builtin includes are really an internal bit of implementation goop for Clang. However, they must be included at *exactly* the right point in the sequence of header files, which makes it essentially impossible to have this be managed by the Frontend and the rest by the Driver. I have terrible ideas that would "work", but I think they're worse than putting this in the driver and making the Frontend library even more ignorant of the environment and system on which it is being run. Also fix the fact that we weren't properly respecting the flags which suppress standard system include directories. Note that this still leaves all of the Clang tests which run CC1 directly and include builtin header files broken on Windows. I'm working on a followup patch to address that. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143801 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
ac2bc4d220a6263be96b943e9162f4a11149e26d |
05-Nov-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Add two flags to the CC1 layer that I was hoping to avoid. We need to encode the *exact* semantics which the header search paths internally built by the Frontend layer have had, which is both non-user-provided, and at times adding the implicit extern "C" bit to the directory entry. There are lots of CC1 options that are very close, but none do quite this, and they are all already overloaded for other purposes. In some senses this makes the command lines more clean as it clearly indicates which flags are exclusively used to implement internal detection of "standard" header search paths. Lots of the implementation of this is really crufty, due to the surrounding cruft. It doesn't seem worth investing lots of time cleaning this up as it isn't new, and hopefully *lots* of this code will melt away as header search inside of the frontend becomes increasingly trivial. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143798 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
ab9fcd0ad3202735d5f21f15b2989d65f2747a13 |
05-Nov-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Switch the C++ include interface in the ToolChain to use the same naming as the system include interface before I start adding implementations of it to individual ToolChain implementations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143751 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
033be8bd33e0f84db8158771e13528e071563b73 |
04-Nov-2011 |
Devang Patel <dpatel@apple.com> |
Enable -flimit-debug-info by default. Now, clang lazily emits debug info for structs. Original behavior can be restored using -fno-limit-debug-info. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143733 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
7ffa0325bd61f656697f99434334d425c39af309 |
04-Nov-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Sink the handling of -fobjc-arc-cxxlib to live with the other -fobjc-arc implementation in the driver. This cleans up the signature and semantics of the include flag adding component of the toolchain. Another step to ready it for holding all the InitHeaderSearch logic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143686 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
88491fc6dfc7ebbd856d57a9acb49fb83077d6c8 |
04-Nov-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Add a system include management interface to the toolchain, and call it and the C++ include management routine from the proper place when forming preprocessor options in the driver. This is the first step to teaching the driver to manage all of the header search paths. Currently, these methods remain just stubs in the abstract toolchain. Subsequent patches will flesh them out with implementations for various toolchains based on the current code in InitHeaderSearch.cpp. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143684 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
19bda3ad8b5d37e505214e82fab1d0a0bf00f0fd |
02-Nov-2011 |
Eli Friedman <eli.friedman@gmail.com> |
Add an option to emulate the strange Apple gcc behavior of #pragma pack. <rdar://problem/10374763> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143527 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
22a7dfea585703d6755db69b83e29a0e6ee10369 |
30-Oct-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
Add support for lazily linking bitcode files (using a new -mlink-bitcode-file flag), and more generally llvm::Modules, before running optimisations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143314 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
7800212ef29be314d55814e8dcc568ff8beed106 |
29-Oct-2011 |
Ted Kremenek <kremenek@apple.com> |
Start work on SerializedDiagnosticPrinter, a new DiagnosticConsumer that serializes out the diagnostics for a given translation unit to a bit code file. This is a WIP. The motivation for this new DiagnosticConsumer is to provide a way for tools invoking the compiler to get its diagnostics via a libclang interface, rather than textually parsing the compiler output. This gives us flexibility to change the compiler's textual output, but have a structured data format for clients to use to get the diagnostics via a stable API. I have no tests for this, but llvm-bcanalyzer so far shows that the emitted file is well-formed. More work to follow. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143259 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
9a8cbc75052d641105e45d0eca2592743fa01e54 |
29-Oct-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Add an alias option for -error-on-deserialized-decl with joined '='. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@143239 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
e88c4513157cc551ed8080b1e3b3b875a9a570e1 |
25-Oct-2011 |
Eric Christopher <echristo@apple.com> |
Allow the -fno-operator-names option to be passed down to the rest of the compiler. Fixes PR10198 Patch by Brian Foley! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142913 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
89c300400b0b75d879da88f81c97a46feb0675be |
24-Oct-2011 |
David Chisnall <csdavec@swan.ac.uk> |
Enable experimental support for objc_msgSend with GNUstep ObjC runtime. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142795 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
f634bcece396cf6d51df450729bcd976785a0109 |
22-Oct-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Pack struct better. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142725 91177308-0d34-0410-b5e6-96231b3b80d8
ptTable.h
|
7c4fd9121f5885096fd3258d20a984e3f08f8603 |
21-Oct-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Take DW_AT_comp_dir from $PWD when it's present and starts with a '/'. This is closer to what GCC does, except that GCC also checks that the inodes for $PWD and '.' match. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142633 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
024f4be866d13dd2b0ec062e694a62ca84c37191 |
18-Oct-2011 |
Daniel Dunbar <daniel@zuster.org> |
Frontend: Support -iframework. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142418 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
ea523d73a6de06f828952a02f5ff86e4cc631695 |
18-Oct-2011 |
Nick Lewycky <nicholas@mxc.ca> |
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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142301 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
19706f8e702c04d19bc1ace504cbb9df008b6daa |
18-Oct-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Implement -static-libstdc++ for linux. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142290 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
92d6d404833468120f9a86fb360691ac60585551 |
11-Oct-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add support for a new -nostdlibinc option. - This disables the system include directories, but not the compiler builtin directories. Useful for projects that want to use things like the intrinsic headers, but are otherwise freestanding. - I'm willing to reconsider the option naming, I also considered providing an explicit -builtinc (which would match -nobuiltininc), but this is more consistent with existing options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141692 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
a268fc0f2229eb132ebc8501b140093aeb5516bf |
11-Oct-2011 |
Daniel Dunbar <daniel@zuster.org> |
Frontend: Replace -nostdinc by -nostdsysteminc (which is just system include paths). The -nostdinc behavior is now -nostdsysteminc + -nobuiltininc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141691 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
ae57eadbc1a923efb72924765445db915cc23a9b |
10-Oct-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
OpenCL: add driver/frontend support for precompiled headers git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141516 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.def
|
d51e43af0b3a6897b971f316c4de2035ec82d1f2 |
06-Oct-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
CUDA: add -fcuda-is-device flag This frontend-only flag is used by the IR generator to determine whether to filter CUDA declarations for the host or for the device. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141301 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
6ee5b9384533d5b3f8c18b578fccd3935e1b892f |
06-Oct-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
Clang-side build system infrastructure for multiple tblgens. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141267 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
88934e85f81abdc4fb5202325252be3bcab5ebf0 |
05-Oct-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver & AST: Implement support for -fpack-struct and -fpack-struct= command line options. - <rdar://problem/10120602>, PR9631 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141211 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
10a82cde7c317c5dd41dc3faf17f503c52ce2a3d |
04-Oct-2011 |
Bob Wilson <bob.wilson@apple.com> |
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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141063 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
d1e40d5389a4382cbebc97d54792f41ee0414af4 |
02-Oct-2011 |
John McCall <rjmccall@apple.com> |
Make -fobjc-nonfragile-abi the -cc1 default, since it's the increasingly prevailing case to the point that new features like ARC don't even support the fragile ABI anymore. This required a little bit of reshuffling with exceptions because a check was assuming that ObjCNonFragileABI was only being set in ObjC mode, and that's actually a bit obnoxious to do. Most, though, it involved a perl script to translate a ton of test cases. Mostly no functionality change for driver users, although there are corner cases with disabling language-specific exceptions that we should handle more correctly now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140957 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
26e0b304557519c12b150afe23cd24e28fa20a1d |
30-Sep-2011 |
Daniel Dunbar <daniel@zuster.org> |
Revert my --working-directory option, which wasn't well thought through. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140889 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
d30952838421ddfb9f7e346b2ba8213889a5f789 |
30-Sep-2011 |
Anna Zaks <ganna@apple.com> |
[analyzer] Add -analyzer-purge option which can take on multiple values, remove -analyzer-purge=none. (Small refactor as well: move the work of constructing AnalysisManager from the callers to the class itself.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140838 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
4213df3b5da21ce25a4541ca5c447eeb28b515a3 |
29-Sep-2011 |
Daniel Dunbar <daniel@zuster.org> |
Basic/Diagnostics: Split out the default warning "no-Werror" and "show-in-system-header" bits, which is part of teasing them apart from the diagnostic mapping kind. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140742 91177308-0d34-0410-b5e6-96231b3b80d8
riverDiagnostic.h
|
d6471f7c1921c7802804ce3ff6fe9768310f72b9 |
26-Sep-2011 |
David Blaikie <dblaikie@gmail.com> |
Rename Diagnostic to DiagnosticsEngine as per issue 5397 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140478 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
river.h
|
63bc59bf22b8f2e672fcf3904fe33993f69e006f |
23-Sep-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add a --working-directory option which can be used to cause the compiler to operate "as if" in a certain working directory. - For now, we just implement this by changing the actual working directory, but eventually we would want to handle this transparently. This is useful to avoid an extra exec() pair in some situations, and will be something we would want to support for more flexibility in using the Clang libraries. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140409 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
47adebef0df6dce752fe9a45e9190e8005b5d07c |
22-Sep-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add support for CPATH and friends. This moves the existing code for CPATH into the driver and adds the environment lookup and path splitting there. The paths are then passed down to cc1 with -I options (CPATH), added after the normal user-specified include dirs. Language specific paths are passed via -LANG-isystem and the actual filtering is performed in the frontend. I tried to match GCC's behavior as close as possible Fixes PR8971. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140341 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
61ab80a8b35e6fe9363e8ef1b3d27209b0e89349 |
20-Sep-2011 |
Chad Rosier <mcrosier@apple.com> |
[driver] Default to arm mode when using the integrated assembler. rdar://10125227 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140179 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
ae55608a29d61737b7c5390e2d1bb30ab8d5febb |
17-Sep-2011 |
Francois Pichet <pichet2000@gmail.com> |
As per discussion with Doug Gregor on the IRC channel, introduce a new compiler switch: -fms-compatility. Microsoft specific tweaking will now fall into 2 categories: - fms-extension: Microsoft specific extensions that should never change the meaning of an otherwise well formed code. Currently map to LangOptions::Microsoft. (To be clearer, I am planning to change the name to LangOptions::MicrosoftExt). - fms-compatibility: Really a MSVC emulation mode. Map to LangOptions::MicrosoftMode. Can change the meaning of an otherwise standard conformant program. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139978 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
fba18aa8f2cd1994dc65e8cb9f4be201c560dc0b |
16-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
Add an experimental flag -fauto-module-import that automatically turns #include or #import direcctives of framework headers into module imports of the corresponding framework module. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139860 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
531dcce3e5f5d5234520df7593e285d7dd007456 |
15-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
Eliminate the unused -create-module cc1-level option git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139827 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
8ee51ef211bfed9ce04bc93835e19aee014f2fae |
14-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
Teach the driver to always pass down a module cache path. If none is supplied, use something derived from the system's temporary directory. Depends on LLVM r139725. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139726 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
6e975c4517958bcc11c834336d340797356058db |
14-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
For modules, use a hash of the compiler version, language options, and target triple to separate modules built under different conditions. The hash is used to create a subdirectory in the module cache path where other invocations of the compiler (with the same version, language options, etc.) can find the precompiled modules. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139662 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
8c7f4bca64d5128311ce50449ae9d2048c2ffea4 |
13-Sep-2011 |
Chad Rosier <mcrosier@apple.com> |
[driver] Add follow up comment for r139551 to ensure the unused option is not removed in the future. rdar://10110352 and PR10908 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139602 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
dc3e7255f1a35ca5cf352a40a5952db0e65c7900 |
13-Sep-2011 |
Chad Rosier <mcrosier@apple.com> |
[driver] Ignore the '--' option, rather then fail. Do so to match gcc's behavior. rdar://10110352 and PR10908 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139551 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
9a6da6930644b4f2dbe4885b0eb4fc1274ff56a4 |
12-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
Introduce a cc1-level option to provide the path to the module cache, where the compiler will look for module files. Eliminates the egregious hack where we looked into the header search paths for modules. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139538 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
13db5cfc4e5f03eb70efe0d227b53b8280f16161 |
09-Sep-2011 |
John McCall <rjmccall@apple.com> |
Treat the weak export of block runtime symbols as a deployment-target feature akin to the ARC runtime checks. Removes a terrible hack where IR gen needed to find the declarations of those symbols in the translation unit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139404 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
oolChain.h
|
831c6313dfa36f297094cd593a9dd3cb60649362 |
27-Aug-2011 |
Douglas Gregor <dgregor@apple.com> |
Remove the -import-module option. It's no longer useful git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138681 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
f43b5e84aa982afacd87a225440ec88a9b66c1a0 |
27-Aug-2011 |
Chad Rosier <mcrosier@apple.com> |
Cleanup r138662 per Ben and David's suggestions, thanks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138670 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
fe87fc73c0091a8d6ba04b7e3b5f144d4a0517a3 |
26-Aug-2011 |
Chad Rosier <mcrosier@apple.com> |
[driver] When generating temporary files allow a prefix to be added. In many cases we want the prefix to be the original file name less the suffix. For an input such as test.c to named temporary would be something like test-3O4Clq.o Part of <rdar://problem/8314451> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138662 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
1b9060553221720152e12981109549e0a1d8e3a1 |
26-Aug-2011 |
Chad Rosier <mcrosier@apple.com> |
[driver] Add -mglobal-merge/-mno-global-merge machine options to enable/disable merging of globals during codegen. Fixes <rdar://problem/10017909>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138612 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
b5af843a20e237ad1a13ad66a867e200695b8c8e |
26-Aug-2011 |
Douglas Gregor <dgregor@apple.com> |
Eliminate the -chained-pch flag and all of the frontend and libclang options associated with it. Chained PCH is the only way to build a PCH file that includes another PCH file git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138597 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
467dc88512b4ba4bb16e274ea3771dc1415d31da |
26-Aug-2011 |
Douglas Gregor <dgregor@apple.com> |
Introduce a -cc1 option "-emit-module", that creates a binary module from the given source. -emit-module behaves similarly to -emit-pch, except that Sema is somewhat more strict about the contents of -emit-module. In the future, there are likely to be more interesting differences. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138595 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
af6fbe42e4e0bbc42e9bf824ae2a24417ae1665f |
25-Aug-2011 |
Chad Rosier <mcrosier@apple.com> |
80-column and spacing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138578 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
f857186fd1995b34185d063a29b11ad4f948519f |
23-Aug-2011 |
Eric Christopher <echristo@apple.com> |
Add support for a verifier to the driver. Currently only verifies debug output on darwin so is hard coded there. As a note this will need a little bit of refactoring in the class hierarchy to separate it out for different verifiers based on input type. Fixes rdar://8256258. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138343 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
ptions.td
|
2fef11164cbe804f7b808c07757c6f900c08d765 |
23-Aug-2011 |
Nico Weber <nicolasweber@gmx.de> |
enable -fstack-protector on 10.5 for usermode binaries by default. This matches gcc's behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138324 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
faef9fcb41cff7c2cbafb86d3af47c422ddf3010 |
15-Aug-2011 |
Bob Wilson <bob.wilson@apple.com> |
Make -findirect-virtual-calls and -fterminated-vtables aliases of -fapple-kext. Outside the driver, they were already treated that way, but the driver was not giving them the same special treatment as -fapple-kext, e.g., falling back to llvm-gcc for i386/Darwin kexts. Radar 9868422. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137639 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
cc52a0688f46cd04dd6b4670b304cbe82e3018c0 |
14-Aug-2011 |
Nico Weber <nicolasweber@gmx.de> |
Add support of -x objc-cpp-output, -x objc++-cpp-output to the Driver. Matches gcc, and is also required for using ccache with clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137563 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.def
|
be69f6092668b0586c8729855c01ca2eea22e6fe |
13-Aug-2011 |
Chad Rosier <mcrosier@apple.com> |
[driver] Refactor a bit to enable a few fixes when generating diagnostics. No functional change intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137524 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
2b81910618f63e4ce2373c926a26e76b4b91373f |
02-Aug-2011 |
Chad Rosier <mcrosier@apple.com> |
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 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136702 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ompilation.h
river.h
ob.h
|
65e02fa80e1c185f18e5f81cefc30d75383a7301 |
28-Jul-2011 |
Douglas Gregor <dgregor@apple.com> |
Introduce the "-index-header-map" option, to give special semantics for quoted header lookup when dealing with not-yet-installed frameworks. Fixes <rdar://problem/9824020>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136331 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
1fc1de48cdf9a2f241e0f2c7b9e9db2322f1b794 |
28-Jul-2011 |
Chad Rosier <mcrosier@apple.com> |
The -fapple-kext flag was designed to "do the right thing" for building code for use in KEXTs. However, users/Xcode still need to tweak the linker flags to do the right thing, and end up using -Xlinker, for example. Instead, have the driver "do the right thing" when linking when -fapple-kext is present on the command line, and we should have Xcode use -fapple-kext instead of setting other flags like -Xlinker -kext or -nodefaultlibs. rdar://7809940 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136294 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
2d3ba4f5a923a90c3fc290ddfba5e36c2d0a9b46 |
23-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
Move ArrayRef to LLVM.h and eliminate now-redundant qualifiers, patch by Jon Mulder! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135855 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
d7a3ba03f69892aac02e0771eb2e6d1b7b1d1267 |
20-Jul-2011 |
Chad Rosier <mcrosier@apple.com> |
Temporarily revert r135614 while I fix the cmake build. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135621 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ompilation.h
river.h
ob.h
|
2da13b15959365df7edf1ed12a049b599b39c276 |
20-Jul-2011 |
Chad Rosier <mcrosier@apple.com> |
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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135614 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ompilation.h
river.h
ob.h
|
db999aad8a1b9dc265b2e627be334be6580a86a3 |
20-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
remove some now-redundant forward declarations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135578 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ompilation.h
river.h
|
8cc488fefb2fb04bc8d5398da29f0182f97934cf |
20-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
add raw_ostream and Twine to LLVM.h, eliminating a ton of llvm:: qualifications. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135577 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ompilation.h
river.h
ptTable.h
|
686775deca8b8685eb90801495880e3abdd844c2 |
20-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
now that we have a centralized place to do so, add some using declarations for some common llvm types: stringref and smallvector. This cleans up the codebase quite a bit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135576 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
rg.h
rgList.h
river.h
ob.h
ption.h
ool.h
oolChain.h
til.h
|
9594675cc1eb52a054de13c4a21e466643847480 |
20-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
introduce a centralized place to introduce and inject llvm types into the clang namespace. There are a number of LLVM types that are used pervasively and it doesn't make sense to keep qualifying them. Start with casting operators. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135574 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
ob.h
ption.h
|
7ee2049278b98d42709380054eb83f4952af1200 |
19-Jul-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[arcmt] Add some additional driver flags to optionally emit or save the pre-migration ARC errors. -arcmt-migrate-emit-errors : Emits the pre-migration ARC errors but it doesn't affect anything else -arcmt-migrate-report-output : Writes out the pre-migration ARC errors to the provided plist file rdar://9791454 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135491 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
b29a6108b164b183d32d8c14bf5b7492a483c7c9 |
15-Jul-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Switch help text in the CC1 driver from 'instantiation' to 'expansion'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135225 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
48218c60d6b53b7880917d1366ee716dec2145ca |
13-Jul-2011 |
John McCall <rjmccall@apple.com> |
In debugger mode, make ObjC message sends to unknown selectors return __unknown_anytype, and rewrite such message sends correctly. I had to bite the bullet and actually add a debugger support mode for this one, which is a bit unfortunate, but there really isn't anything else I could imagine doing; this is clearly just debugger-specific behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135051 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
bb52786da8d055568eef6e5694288c1258bc8c2a |
12-Jul-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
Implement -MG. Fixes PR9613 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134996 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
69325d5b7cfecf1b3128745efc33612aedf1b8b4 |
09-Jul-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[arcmt] Introduce new '-ccc-arcmt-migrate <path>' ARC migration driver option. This is a new mode of migration, where we avoid modifying the original files but we emit temporary files instead. <path> will be used to keep migration process metadata. Currently the temporary files that are produced are put in the system's temp directory but we can put them in the <path> if is necessary. Also introduce new ARC migration functions in libclang whose only purpose, currently, is to accept <path> and provide pairs of original file/transformed file to map from the originals to the files after transformations are applied. Finally introduce the c-arcmt-test utility that exercises the new libclang functions, update arcmt-test, and add tests for the whole process. rdar://9735086. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134844 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
3bd21383f0d788e49af71c5d25255197ddb8a59b |
08-Jul-2011 |
Jonathan D. Turner <jonathan.d.turner@gmail.com> |
Remove BoostCon-specific code from Clang. FWIW, I'm a fan of things like this living in a separate branch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134649 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
72ac120023abb73f3ff9386e193fed55fa9a96e2 |
07-Jul-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[arcmt] Add -ccc-arcmt-check/-ccc-arcmt-modify driver option aliases. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134591 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
256a76e0b0e0c9e65a3122917d553ef10bc84d29 |
06-Jul-2011 |
John McCall <rjmccall@apple.com> |
Call objc_terminate() instead of abort() when a cleanup throws an exception in Objective-C; in Objective-C++ we still use std::terminate(). This is only available in very recent runtimes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134456 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
bjCRuntime.h
|
c06e0743431b28c96e0bbe27cc07851d2e0d2681 |
06-Jul-2011 |
John McCall <rjmccall@apple.com> |
Missing header from last commit; accidental change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134455 91177308-0d34-0410-b5e6-96231b3b80d8
bjCRuntime.h
|
9f084a3166b684573ba49df28fc5792bc37d92e1 |
06-Jul-2011 |
John McCall <rjmccall@apple.com> |
Change the driver's logic about Objective-C runtimes: abstract out a structure to hold inferred information, then propagate each invididual bit down to -cc1. Separate the bits of "supports weak" and "has a native ARC runtime"; make the latter a CodeGenOption. The tool chain is still driving this decision, because it's the place that has the required deployment target information on Darwin, but at least it's better-factored now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134453 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
oolChain.h
|
bcf6a8025aa50f3f28cfbd0470cf3e8f5cffbab2 |
05-Jul-2011 |
Douglas Gregor <dgregor@apple.com> |
StringRef'ize clang::drive::Option::getName(), from Zach Wheeler! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134418 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
|
5d9b6bf9de98a33427fc7a3beeca90a3002b4744 |
29-Jun-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
Use existing -fcatch-undefined-behavior option, replacing -freset-local-blocks. // rdar://9227352 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134082 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
95b135b5c677173a2f27e9b150843545abf0d97c |
29-Jun-2011 |
David Chisnall <csdavec@swan.ac.uk> |
Make ARC support default to true. Please can we stop making Objective-C runtime features part of the platform description? This only makes sense for Darwin. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134066 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
1077e420b89c9541396135157f22a1eff6062edf |
29-Jun-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
Under a compiler flag, -freset-local-blocks, wipe out stack blocks when they go out of scope. // rdar://9227352 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134045 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
13c4f2144b35bda21746eb60ad90e52a9bd8dcda |
21-Jun-2011 |
Bob Wilson <bob.wilson@apple.com> |
Fix the default libc++ header search path to be sysrooted. Radar 9639692. The -cxx-isystem path is not prefixed with the sysroot directory, so it's not a good way for the driver to set the system default C++ search path. Instead, add -stdlib as a cc1 option and teach the frontend how to find the headers. The driver can then just pass -stdlib through to "cc1". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133547 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
ee273b3b312642da33dd832125206d30e07fc811 |
21-Jun-2011 |
Bob Wilson <bob.wilson@apple.com> |
Fix cut-and-paste error: --stdlib is an alias for -stdlib, not -std. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133546 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
ed798951b46555946c95cb76568ea3cf0b16c9ab |
21-Jun-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Factor out IsUsingLTO helper function. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133542 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
e26bdb91b7e3912ffe895b78a446db94471a59dd |
21-Jun-2011 |
Daniel Dunbar <daniel@zuster.org> |
IRgen: Add a -fuse-register-sized-bitfield-access option, for testing. - Changes bit-field access policy to try to use (aligned) register sized accesses. The idea here is that by using larger accesses we expose more coalescing potential to the backend when we have situations like adjacent bit-fields in the same structure (which is common), and that the backend should be smart enough to narrow the accesses down when no coalescing is done or when it is shown not to be profitable. -- $ clang -m32 -O3 -S -o - t.c _f0: ## @f0 pushl %ebp movl %esp, %ebp movl 8(%ebp), %eax movb (%eax), %cl andb $-128, %cl orb $1, %cl movb %cl, (%eax) movb 1(%eax), %cl andb $-128, %cl orb $1, %cl movb %cl, 1(%eax) movb 2(%eax), %cl andb $-128, %cl orb $1, %cl movb %cl, 2(%eax) movb 3(%eax), %cl andb $-128, %cl orb $1, %cl movb %cl, 3(%eax) popl %ebp ret $ clang -m32 -O3 -S -o - t.c -Xclang -fuse-register-sized-bitfield-access _f0: ## @f0 pushl %ebp movl %esp, %ebp movl 8(%ebp), %eax movl $-2139062144, %ecx ## imm = 0xFFFFFFFF80808080 andl (%eax), %ecx orl $16843009, %ecx ## imm = 0x1010101 movl %ecx, (%eax) popl %ebp ret -- git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133532 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
c3b9014c7236a15cf467662264b243a22c420312 |
21-Jun-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Add support for -Wa,--noexecstack when building from a non-assembly file. For an assembly file it worked correctly, while for a .c file it would given an error about how --noexecstack is not a supported argument to -Wa. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133489 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
6af966266235cae3287d50f1a10072bc48759ba0 |
20-Jun-2011 |
Francois Pichet <pichet2000@gmail.com> |
Remove more unnecessary #include <llvm/ADT/SmallVector.h> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133418 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
|
c2e70b46b686c8debb3020891a5593f298b053ae |
18-Jun-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[arcmt] Remove '-arcmt-modify-in-memory', it turned out less useful than we hoped it would be. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133315 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
7a883e3e1798efdb12f06e4e1b722f9a659dbac3 |
17-Jun-2011 |
Eli Friedman <eli.friedman@gmail.com> |
Add support for -force_load flag, for compat with Apple gcc. rdar://9555962 . git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133218 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f85e193739c953358c865005855253af4f68a497 |
16-Jun-2011 |
John McCall <rjmccall@apple.com> |
Automatic Reference Counting. Language-design credit goes to a lot of people, but I particularly want to single out Blaine Garst and Patrick Beard for their contributions. Compiler implementation credit goes to Argyrios, Doug, Fariborz, and myself, in no particular order. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133103 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
oolChain.h
|
74da19fc3a52d7e3005eeb7a7833859da84fd12a |
15-Jun-2011 |
Douglas Gregor <dgregor@apple.com> |
Introduce a -cc1-level option to turn off related result type inference, to be used (only) by the Objective-C rewriter. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133025 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
4c4efee6d3113f20b41efaeec08934332d2ea40e |
13-Jun-2011 |
Douglas Gregor <dgregor@apple.com> |
Eliminate the -f[no]objc-infer-related-result-type flags; there's no reason to allow the user to control these semantics through a flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132919 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
926df6cfabf3eaa4afc990c097fa4619b76a9b57 |
11-Jun-2011 |
Douglas Gregor <dgregor@apple.com> |
Implement Objective-C Related Result Type semantics. Related result types apply Cocoa conventions to the type of message sends and property accesses to Objective-C methods that are known to always return objects whose type is the same as the type of the receiving class (or a subclass thereof), such as +alloc and -init. This tightens up static type safety for Objective-C, so that we now diagnose mistakes like this: t.m:4:10: warning: incompatible pointer types initializing 'NSSet *' with an expression of type 'NSArray *' [-Wincompatible-pointer-types] NSSet *array = [[NSArray alloc] init]; ^ ~~~~~~~~~~~~~~~~~~~~~~ /System/Library/Frameworks/Foundation.framework/Headers/NSObject.h:72:1: note: instance method 'init' is assumed to return an instance of its receiver type ('NSArray *') - (id)init; ^ It also means that we get decent type inference when writing code in Objective-C++0x: auto array = [[NSMutableArray alloc] initWithObjects:@"one", @"two",nil]; // ^ now infers NSMutableArray* rather than id git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132868 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
7339902e47acacad0d6b911c54ee3aa8cbfac683 |
04-Jun-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Revert r132630. GCC passes everything down, we aren't trying to replicate that. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132637 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f6ff3abc3a7ee63fcf279e68ef802a12d94adf08 |
04-Jun-2011 |
Nick Lewycky <nicholas@mxc.ca> |
GCC passes -z foo directly through to the linker (and yes -z=foo becomes "-z =foo"). Do the same thing in clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132630 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
01ba8545fb6bae2a370606b4f40f0d17eb0a8c6c |
02-Jun-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add -fno-gnu89-inline. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132468 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
fb3f4aad0436a9c40e9130598162150890c405b5 |
02-Jun-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Implement -fgnu89-inline. Fixes PR10041. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132460 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
3573fff02a7f021bebdf3c7f59f631eb5dccbd44 |
25-May-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Don't warn about unused PIE arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@132020 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
74a63bca21a352319162505dce8310c1d6ed15cd |
22-May-2011 |
David Chisnall <csdavec@swan.ac.uk> |
Change the default for supporting ObjC GC to true. This shouldn't really be in ToolChain at all, since it's a property of the objc runtime library. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131856 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
c9471b0ff1815ed0149dbfcad0f385ed8648eeb0 |
21-May-2011 |
Douglas Gregor <dgregor@apple.com> |
Introduce the -fdiagnostics-format=xxx option to control how Clang prints the file, line, and column of a diagnostic. We currently support Clang's normal format, MSVC, and Vi formats. Note that we no longer change the diagnostic format based on -fms-extensions. Patch by Andrew Fish! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131794 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
46a49391efab20d7a2a1c18f22edb3d76b465252 |
19-May-2011 |
Joerg Sonnenberger <joerg@bec.de> |
Correction for r131662, the GNU as option is --fatal-warnings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131671 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.td
|
d793350dee89688f1cc939096dc60c3bc15c20fe |
19-May-2011 |
Joerg Sonnenberger <joerg@bec.de> |
Support -fatal-warnings for the assembler frontend git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131662 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.td
|
3dc05418538c719fea48b906bfa4febe5296e126 |
05-May-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Preserve the full name of the file, so that '-c -o foo.pic.o' produces foo.pic.gcno instead of foo.gcno. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130899 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
c1598700010cea9364a58a65e967b0b56361b6aa |
05-May-2011 |
Sean Hunt <scshunt@csclub.uwaterloo.ca> |
Change cycle detection to be based off of a warning flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130898 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
5ea4f44e34449a78d6b38aa47c14b527839d7aac |
04-May-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Record where the GCOV data files should be placed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130866 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
fe57eef44cc80e5bb51e4f484835be08b8d84256 |
04-May-2011 |
Sean Hunt <scshunt@csclub.uwaterloo.ca> |
Implement a better version of delegating constructor cycle detection. This is more efficient as it's all done at once at the end of the TU. This could still get expensive, so a flag is provided to disable it. As an added bonus, the diagnostics will now print out a cycle. The PCH test is XFAILed because we currently can't deal with a note emitted in the header and I, being tired, see no other way to verify the serialization of delegating constructors. We should probably address this problem /somehow/ but no good solution comes to mind. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130836 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
1a584022c86bd0778cf7ad1fbea08c78869cf216 |
02-May-2011 |
Eric Christopher <echristo@apple.com> |
Add the -mstackrealign option which just communicates the need to force align the stack to the backend. Fixes rdar://9289631 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130725 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
f24a151d645abc89f94aa58ad59f3131502041b1 |
30-Apr-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Implement -fno-dwarf2-cfi-asm. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130616 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
9d609f2b0dd604879f8b284ded1f14ba300e8070 |
30-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Sketch initial support for a -mios-simulator-version-min= flag and associated deployment target environment variable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130591 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
a0fa203f04235cb6d05eeb8cea3392a01aa7571b |
30-Apr-2011 |
Bob Wilson <bob.wilson@apple.com> |
Add -Oz option and use it to set the inline threshold to 25. Radar 9333566. Patch by Chad Rosier! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130554 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
c69a505cfa318d571ce8a0cd038c8d958585a735 |
23-Apr-2011 |
Jay Foad <jay.foad@gmail.com> |
Remove unused STL header includes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130068 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
|
f8c247d247f9f7ab2bf4965677e6d056711c99d5 |
23-Apr-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Move all of the logic for __DEPRECATED to the driver based on comments from dgregor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130066 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
1cfe3c305c0d5393fd94167808b8f5d96cd65227 |
23-Apr-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Fix Clang's __DEPRECATED define to be controled by -Wdeprecated. This matches GCC behavior which libstdc++ uses to limit #warning-based messages about deprecation. The machinery involves threading this through a new '-fdeprecated-macro' flag for CC1. The flag defaults to "on", similarly to -Wdeprecated. We turn the flag off in the driver when the warning is turned off (modulo matching some GCC bugs). We record this as a language option, and key the preprocessor on the option when introducing the define. A separate flag rather than a '-D' flag allows us to properly represent the difference between C and C++ builds (only C++ receives the define), and it allows the specific behavior of following -Wdeprecated without potentially impacting the set of user-provided macro flags. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130055 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
50465d1d2f5f6dd3d8e18e2cf7bad4691e5ca6a8 |
23-Apr-2011 |
Chandler Carruth <chandlerc@gmail.com> |
There were some frustrating problems with the implementation of -Wwrite-strings. First and foremost, once the positive form of the flag was passed, it could never be disabled by passing -Wno-write-strings. Also, the diagnostic engine couldn't in turn use -Wwrite-strings to control diagnostics (as GCC does) because it was essentially hijacked to drive the language semantics. Fix this by giving CC1 a clean '-fconst-strings' flag to enable const-qualified strings in C and ObjC compilations. Corresponding '-fno-const-strings' is also added. Then the driver is taught to introduce '-fconst-strings' in the CC1 command when '-Wwrite-strings' dominates. This entire flag is basically GCC-bug-compatibility driven, so we also match GCC's bug where '-w' doesn't actually disable -Wwrite-strings. I'm open to changing this though as it seems insane. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130051 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
8387e2a41eef6fa17fb140a18c29b6eee9dd2b8a |
23-Apr-2011 |
Francois Pichet <pichet2000@gmail.com> |
Add -fdelayed-template-parsing option. Using this option all templated function definitions are parsed at the end of the translation unit only if it is required by an actual instantiation. As such all the symbols of the TU are available during name lookup. Using this flag is necessary for compatibility with Microsoft template code. This also provides some parsing speed improvement. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130022 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
e8ba8d78a258ec992d3521eebdae8324db777b14 |
22-Apr-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Wire up the -ftest-coverage and -fprofile-arcs flags to .gcno file emission (at compile time) and .gcda emission (at runtime). --coverage enables both. This does not yet add the profile_rt library to the link step if -fprofile-arcs is enabled when linking. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129956 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
723b1782460bc448d9d865e9b828c09d26a50964 |
21-Apr-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Alphabetize this one flag, just to pull it out of my patch. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129941 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
877ded8532736d49b3cda8708cf0e5e9c44a760b |
18-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Support -fno-lto. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129712 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
7d2b8c1fcc2b707be78b09930a7767477822462f |
16-Apr-2011 |
Douglas Gregor <dgregor@apple.com> |
Initial work to improve documentation for Clang's diagnostics, from Matthieu Monrocq git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129614 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
riverDiagnostic.h
ptions.td
|
fc8f0e14ad142ed811e90fbd9a30e419e301c717 |
15-Apr-2011 |
Chris Lattner <sabre@nondot.org> |
fix a bunch of comment typos found by codespell. Patch by Luis Felipe Strano Moraes! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129559 91177308-0d34-0410-b5e6-96231b3b80d8
ptParser.td
|
f077c0d4bb1598f9201cdc38592634ca8922da6c |
12-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Don't treat -m{abi,arch,cpu,cmodel}= as "driver" options, they don't modify the driver planning. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129396 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
a5fc472b353b88be3b4981da946fb01f5a5cc0c6 |
10-Apr-2011 |
John McCall <rjmccall@apple.com> |
Fix a bunch of major problems with __unknown_anytype and properly test for them. The only major missing feature is references. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129234 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
b8a3e8139b9fe513500c89bbcd9133415654a689 |
09-Apr-2011 |
Dylan Noblesmith <nobled@dreamwidth.org> |
refactor -ccc-gcc-name code Put the logic for deciding the default name for gcc/g++ in the only place that actually cares about it. This also pushes an ifdef out of the generic driver code to a little further down, when the target is actually known. Hopefully it can be changed into just a runtime check in the future. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129212 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
49af1f3cedc55726e4a3dd343eb4a8e24eab8439 |
08-Apr-2011 |
Evan Cheng <evan.cheng@apple.com> |
Rename -mtrap_function= to -ftrap_function= since it's now a target neutral options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129153 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
b20e442b31287b7e926a118dec36bddc34dbe730 |
08-Apr-2011 |
Evan Cheng <evan.cheng@apple.com> |
Add -mtrap_function=<> option. rdar://9257465 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129145 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
089f872fedb175f7569f24f1dba362ffbc403528 |
07-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Don't attempt to forward some Clang-only options to cc1. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129108 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
08c6695f6018fb6cb1a7c7d311a851aa5c233bc0 |
07-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
Frontend: Sketch support for -diagnostic-log-file, which still doesn't do anything. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129086 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
c8a22b091677c02003880166e5d5767ca8d74b70 |
07-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Sketch driver support for a CC_LOG_DIAGNOSTICS options, similar to the existing CC_PRINT_OPTIONS and CC_PRINT_HEADERS, which can be used to transparently capture the compiler diagnostics from a build. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129082 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
4c8acc9b0158081635e1dabd49304377ae67ca98 |
05-Apr-2011 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Fix spelling. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128896 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
832316e9a04242972f4b57281dccb8e4cf5894ea |
05-Apr-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Move Driver::createInvocationFromArgs function to Frontend library to avoid dependency cycle between libFrontend and libDriver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128852 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
054e4f50e2f1995e91b0cd3c3258aa252785fe3f |
04-Apr-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce Driver::createInvocationFromArgs used to create a CompilerInvocation from command-line args. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128848 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
a6c530868fd8ca54b0a2e00f3a623af72e8dc979 |
30-Mar-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Silence warnings of unkwown -Wlarger-than and -Wframe-larger-than. Fixes rdar://6970318. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128560 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
969323239f16589329d091a2b8ef200fcfe7c9e9 |
29-Mar-2011 |
Daniel Dunbar <daniel@zuster.org> |
Integrated-As: Support -Wa,-L when using the integrated assembler. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128433 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
402adc3bc0ddbbb46cb0b8d29812a9c2f605ec4f |
29-Mar-2011 |
Daniel Dunbar <daniel@zuster.org> |
Frontend/cc1as: Add support for -L. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128432 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.td
|
abaca7a8be8e79cc01354676e3bcb26575640311 |
27-Mar-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Add an option to suppress include stack printing on note diagnostics. These stacks are often less important than those on primary diagnostics. As the number of notes grows, this becomes increasingly important. The include stack printing is clever and doesn't print stacks for adjacent diagnostics from the same file, but when a note is in between a sequence of errors in a header file, and the notes all refer to some other file, we end up getting a worst-case ping-pong of include stacks that take up a great deal of vertical space. Still, for now, the default behavior isn't changed. We can evaluate user feedback with the flag. Patch by Richard Trieu, a couple of style tweaks from me. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128371 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
5adb5a84bfb4f2e5f1ea28fdfc6ee1cd9b622c60 |
27-Mar-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Add -f[no-]strict-overflow to the Clang driver. Use it to set the default for -fwrapv if that flag isn't specified explicitly. We always prefer an explict setting of -fwrapv when present. Also adds support for -fno-wrapv to allow disabling -fwrapv even when -fno-strict-overflow is passed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128353 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
7f9fc3f7ce076645cb6aefc99c64d9446caf13d6 |
23-Mar-2011 |
Chris Lattner <sabre@nondot.org> |
switch a few Driver APIs to use llvm::ArrayRef, cleaning up code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128142 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
3c66d30d513106bb794990c5e4ba36a31ac19f15 |
22-Mar-2011 |
Daniel Dunbar <daniel@zuster.org> |
Frontend: Add a more explicit -backend-option flag for passing backend command line options, instead of leveraging the blanket -mllvm option. - This allows using the frontend itself without requiring the backend have those options available (i.e., if the target wasn't built). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128087 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
05e5930166333e382522b942f00d08abc6c0a28e |
21-Mar-2011 |
Joerg Sonnenberger <joerg@bec.de> |
Memorize presence/absence of -nostdlib in Driver. Drop program paths on NetBSD (unused). Only include lib dir, if -nostdlib is absent. Use = to allow --sysroot to work. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127995 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
8ab2bdcc4f397e100c684ede8e8ca6e226e1380a |
21-Mar-2011 |
Joerg Sonnenberger <joerg@bec.de> |
Remember sysroot in Driver. Pass it down to ld for NetBSD, FreeBSD and DragonFly. Use the --sysroot= form for Linux. Fix handling of = prefix for -B. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127994 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
207f4d8543529221932af82836016a2ef066c917 |
18-Mar-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
Add support for language-specific address spaces. On top of that, add support for the OpenCL __private, __local, __constant and __global address spaces, as well as the __read_only, _read_write and __write_only image access specifiers. Patch originally by ARM; language-specific address space support by myself. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127915 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
2ed42287b9b88a0bb08ab10e95e306da3f294ba9 |
18-Mar-2011 |
Daniel Dunbar <daniel@zuster.org> |
Lexer: Add extremely limited support for -traditional-cpp, ignoring BCPL comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127910 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
ac0659ae4124156915eddf70e78065df224d34c8 |
18-Mar-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Give SelectTool access to the action inputs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127902 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
32096695c76033a6b0b1747c439f7378a11e8312 |
18-Mar-2011 |
John McCall <rjmccall@apple.com> |
The Darwin kernel does not provide useful guard variable support. Issue this as an IR-gen error; it's not really worthwhile doing this "right", i.e. in Sema, because IR gen knows a lot of tricks beyond what the constant evaluator knows. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127854 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
b0f4b9a558933b307073f7cd7753602f94354ae9 |
09-Mar-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce '-chain-include' option to specify headers that will be converted to chained PCHs in memory without having to use multiple runs and intermediate files. Intended for testing & debugging of chained PCH. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127339 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
65f7165676854bf75494f5b73a620d7237db5d41 |
07-Mar-2011 |
Joerg Sonnenberger <joerg@bec.de> |
Redo part of r127137: Pass down the correct C->getArgs, but keep it with the original DerivedArgList type. Slightly adjust the MakeIndex call for the different base type. This unbreaks the handling of --no-mangle on Darwin. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127142 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
e6ec11aa15c7104d57009c6e036bf4ae29c35fb2 |
07-Mar-2011 |
Douglas Gregor <dgregor@apple.com> |
Remove the AST printer (-ast-print-xml), which is too incomplete and too low-level to actually be useful but is just interesting enough for people to try to use it (which won't actually work beyond toy examples). To bring back the AST printer, it needs to be: - Complete, covering all of C/C++/Objective-C - Documented, with appropriate Schema against which we can validate the output - Designed for C/C++/Objective-C, not Clang's specific ASTs - Stable across Clang versions - Well-tested git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127141 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
9ade4ae4fb7ed1fcbd63835d9f8f53052f0657a2 |
07-Mar-2011 |
Joerg Sonnenberger <joerg@bec.de> |
If called as *cpp or *cpp-[^-]*, run only the preprocessor. If no input is specified, use stdin implicitly. Based on a patch from Roman Divacky. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@127137 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
bbe8e3eff56ac1d79f3668d706536e3cebe28c18 |
01-Mar-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Be bug compatible with GCC and ignore -pg on ARM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126767 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
cfe9af250f466e7e38becea4428990448ae07737 |
01-Mar-2011 |
Roman Divacky <rdivacky@freebsd.org> |
Implement -mrtd which sets the StdCall calling convention to be the default one. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126756 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
c4d2c9074be6eb2091086eddd6c8f052f3b245c8 |
28-Feb-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[analyzer] Remove '-analyzer-check-objc-mem' flag, the nominee for best misnomer award. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126676 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
344500e3b78b95e2d911f45a64c5364d346ba799 |
28-Feb-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[analyzer] The current UninitializedValuesChecker will go away, remove '-warn-uninit-values'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126673 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
15348aeb81285c75b2e92b5bf8d2db3445d147c2 |
28-Feb-2011 |
Anders Carlsson <andersca@mac.com> |
Add a -fcxx-exceptions flag to the frontend, which can be used to enable C++ exceptions, even when exceptions have been turned off using -fno-exceptions. Make the -fobjc-exceptions flag do the same thing, but for Objective-C exceptions. C++ and Objective-C exceptions can also be disabled using -fno-cxx-excptions and -fno-objc-exceptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126630 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
05357018b2e5e66559ad0ce2147dc1db9af42b9d |
28-Feb-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[analyzer] Migrate ArrayBoundCheckerV2 to CheckerV2. Turns -analyzer-check-buffer-overflows into -analyzer-checker=core.experimental.Overflow git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126609 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
58f2e7c3c3860e410fa3d8252862ef10be7cdc70 |
28-Feb-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[analyzer] Turn -analyzer-stats into -analyzer-checker=debug.Stats git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126608 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
6dd4dffe1090e820e9b5b25eee8ad3907a1aa679 |
28-Feb-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[analyzer] Remove '-analyzer-experimental-checks' flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126607 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
116f3640daee424dfcdbe55e80be5a67476be4b0 |
25-Feb-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Intoduce '-analyzer-checker-help' flag which outputs a list of all available static analyzer checkers. This is pretty basic for now, eventually checkers should be grouped according to package, hidden checkers should be indicated etc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126454 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
65d39251ff57b8e33cf6d3a7fcc6aa1c6f8cdc68 |
24-Feb-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[analyzer] Remove '-analyzer-experimental-internal-checks' flag, it doesn't have any checkers associated with it anymore. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126440 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
0761e44550f094633bbe7fd4ae1d79ec456fca69 |
23-Feb-2011 |
Anders Carlsson <andersca@mac.com> |
Add a -fcxx-exceptions flag to clang -cc1. This controls the newly added CXXExceptions flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126300 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
e9b801f7633b11b18d357a71442bd003435784e8 |
22-Feb-2011 |
Anders Carlsson <andersca@mac.com> |
Make clang -cc1 disable Objective-C exceptions by default, and add a -fobjc-exceptions flag to turn them on. Update all tests accordingly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126177 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
2df6647847af283302834dadae5d9dcefa7e0ad4 |
22-Feb-2011 |
Joerg Sonnenberger <joerg@bec.de> |
Bug#8945: Add -cxx-isystem option to specify C++ system directories. It works like -isystem and the search path keeps -isystem and -cxx-isystem in order relative to each other. -cxx-isystem is only used for C++ sources though. Drop the existing -cxx-system-include option for cc1 as it is now redundant. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126167 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
c8da1ecaf58ff41b652dd53331aace948027039b |
20-Feb-2011 |
Oscar Fuentes <ofv@wanadoo.es> |
New function for tablegenning: clang_tablegen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126093 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
da4b7cf09ebfd4e4098b516081fa9dae2f5c99e0 |
20-Feb-2011 |
Anders Carlsson <andersca@mac.com> |
Add a new ObjCExceptions member variable to LangOptions. This controls whether Objective-C exceptions are enabled or not (they are by default). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126061 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
8ac38d7b5d88d12f454a7cda1275bf429813151d |
19-Feb-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Support -Wl, with -Xarch_. This doesn't work naturally because of the special way we model "linker input" arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126023 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
2d67b90a21c9c1093e6598809c2cbc832919cfe6 |
17-Feb-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[analyzer] Use the new registration mechanism for the debugging info "checks". The relative checker package is 'debug': '-dump-live-variables' is replaced by '-analyzer-checker=debug.DumpLiveVars' '-cfg-view' is replaced by '-analyzer-checker=debug.ViewCFG' '-cfg-dump' is replaced by '-analyzer-checker=debug.DumpCFG' git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125780 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
7dd445ec20e704846cfbdb132e56539280d71311 |
17-Feb-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[analyzer] Use the new registration mechanism on the non-path-sensitive-checkers: DeadStoresChecker ObjCMethSigsChecker ObjCUnusedIvarsChecker SizeofPointerChecker ObjCDeallocChecker SecuritySyntaxChecker git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125779 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
9fb9474c5b267400d4abfbff63c8b39f378235d4 |
17-Feb-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[analyzer] -Introduce CheckerV2, a set of templates for convenient declaration & registration of checkers. Currently useful just for checkers working on the AST not the path-sensitive ones. -Enhance CheckerManager to actually collect the checkers and turn it into the entry point for running the checkers. -Use the new mechanism for the LLVMConventionsChecker. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125778 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
91a230a15f2aca8f6a8b7fd492525ec372a98e6b |
17-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
Eliminate the internal command-line option for viewing inheritance in C++ classes, since it's only really worked for the trivial cases anyway due to lame pseudo-parsing of the class name. The viewInheritance() function is still available for use in the debugger, where this is far more useful git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125762 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
c9f2e0f286500c7e747849b3aa9c0e67a4dc90d7 |
15-Feb-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[analyzer] Use the new registration mechanism on the IdempotentOperationChecker. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125611 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
43dee220252ef0b42c5f8a3bb1eca97f84f2565f |
14-Feb-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[analyzer] Overhauling of the checker registration mechanism. -Checkers will be defined in the tablegen file 'Checkers.td'. -Apart from checkers, we can define checker "packages" that will contain a collection of checkers. -Checkers can be enabled with -analyzer-checker=<name> and disabled with -analyzer-disable-checker=<name> e.g: Enable checkers from 'cocoa' and 'corefoundation' packages except the self-initialization checker: -analyzer-checker=cocoa -analyzer-checker=corefoundation -analyzer-disable-checker=cocoa.SelfInit -Introduces CheckerManager and CheckerProvider. CheckerProviders get the set of checker names to enable/disable and register them with the CheckerManager which will be the entry point for all checker-related functionality. Currently only the self-initialization checker takes advantage of the new mechanism. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125503 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
be4c8705e499b55548467eb7adaa23cbc6edfef9 |
10-Feb-2011 |
Roman Divacky <rdivacky@freebsd.org> |
Implement mcount profiling, enabled via -pg. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125282 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
17d3fea677753e6e3e82ffe2cbdeccbf5f2e7497 |
09-Feb-2011 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Frontend: Wire up -mregparm=. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125201 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
d767d81290288c030f3be0be1d3e62b9c8df51dc |
09-Feb-2011 |
Ted Kremenek <kremenek@apple.com> |
static analyzer: Further reduce the analyzer's memory usage when analyzing sqlite3 by 7-10% by recylcing "uninteresting" ExplodedNodes. The optimization involves eagerly pruning ExplodedNodes from the ExplodedGraph that contain practically no difference between the predecessor and successor nodes. For example, if the state is different between a predecessor and a node, the node is left in. Only for the 'environment' component of the state do we not care if the ExplodedNodes are different. This paves the way for future optimizations where we can reclaim the environment objects. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125154 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
09982cec0029bc495591067fa89967b6b4d1fa19 |
08-Feb-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Allow multiple -B prefixes. Patch by Joerg Sonnenberger. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125111 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
398c610b16728b4398214367dd0effd9d2e61340 |
04-Feb-2011 |
Daniel Dunbar <daniel@zuster.org> |
build: Add support for DISABLE_DEFAULT_STRICT_ALIASING, which does what one might expect. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124848 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
322c29fefe7fa33f03273136eb5f8b7f5b4df7c0 |
02-Feb-2011 |
Daniel Dunbar <daniel@zuster.org> |
clang: Add support for a CC_PRINT_HEADERS environment variable, which mirrors CC_PRINT_OPTIONS and can be used to get some out-of-band information on header usage from a build. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124751 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
b34d69b9292534c1c574f168f0ac10aea652adca |
02-Feb-2011 |
Daniel Dunbar <daniel@zuster.org> |
Frontend: Add -header-include-file option, for allowing saving header include information to a file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124750 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
8e50a96b387dca7525caa8a6add31420dd82a2cd |
02-Feb-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add NetBSD target support. Patch by Joerg Sonnenberger. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124736 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
|
6f75550e40a9177db9979fc130ce3ece026b137d |
01-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
Basic support for -mms-bitfields, from Carl Norum! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124661 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
418df343bb50802586d20aae3b83e2eb44c6c828 |
27-Jan-2011 |
Douglas Gregor <dgregor@apple.com> |
Separate the access-control diagnostics from other diagnostics that do not have SFINAE behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124441 91177308-0d34-0410-b5e6-96231b3b80d8
riverDiagnostic.h
|
bd5a94e263137dc3ce7c100485626bae025cf58e |
26-Jan-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[analyzer] Enable the self-init checker under command-line option '-analyzer-check-objc-self-init' which by default is enabled by the driver for '--analyze'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124266 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
5aa74affa5d61d04c4b034b3722ca41aec0cba6e |
25-Jan-2011 |
Nico Weber <nicolasweber@gmx.de> |
Add -add-plugin flag, which runs plugins in addition to codegen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124227 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
3176cca2fe2bb9ab061e8e5fc05b4d59403fcf19 |
23-Jan-2011 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add support for the --noexecstack option. Fixes PR8762. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124078 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.td
|
bc6f0daca4676989116e9c6b8dafeb01ec34252d |
11-Jan-2011 |
Eric Christopher <echristo@apple.com> |
Add back 122079 so we can ignore the argument some more. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123271 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f84109ee6aeffb09366bd70c8593ce1b7818b1ad |
07-Jan-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
Update AST reader/writer to handle new AppleKext. Fix an unexpected hickup caused by exceeding size of generated table (and a misleading comment). Improve on help message for -fapple-kext. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123003 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
b466d01e464b21832c23eeed90112bc5c26c0236 |
07-Jan-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
Add all options needed to support -fapple-kext. wip. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122987 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
112c3307aaa9ae9ee6ff5c2b4f6a53b1ea3c6f19 |
04-Jan-2011 |
Fariborz Jahanian <fjahanian@apple.com> |
Fold -fobjc-nonfragile-abi2 into -fobjc-nonfragile-abi. // rdar://8818375 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122831 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
c32647d111e516593b9ba242cad7b8ff4016c155 |
23-Dec-2010 |
Ted Kremenek <kremenek@apple.com> |
Add -fobjc-default-synthesized-properties flag to allow us to explicitly control whether or not Objective-C properties are default synthesized. Currently this feature only works when using the -fobjc-non-fragile-abi2 flag (so there is no functionality change), but we can now turn off this feature without turning off all the features coupled with -fobjc-non-fragile-abi2. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122519 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
oolChain.h
|
c478a1425c055e517169220ea1c1efd857e65f52 |
23-Dec-2010 |
Ted Kremenek <kremenek@apple.com> |
Add WIP prototype of a new buffer overflow checker based on using raw (symbolic) byte offsets from a base region. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122469 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
df344dfb663f99184e734f5d14b5fc9b2725aec2 |
17-Dec-2010 |
Eric Christopher <echristo@apple.com> |
Going back to the drawing board with these two awful hacks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122096 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
154f251c6f47c68ba7c19ed1d5fb873de9fdece2 |
17-Dec-2010 |
Eric Christopher <echristo@apple.com> |
Nom nom nom, tasty unused option with an argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@122079 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
91252d115bdb6f937192a8dbc86c5abe00101436 |
04-Dec-2010 |
Peter Collingbourne <peter@pcc.me.uk> |
Implement -cl-std= git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120882 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
4400cb8c548a90c472444b57690117563f4be195 |
04-Dec-2010 |
Peter Collingbourne <peter@pcc.me.uk> |
Implement -cl-mad-enable git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120881 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
f0840820b4e28fd0cc04d737382811d7372cb832 |
04-Dec-2010 |
Peter Collingbourne <peter@pcc.me.uk> |
Implement -cl-fast-relaxed-math git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120880 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
5f67e13fcdc3c33e9cd5d027bfbb677b726c6f6a |
04-Dec-2010 |
Peter Collingbourne <peter@pcc.me.uk> |
Implement -cl-unsafe-math-optimizations git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120879 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
5d729a3d8eeba59ed97119998f2135ad6d45e876 |
04-Dec-2010 |
Peter Collingbourne <peter@pcc.me.uk> |
Implement -cl-finite-math-only git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120878 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
0982136cb748f4a842141bf199d133126d6be882 |
04-Dec-2010 |
Peter Collingbourne <peter@pcc.me.uk> |
Implement -cl-single-precision-constant git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120877 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
61e07861dd3a70c31f658bad8c4b911994e4933b |
04-Dec-2010 |
Peter Collingbourne <peter@pcc.me.uk> |
Implement -cl-opt-disable git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120876 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
895fcca55a6d52a71639f2472a6623ab2dd9f628 |
01-Dec-2010 |
Peter Collingbourne <peter@pcc.me.uk> |
Driver, Frontend: add CUDA language support git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120544 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.def
|
03013fa9a0bf1ef4b907f5fec006c8f4000fdd21 |
29-Nov-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Merge System into Support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120297 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
oolChain.h
|
f35142413974e9dfe2c5f202084db4bd1c2073e9 |
24-Nov-2010 |
John McCall <rjmccall@apple.com> |
Add -cc1 -ast-dump-xml, an excessively detailed XML dump of the internals of the ASTs. Only available in assertions builds. No stability guarantee. This is intended solely as a debugging tool. I'm not sure if the goals are sufficiently aligned with the XML printer to allow a common implementation. Currently just falls back on the StmtDumper to display statements, which means it doesn't produce valid XML in those cases. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120088 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
a4c2475961184a4bad6f6f087eeb1038bb784cad |
21-Nov-2010 |
Anders Carlsson <andersca@mac.com> |
Forward the -fno-elide-constructor argument to clang -cc1. Fixes PR8652. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119915 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
1380a147d4578b619c215b23aa79ce17036d3c46 |
18-Nov-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
-Rename -Wargument-larger-than -> -Wlarge-by-value-copy -Improve the diagnostic message -Add some comments Suggestions by Chris. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119594 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
3532fdd1db8ff6f353f2a5b215cebe3e0e2ff3c2 |
18-Nov-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce option -Wargument-larger-than[=N] which warns about function definitions if they take by-value or return by-value any POD that is larger than some threshold (default is 64 bytes). Implements rdar://8548050. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119583 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
fdda17179047ff0b5e28cc777dc89ebc42f083cf |
17-Nov-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Implement -pie. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@119577 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
dc1b76ddfc687c713a55cc9e3e054e9a0de1aa74 |
07-Nov-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add support for -rdynamic. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118384 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
c1da981bba867681004004b2d54ec2fdf3c08913 |
07-Nov-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Use ld directly on linux. Changes from the previous try: *) Try to detect as much as possible from the system itself, not the distro. This should make it easier to port to a new distro and more likely to work on a unknown one. *) The distro enum now doesn't include the arch. Just use the existing host detection support in LLVM. *) Correctly handle --sysroot. A small regression is that now clang will pass bitcode file to the linker. This is necessary for the gold plugin support to work. It might be better to detect this at configure/cmake time, but doing it in c++ first is a lot easier. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118382 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
389db16c63eec6ecfa9b235155252d8da766e94e |
03-Nov-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Implement -working-directory. When -working-directory is passed in command line, file paths are resolved relative to the specified directory. This helps both when using libclang (where we can't require the user to actually change the working directory) and to help reproduce test cases when the reproduction work comes along. --FileSystemOptions is introduced which controls how file system operations are performed (currently it just contains the working directory value if set). --FileSystemOptions are passed around to various interfaces that perform file operations. --Opening & reading the content of files should be done only through FileManager. This is useful in general since file operations will be abstracted in the future for the reproduction mechanism. FileSystemOptions is independent of FileManager so that we can have multiple translation units sharing the same FileManager but with different FileSystemOptions. Addresses rdar://8583824. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118203 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
138e66ffa8008b95121580f5459af45487df9803 |
03-Nov-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Revert while I debug test failures :-( git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118150 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
29a88f441fb9d82cfa898774cf6711e54bcba2ff |
03-Nov-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Switch clang to run ld directly on linux. I tested this on all the linux distros listed by running gcc main.o -o main g++ main.o -o main gcc main.o -o main -static g++ main.o -o main -static gcc f.o -o f.so -shared g++ f.o -o f.so -shared and comparing the ld line with the one created by clang. I also added -m32/m64 in distros that support it. While I tested many distros, there will always be more. If you are hit by this it should be somewhat easy to add your distro. If you are in a hurry, do revert this, but please inform how to detect you distro and the ld command lines produced by the above gcc invocations. Most distros have some patches on gcc :-( git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118149 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
dae4ac4fe56ec60fc93b3e3c9f51e79e682084b9 |
21-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Reorganize predefined macros for all Windows targets. This adds an option to set the _MSC_VER macro without recompiling. This is very useful when testing compatibility with the Windows SDK and c++stdlib headers. -fmsc-version=<version> (defaults to VS2003 (1300)) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116999 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
20249a1af2e462dcafdd6a350f1c7967b264ff25 |
21-Oct-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Fix Whitespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116990 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
25b26ebdebe46bb4576247e0c64d1c11410a8e9d |
19-Oct-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Reject -fasm-blocks except on X86 (where we just ignore it, since passing it is very prevalent in some circles). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116761 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
06205ca78ca2fd4384b237f120ec66614df0d9fc |
16-Oct-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Error on -fno-for-scope, which we have no intention of supporting. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116627 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
2a8fe339fbcd92993a0e9568696ba165c2519fba |
15-Oct-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Again, add '-include-pch' option to the driver, so it can get passed to the cc1 driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116608 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
63d907bc55ccb6abfc57b409cab3cfa7c0d1f38a |
15-Oct-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Revert r116605, a lot more were committed by mistake. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116606 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
721f38c7f866259e1472af775239a83d8f06f6a8 |
15-Oct-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Add '-include-pch' option to the driver, so it can get passed to the cc1 driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116605 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
be570121a6da523020c3b11eb15aba97becb5d2f |
15-Oct-2010 |
Devang Patel <dpatel@apple.com> |
TBAA = Type Based Alias Analysis git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116599 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
4d5625e15bb215c2241c022df8dc7b04438970c6 |
15-Oct-2010 |
Dan Gohman <gohman@apple.com> |
Wire up the -fstrict-aliasing and -fno-strict-aliasing options to CodeGenOption flags. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116530 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
3e78593b1ced32b7e0a97da044213014ee0f6f7c |
14-Oct-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce command line option -error-on-deserialized-decl that is accompanied by a name and emits an error if a declaration with this name is deserialized from PCH. This is for testing, to make sure that we don't deserialize stuff needlessly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116505 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
b972858068d2ea77f72a1e7b1812b196afd6be2e |
14-Oct-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce command line option -dump-deserialized-decls which is used to print the PCH decls that got deserialized, for testing purposes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116503 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
a9f4f620daf073805b89e893afcdc5eb7a9bdc50 |
12-Oct-2010 |
Douglas Gregor <dgregor@apple.com> |
Eliminate the (de-)serialization of code completion results, now that libclang does not support out-of-process code completion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116253 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
d3ab63e0f66429abf2a3e4cde889e420e41e8790 |
12-Oct-2010 |
Douglas Gregor <dgregor@apple.com> |
Eliminate -fdiagnostics-binary and all of the infrastructure for emitting diagnostics in a binary form to be consumed by libclang, since libclang no longer does any of its work out-of-process, making this code dead. Besides, this stuff never worked at 100% anyway. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116250 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
9d520c5ae802fc175c61032b289ddd6968e6ddd2 |
11-Oct-2010 |
Axel Naumann <Axel.Naumann@cern.ch> |
Declare argv parameters as const char* const* instead of to char** to clarify that they are not modified, and to allow for string literals as arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116200 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ptTable.h
|
9a2b9d794bdf349b517ff799170f4409f45d147c |
08-Oct-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Implement -fshort-enums (rdar://8490496). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116020 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
c69e1cf04323f2e786d40e8a5ba84e77ee1c6827 |
30-Sep-2010 |
Devang Patel <dpatel@apple.com> |
Introduce -flimit-debug-info. In this experimental mode try avoiding debug info emission for classes as much as possible. The goal is to reduce size of produced debuginfo without reducing quality of debug info in general. This is a work in progress. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115188 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
9121ba232903ebe61e7bbe14ca294cf0f07dfa96 |
30-Sep-2010 |
Marcin Swiderski <marcin.sfider@gmail.com> |
Added two new command line arguments: -cfg-add-implicit-dtors - sets CFG::BuildOptions::AddImplicitDtors for AnalysisCosumer to true, -cfg-add-initializers - sets CFG::BuildOptions::AddInitializers for AnalysisCosumer to true. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115142 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
cf9ce13774dad86f780d84cd41e6bd64c039324a |
30-Sep-2010 |
Tom Care <tom.care@uqconnect.edu.au> |
Change -analyzer-max-nodes to allow 0 as a parameter. This allows the analyzer to completely analyze a worklist regardless of time taken. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115108 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
e830a36053282aadb9603cb8af14a9f5b9c32968 |
27-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Frontend: Teach clang -cc1as to respond to -v. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114863 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.td
|
e94db4771856659c12e1f269141cbbc4e55b1c47 |
24-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add -fallow-unsupported which disables some of the eager error'ing we do to prevent users from trying unsupported stuff. Useful for testing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114749 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
dea63134a51d463cf32f3eec3c359d9215359d69 |
20-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Objective-C: Retool Objective-C ABI flags to be more usable, and actually document behavior. Will wonders never cease. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114334 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
7433fedce98a58341d0f30c2e12e8d53f3bba575 |
17-Sep-2010 |
Shantonu Sen <ssen@apple.com> |
Driver: implement driver automagic support for -lcc_kext Rewrite linker arguments to use libclang_rt.cc_kext.a instead of gcc-specific libcc_kext.a Resolves Radar 7808495 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114193 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
oolChain.h
|
7f18e67e1b577a50402e8b43508ab2311a5c45b5 |
17-Sep-2010 |
David Chisnall <csdavec@swan.ac.uk> |
Add a -ftrapv-handler= option which allows a handler to invoke instead of simply aborting when a signed operation overflows. This mirrors the (GCC-incompatible) behaviour from clang 1.0 and 1.1 when -ftrapv was specified, but allows the handler to be defined for each compilation unit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114192 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
d829950b2b75d50fca2772a20129323a186993a5 |
17-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Support -dumpmachine. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114155 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
132e35d2f87895d20e7ea146c8c00404b80221a1 |
17-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Fix spelling of AddCXXStdlibLibArgs, which I copy-n-pasto'd. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114147 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
e5a37f48388c7e4cc081f44d13a4910bfa56cd35 |
17-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add magic handling for "reserved library names", starting with -lstdc++. This is the best gross solution for a gross problem. This issue is that historically, GCC has add -L options to its internally library directories. This has allowed users and platforms to end up depending on the layout of GCC's internal library directories. We want to correct this mistake by eliminating that -L, but this means that existing libraries which are in the GCC lib dir won't be found. We are going to handle this by treating those -l names as "reserved", and requiring toolchains to know how to add the right full path to the reserved library. The immediately side effect of this is that users trying to use -L to find their own -lstdc++ will need to start using -nostdlib (which is a good idea anyway). Another side effect is that -stdlib=libc++ -lstdc++ will now do the "right" thing, for curious definitions of right. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114144 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
b993f5d93b994b9b0aac6aebae669621744bbed7 |
17-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add a toolchain hook for whether the system has native LLVM support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114137 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
3f16c959e30b7e7ba8e4b8d597c313fbe457206d |
15-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add a -stdlib= argument which can be used to select the C++ standard library to use. - This is currently useful for testing libc++; you can now use 'clang++ -stdlib=libc++ t.cpp' to compile using it if installed. - In the future could also be used to select other standard library choices if alternatives become available (for example, to use an alternate C library). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113891 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
oolChain.h
|
641b98b7b52e0067beaf3978f2a8721e5d16c111 |
15-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Factor out some code for handling the C++ standard library. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113890 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
52d861ce41ce84d8389495ea78d97bcc962ac5ba |
10-Sep-2010 |
Tom Care <tom.care@uqconnect.edu.au> |
Added AnalyzerStatsChecker, a path sensitive check that reports visitation statistics about analysis. Running clang with the -analyzer-stats flag will emit warnings containing the information. We can then run a postanalysis script to take this data and give useful information about how much the analyzer missed in a project. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113568 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
80c26f44a6f8d859a2a3babb06bd3ca8d86f2623 |
09-Sep-2010 |
Daniel Dunbar <daniel@zuster.org> |
Frontend: Add -cxx-system-include option which can be used to specify an explicit list for the C++ system include directories at the -cc1 level, as an alternative to the horrible AddDefaultCPlusPlusIncludePaths(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113505 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
79e9e9dd533de9609ef141449bf50e705fa68fd0 |
06-Sep-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Make "-ccc-cxx" option work on Linux. Patch by nobled. I also took the opportunity to make the field private since now it is only ready from the outside. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113138 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
400b607546a8dbfcee3b690f3d0a2fee0ea6480b |
03-Sep-2010 |
Dawn Perchik <dawn@burble.org> |
Add support for Borland extensions via option -fborland-extensions (original patch r112791 was reverted due to a bug). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112915 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
d0b4e7c8723c031cd8d743b2ff63943a3d0563ff |
02-Sep-2010 |
Dawn Perchik <dawn@burble.org> |
Reverting rev 112791 - apparently -fborland-extensions is on all the time?! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112797 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
621a2f36af707747d70b8103bda6f65237fce899 |
02-Sep-2010 |
Dawn Perchik <dawn@burble.org> |
Add support for Borland extensions via option -fborland-extensions git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112791 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
944c42feb4f40735f3767bae59a0547a7b803e1e |
28-Aug-2010 |
Nick Lewycky <nicholas@mxc.ca> |
Ignore this flag too, Clang doesn't seem to use random numbers internally. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112342 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f7c16d903f11814e2d6780e2a2e189b7a7afc4ed |
25-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Frontend: Add basic -H support. - I didn't implement the GCC "multiple include guard" detection parts, because it doesn't seem useful or obvious. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111983 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
9db9ad3f084d3c70cff01a10d4fd90901982b37b |
24-Aug-2010 |
Chris Lattner <sabre@nondot.org> |
Implement -iwithsysroot, an apple extension which is a close cousin of -isystem. Instead of implementing -isystem, I accidentally implemented this cousin. Next up is to implement -isystem right. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111966 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
00577ada44c889fbe311d61c51a8da89e65c7c9a |
24-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111856 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
ff58e3610f4e12094def69eb2d6dcb4330378d8f |
21-Aug-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Visual Studio tools used on win32 hosts when targeting win32. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111748 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
|
c9c6b904f3fb4f515f7f041b7c49f5e3b7c53bd3 |
20-Aug-2010 |
Ted Kremenek <kremenek@apple.com> |
Update help text for -cc1 -unoptimized-cfg. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111615 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
4786c15f4977c7cee98fde3ebdee213dba23848b |
19-Aug-2010 |
Douglas Gregor <dgregor@apple.com> |
Add machine-parseable Fix-It output as part of diagnostics, under the flag -fdiagnostics-parseable-fixits, from Eelis van der Weegen! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111557 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
e55fd871b0cf3e4ebc708cf46831908d74eab40a |
16-Aug-2010 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Add two options for playing with modules. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111166 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
8071e4212ae08f8014e0c3ae6d18b7388003a5cc |
15-Aug-2010 |
Douglas Gregor <dgregor@apple.com> |
Extend the code-completion caching infrastructure to include global declarations (in addition to macros). Each kind of declaration maps to a certain set of completion contexts, and the ASTUnit completion logic introduces the completion strings for those declarations if the actual code-completion occurs in one of the contexts where it matters. There are a few new code-completion-context kinds. Without these, certain completions (e.g., after "using namespace") would need to suppress all global completions, which would be unfortunate. Note that we don't get the priorities right for global completions, because we don't have enough type information. We'll need a way to compare types in an ASTContext-agnostic way before this can be implemented. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111093 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
e6674b369070cc9bef0a9e6fcab6aabd9b7924dc |
14-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Increase flags to hold all necessary bits. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111065 91177308-0d34-0410-b5e6-96231b3b80d8
ptTable.h
|
1450f265fcc84a7ca64dd9f3b8d4492c5bd55e23 |
13-Aug-2010 |
Nick Lewycky <nicholas@mxc.ca> |
Add a new cc1 option -fix-what-you-can which when combined with the fix-it mode will apply all fixes even when there were other errors in the file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111020 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
a61e5a2679d8e40de8d98fb96d051df8094f6e99 |
13-Aug-2010 |
John McCall <rjmccall@apple.com> |
Fix the help text on -Wwrite-strings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111011 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
caeed1d3a5b366ae8fda5dda9bddc7bbb859c41f |
13-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/OptParser: Add a NoForward flag to prevent forwarding certain options to GCC. - Mark -Xclang and -mlinker-version= with it for now, although I am sure there are more. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111005 91177308-0d34-0410-b5e6-96231b3b80d8
ptParser.td
ptTable.h
ption.h
ptions.td
|
279b5eb6910d64a293e9c0e2887a05c65d8737d7 |
13-Aug-2010 |
John McCall <rjmccall@apple.com> |
Just disable the hidden-visibility optimization for now by hiding it behind a -cc1 option. The Darwin linker complains about mixed visibility when linking gcc-built objects with clang-built objects, and the optimization isn't really that valuable. Platforms with less ornery linkers can feel free to enable this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110979 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
a77a723489b0cff63bf90f23416e10b8b6fc1f55 |
12-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Use the compile time linker version as the default for -mlinker-version, if detected. - This is a hack, we really want the linker version at execution time, but we don't have any infrastructure for getting that. Yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110886 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
c176bc6be6f1407e7c6bd062f05a8636ea9a08e3 |
12-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add -mlinker-version=, which forwards to -target-linker-version. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110872 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
39065a5494613952b4810d1d6b28348cef155e12 |
12-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Frontend: Add -target-linker-version, for specifying the version string of the linker in use. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110871 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
ba30bbe4e36a30a274da809a11a42f9cdc168e92 |
10-Aug-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Run the assembler instead of gcc on Linux. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110635 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
f84d409903dd4107c8cef5a08fcfce6e5c21d4de |
08-Aug-2010 |
Eric Christopher <echristo@apple.com> |
Make -funroll-loops turn on loop unrolling in the optimizer instead of just ignoring it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110525 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
1fafd1d96419f587763d1b81332d8f476aeace2e |
07-Aug-2010 |
Tom Care <tcare@apple.com> |
Removed IdempotentOperationChecker from default analysis and returned back to a flag (-analyzer-check-idempotent-operations) - Added IdempotentOperationChecker to experimental analyses for testing purposes - Updated test cases to explictly call the checker git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110482 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
7377ed985bb2a529d1abb4ebea88586e5d195d1b |
05-Aug-2010 |
Bruno Cardoso Lopes <bruno.cardoso@gmail.com> |
Add -mavx and -mno-avx command line support git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110265 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
5fcefd965990899b9093656a5242be5a273d7135 |
04-Aug-2010 |
Eric Christopher <echristo@apple.com> |
Accept and ignore (for now) -funroll-loops. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110190 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
9b823e8e1ccb8a2cb49923bad22a80ca96f41f92 |
03-Aug-2010 |
Ted Kremenek <kremenek@apple.com> |
Add -cc1 option '-unoptimized-cfg' to toggle using a CFG (for static analysis) that doesn't prune CFG edges. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110087 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
4180011fb8cef06adec04d30486b1bf3b99aa8b8 |
02-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Move HostInfo::lookupTypeForExtension to ToolChain::LookupTypeForExtension. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110024 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
oolChain.h
|
74edcea3db1f85ba73ad0fede2ed5e2f096cac4b |
02-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Give Build{Universal,}Actions access to the default host tool chain. I avoided this originally to enforce that the driver actions aren't toolchain dependent, but it isn't worth the cumbersone additional hostinfo split. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110023 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
2fe238ed293bd4bc27af9beb9fa151fad2146fa8 |
02-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add Compilation::addCommand and switch tools to using it, now that we don't have to deal with nested jobs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110015 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
ool.h
|
d0b77e1a47580dd9fd621433e9ac41258837a17a |
02-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Eliminate PipedJob, which is now unused. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110014 91177308-0d34-0410-b5e6-96231b3b80d8
ob.h
|
8c631e3b6fb4d838809852e85ba4145be45a221f |
02-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Eliminate now unnecessary tool hooks for whether they accept piped input/output. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110012 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ool.h
|
e4341253cc5d9c05c256b90eb3f816d256264ceb |
02-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Eliminate now unused argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@110010 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
edf29b00bc1641034b38be92146e15f0625a45d2 |
02-Aug-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Keep track of a separate "install dir", which is the path where clang was invoked from (which may not be where the executable itself is). - This allows having e.g., /Developer/usr/bin/clang be a symlink to some other location, while still making sure the Driver finds 'as', 'ld', etc. relative to itself. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109989 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
fae3b2f4743dad616623c4df2fdb0f5128bd36d9 |
27-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
Implement -fno-validate-pch at the -cc1 level, which suppresses most of the usual consistency checks used to determine when a precompiled header is incompatible with the translation unit it's being loaded into. Enable this option when loading a precompiled preamble, because the preamble loader will be performing all of this checking itself. Enable the preamble-based test now that it's working. This option is also useful for debugging Clang's PCH (<rdar://problem/7532213>). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109475 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
f4f6c9db68465b886ec2e596feaa6ecc782395a4 |
26-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce basic support for loading a precompiled preamble while reparsing an ASTUnit. When saving a preamble, create a buffer larger than the actual file we're working with but fill everything from the end of the preamble to the end of the file with spaces (so the lexer will quickly skip them). When we load the file, create a buffer of the same size, filling it with the file and then spaces. Then, instruct the lexer to start lexing after the preamble, therefore continuing the parse from the spot where the preamble left off. It's now possible to perform a simple preamble build + parse (+ reparse) with ASTUnit. However, one has to disable a bunch of checking in the PCH reader to do so. That part isn't committed; it will likely be handled with some other kind of flag (e.g., -fno-validate-pch). As part of this, fix some issues with null termination of the memory buffers created for the preamble; we were trying to explicitly NULL-terminate them, even though they were also getting implicitly NULL terminated, leading to excess warnings about NULL characters in source files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109445 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
3d398aa5c2be8919bbc0144bce611c48119bc861 |
26-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
When LIBCLANG_CODE_COMPLETION_LOGGING is set in the environment, log code-completion command lines to stderr git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109395 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
87c300738174924453648c3b2d6f366c8284fac4 |
26-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
Eliminate the "minimal" and printing parser actions, which only ever worked for C anyway. Also kills the -cc1 options -parse-noop and -parse-print-callbacks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109392 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
f033f1da4a34f8df6e95e9929dc04ff54bb8fb01 |
20-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce a new lexer function to compute the "preamble" of a file, which is the part of the file that contains all of the initial comments, includes, and preprocessor directives that occur before any of the actual code. Added a new -print-preamble cc1 action that is only used for testing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108913 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
0bbad519aa068206f1e158d5073f72a39fbe83c5 |
19-Jul-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Change the driver to take the path to the main executable, instead of taking it in pieces. - Fixes a problem where the Clang executable path was not initialized properly on Win32, because sys::Path::getBasename() doesn't do what I always think it does. Imagine that, a sys::Path interface that is confusing! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108667 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
a001c1ce5fcb669624a5b8e50d0a629d673da901 |
18-Jul-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Fix a possible use after free. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108659 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
df4ca423ec7d9b62842e112d1b824faa08b64810 |
16-Jul-2010 |
Tom Care <tcare@apple.com> |
Improved false positive rate for the idempotent operations checker and moved it into the default path-sensitive analysis options. - Added checks for static local variables, self assigned parameters, and truncating/extending self assignments - Removed command line option (now default with --analyze) - Updated test cases to pass with idempotent operation warnings git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108550 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
d55519bf1df142246537640b0a7011db81db2b94 |
15-Jul-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Allow -m{ios,macosx}-version-min= to be passed with -Xarch. - This should be safe, because the driver itself shouldn't need to make decisions that depend on the deployment target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108425 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
40228c109e5516c0d3c65832271ee2cca931f102 |
15-Jul-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Support 'clang -x ir ...'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108391 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.def
|
b9a822639c570b1853c75c235e9d6bad485f9e01 |
14-Jul-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: When re'execing clang, use path to the main executable instead of looking up Clang in the normal search paths (which may end up finding the wrong clang). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108346 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
4a7e88978cf646ad10d654020cb00b3877069210 |
14-Jul-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Remove some unused arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108345 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
47e879dfa735f81472a51b1bd69cc4eb9159db39 |
14-Jul-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Pass -pie/-no_pie to the linker when -fpie/-fno-pie and friends are explicitly given. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108297 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ptions.td
|
a0068fc64351db9c47916566e3b85ab733cd8d6d |
09-Jul-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce -f{no-}spell-checking options to enable/disable spell-checking. By default, spell-checking is enabled for Clang (obviously) but disabled in CIndex for performance reasons. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107992 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
d6ac4524cd441808f152f7e10900a8315ea31c08 |
09-Jul-2010 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Add a frontend option -chained-pch and don't pass an active PCH reader to the PCH writer if it is not set, preventing creation of chained PCH files. Since the reader is so far unused, effectively no functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107936 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
38e317d6dce161b249508686cc67eb7176958762 |
07-Jul-2010 |
Chris Lattner <sabre@nondot.org> |
add driver support for minix, patch by Kees van Reeuwijk from PR7583 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107788 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
|
db2fa8a7eb67b1e8f32a590b8e000e1259cff91a |
06-Jul-2010 |
Tom Care <tcare@apple.com> |
Added a path-sensitive idempotent operation checker (-analyzer-idempotent-operation). Finds idempotent and/or tautological operations in a path sensitive context, flagging operations that have no effect or a predictable effect. Example: { int a = 1; int b = 5; int c = b / a; // a is 1 on all paths } - New IdempotentOperationChecker class - Moved recursive Stmt functions in r107675 to IdempotentOperationChecker - Minor refactoring of SVal to allow checking for any integer - Added command line option for check - Added basic test cases git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107706 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
63cbbeecba87b00913c8dfca170f62ec24473365 |
01-Jul-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: .dSYM suffix should be appended, not replace the existing suffix. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107369 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.def
|
1ad6648cce57bd187f1853f58fef26cd9bf4934f |
01-Jul-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/IRgen: Add support for -momit-leaf-frame-pointer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107367 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
a4d71455f0d418e16cc0c5c5aa55a3bad3494aee |
26-Jun-2010 |
Chris Lattner <sabre@nondot.org> |
Implement support for -fwrapv, rdar://7221421 As part of this, pull together trapv handling into the same enum. This also add support for NSW multiplies. This also makes PCH disagreement on overflow behavior silent, since it really doesn't matter except for warnings and codegen (no macros get defined etc). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106956 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
e4eae6a5768357edbed80034cbc4670dde313b4d |
23-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Support -mios-version-min= as an alias for -miphoneos-version-min=. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106587 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
7255a2d997b15beae82e627052fdb1b2474495c2 |
22-Jun-2010 |
Chris Lattner <sabre@nondot.org> |
implement support for -finstrument-functions, patch by Nelson Elhage! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106507 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
3177aae51a21f61ab483c52f97124bdb707da7f1 |
16-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Frontend: Allow passing -cc1 level arguments to plugins. Patch by Troy Straszheim! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106113 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
7ccecb72cb8e0a77139526bd090cf8c68ba178cd |
16-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Ignore -ffast-math and -f[no-]finite-math-only. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106112 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
7cf84d66965a7706004d8590b5af5fe54b85f525 |
15-Jun-2010 |
Douglas Gregor <dgregor@apple.com> |
Implement -fvisibility-inlines-hidden. <rdar://problem/7819834> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106003 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
f78925f633e949f06521d9ffd937019e59f35efc |
14-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Dissect -Wl, and -Xlinker arguments to remove --no-demangle, which was a collect2 option that is passed by some projects (notably WebKit). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105964 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
ptions.td
|
0e10031ba5d0f9b3e5bc5570f39382d288779ab8 |
14-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Eliminate uses of Arg::getIndex. Also, fix a memory leak. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105963 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
9d0863b22faef1678eb191bbab7268809be60a96 |
14-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add DerivedArgList::AddFOOArg helper functions, and switch to using them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105957 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
be21cd0f07726045367861d3882d18ef30f6a30c |
12-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Switch Compilation to return the translated arguments by default. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105844 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
|
279c1dbebf37cd128f3c73c70741a6b8c35ad025 |
12-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add an explicit argument translation phase to the driver itself. We are going to need this to handle things like -Xassembler, -Xpreprocessor, and -Xlinker which we might have to introspect. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105842 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ompilation.h
river.h
oolChain.h
|
3612bc80fabcdd337f6d1df06e69b38c2c5f5a32 |
12-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Get rid of the proxy support in DerivedArgList. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105841 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
785e7963343c91c16e6d7c8f301eee145d06da5b |
12-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Change OptTable::ParseArg to take any ArgList. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105839 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ptTable.h
ption.h
|
7e4953e5c60409007545288f14b430bd23d68570 |
12-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Fix arg_iterator typing to reflect that it is really an iterator over Arg*s. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105838 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
5edbdcc62098e305cd55654814dcf783a3f3c477 |
11-Jun-2010 |
Jeffrey Yasskin <jyasskin@google.com> |
Add an option -fshow-overloads=best|all to limit the number of overload candidates printed. We default to 'all'. At the moment, 'best' prints only the first 4 overloads, but we'll improve that over time. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105815 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
98b7c5c496dfccb39287b8f7d8f1444594936d10 |
11-Jun-2010 |
Charles Davis <cdavis@mines.edu> |
Add an option to specify the target C++ ABI to the frontend. Use it to select either the default Itanium ABI or the new, experimental Microsoft ABI. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105804 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
ed5d5eea46a6fe7ed22ed97f00a60c16d1f7e7a5 |
10-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Also mark -F as RenderJoined, the linker doesn't like "-F FOO" either. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105789 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
482f1c8c4dd6e4a85ecc6f791ad377c58f8632bf |
10-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: -L should be marked as RenderJoined, the linker doesn't like "-L FOO". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105765 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
8a9b18c04ccfb2abcec831f41c6e05f399c48406 |
10-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Eliminate flags on aliases, they are unnecessary (and unused). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105764 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
3856ab3502676efabceb91fc5ca978810a35aeca |
10-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Change Option parsing to always create arguments referring to unaliased options. - This matches the intent of the .td files, and will simplify alias handling. - PR7321. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105763 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
532c1ec307b8689e95896a11ce5ae4661fa9e5d3 |
10-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Eliminate Arg subclasses, which are now unnecessary. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105762 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
|
e375c4a02ac6e18b166a067b8226e15a1ab009e7 |
10-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Keep the rendering style in the option, instead of as part of the Arg. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105761 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
ption.h
|
4465a776a56de81211ae4672e5782c6bef075135 |
10-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Change Arg to just hold the values directly, instead of implicitly deriving them from the Arg type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105760 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
|
e5af3b3eef8dd3b2b9516f89825d0f0b4d09c0cf |
09-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Revert "Driver: Change Option parsing to always create arguments referring to unaliased", this isn't quite right yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105747 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
22685f40dbb458c0ef18f5fec35f4f7cdb0886c9 |
09-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Change Option parsing to always create arguments referring to unaliased options. - This matches the intent of the .td files, and will simplify alias handling. - PR7321. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105744 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
312a8b726e24078d3bd3b2328f9f895d1407cdb7 |
09-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add an explicit offset to JoinedArg and JoinedAndSeparateArg, so that they can be independent of the exact option that created them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105739 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
rgList.h
|
afed099bd2e759efd4bb63fdc525d3445f94cc13 |
08-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Makefile: Switch Clang Makefiles to always include the top-level Clang Makefile. - This eliminates most dependencies on how Clang is installed relative to LLVM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105637 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
0ea22fdfda0558393950cef5db50d050e3eb1e60 |
08-Jun-2010 |
Jeffrey Yasskin <jyasskin@google.com> |
Implement -fcaret-diagnostics to undo -fno-caret-diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105597 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
6c6424bc0d3b5f080a97b5f6ef4a8d70c38e38f5 |
08-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Support invoking Clang on .ll or .bc inputs. - We actually pretend that we have two separate types for LLVM assembly/bitcode because we need to use the standard suffixes with LTO ('clang -O4 -c t.c' should generate 't.o'). It is now possible to do something like: $ clang -emit-llvm -S t.c -o t.ll ... assorted other compile flags ... $ clang -c t.ll -o t.o ... assorted other compile flags ... and expect that the output will be almost* identical to: $ clang -c t.c -o t.o ... assorted other compile flags ... because all the target settings (default CPU, target features, etc.) will all be initialized properly by the driver/frontend. *: This isn't perfect yet, because in practice we will end up running the optimization passes twice. It's possible to get something equivalent out with a well placed -mllvm -disable-llvm-optzns, but I'm still thinking about the cleanest way to solve this problem more generally. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105584 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.def
ypes.h
|
be1cc3eec682ca73361edb4109a7969452d3dbeb |
04-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Model dsymutil properly, as a separate action/tool kind which is added as the last output step, instead of just hacking it into the link step. - Among other things, this fixes dSYM generation when using multiple -arch options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105475 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.def
|
6e0f25483b1a801cd1155ea89c2b725feab16332 |
04-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add an explicit dsymutil action. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105474 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
|
9929800b8dfced61e9c97dc8d6e71e144ebf8acc |
27-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add support for -m[no-]relax-all, and make it the default at -O0. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104815 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
4ecc9b73b3716775ed4e09091e300796a9a72378 |
27-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add clang -cc1 -mrelax-all option, which sets relaxes all instructions when using -integrated-as. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104807 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
d8e8a58ee35ab334ab9d0c2154dca029c1822e8a |
25-May-2010 |
Douglas Gregor <dgregor@apple.com> |
Only enable code patterns (e.g., try { statements } catch (...) { statements }) in the code-completion results if explicitly requested. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104637 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
32148cef25570a4fbe3ad0ec497ce3ae2cf1b774 |
25-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Frontend: Add -emit-codegen-only, for running irgen + codegen but not the .s printer or .o writer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104623 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
c304ba341a7daa88da42faf8f86310b764dd7b6a |
22-May-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Daniel re-educated me about what Alias does and does not do. Turn that off for '-fasm' and explicitly map from that flag to -fgnu-keywords in the driver. Turn off the driver in the lexer test for this madness and add a test to the driver that the translation actually works. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104428 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
3038204fd8f6ff22082dd18e4b12ed252b75a5e4 |
22-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add Tool::ShortName, intended to be a human readable name for the tool. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104416 91177308-0d34-0410-b5e6-96231b3b80d8
ool.h
|
c673af7fe67e5db4d10dd414237df247d35dd9d9 |
20-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
clang -cc1as: Add -help, -version, and -mllvm support. Also, fix output defaulting to match llvm-mc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104246 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.td
|
41b5b17445ab3bdf957ebd4be6c8670f09a212a8 |
20-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/MC: Add 'clang -cc1as' integrated assembler tool, currently accepts approximately the same interface as 'llvm-mc'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104239 91177308-0d34-0410-b5e6-96231b3b80d8
C1AsOptions.h
C1AsOptions.td
MakeLists.txt
akefile
|
03e8ab2947a848fb0ce723dcebb1c19697614307 |
20-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Move some argument lookup utilities into driver::ArgList. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104237 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
6362b893731ccf4480a96527db9e55e04b801503 |
18-May-2010 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Add option '-analyzer-max-loop', which specifies the maximum number of times the analyzer will go through a loop. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104007 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
1b71848c5238747ede9650b7907172f8a7e088a5 |
15-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Make -fverbose-asm the default for platforms where the integrated assembler defaults to on. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103825 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f78cc4360eb4284091d0d38f3055084360f8c753 |
07-May-2010 |
Douglas Gregor <dgregor@apple.com> |
Add a stub frontend action for BoostCon, for next week's workshop. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103258 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
9cf933a67e54bea5475c5027fee2c1cf7365ee05 |
06-May-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Handle -ffunction-sections and -fdata-sections in the driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103197 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
7b99d12b4ca67fccdf5090761ba257732e954e75 |
06-May-2010 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Make -analyzer-inline-call not a separate analysis. Instead it's a boolean flag now, and can be used with other analyses. Only turned it on for C++ methods for now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103160 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
c3d26cc4eea5187ce13ed180b479ff8ef41015a7 |
05-May-2010 |
Chris Lattner <sabre@nondot.org> |
add a new --print-diagnostic-categories option, which causes the driver to print out all of the category numbers with their description. This is useful for clients that want to map the numbers produced by --fdiagnostics-show-category=id to their human readable string form. The output is simple but utilitarian: $ clang --print-diagnostic-categories 1,Format String 2,Something Else This implements rdar://7928193 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103080 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
6fbe8398ba1680ffc5daa7395850ff8765b7905b |
04-May-2010 |
Chris Lattner <sabre@nondot.org> |
add a new -fdiagnostics-show-category=none/id/name option, giving control over choice of: t.c:3:11: warning: conversion specifies type 'char *' but the argument has type 'int' [-Wformat] t.c:3:11: warning: conversion specifies type 'char *' but the argument has type 'int' [-Wformat,1] t.c:3:11: warning: conversion specifies type 'char *' but the argument has type 'int' [-Wformat,Format String] dox to come. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103056 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
27b0f510d1d4f9ed5668eec1195f04b4a74a4426 |
04-May-2010 |
Chris Lattner <sabre@nondot.org> |
add the ability to associate 'category' names with diagnostics and diagnostic groups. This allows the compiler to group diagnostics together (e.g. "Logic Warning", "Format String Warning", etc) like the static analyzer does. This is not exposed through anything in the compiler yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103051 91177308-0d34-0410-b5e6-96231b3b80d8
riverDiagnostic.h
|
6c1cb9916e9988dcdd65b9266dbe24afd173427a |
04-May-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce a limit on the depth of the macro instantiation backtrace printed in a diagnostic, similar to the limit we already have on the depth of the template instantiation backtrace. The macro instantiation backtrace is limited to 10 "instantiated from:" diagnostics; when it's longer than that, we'll show the first half, then say how many were suppressed, then show the second half. The limit can be changed with -fmacro-instantiation-limit=N, and turned off with N=0. This eliminates a lot of note spew with libraries making use of the Boost.Preprocess library. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103014 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
5e2a8ac6599f0c68b14afb2f328ac98b264f770a |
29-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add support for -fobjc-abi-version=. - <rdar://problem/7919678> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102559 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f35f14d474632142280ec1526d16e87706ce6625 |
27-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Add Driver support for -fno-constant-cfstrings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102431 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f643b9b338b797a824447207d7eab5f1187f4f34 |
24-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
NeXT: Clean up dispatch method policy selection. - Replace -cc1 level -fobjc-legacy-dispatch with -fobjc-dispatch-method={legacy,non-legacy,mixed}. - Lift "mixed" vs "non-mixed" policy choice up to driver level, instead of being buried in CGObjCMac.cpp. - No intended functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102255 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
oolChain.h
|
ba5f6eced29937e4e4851a2c0980744768413d66 |
24-Apr-2010 |
Nick Lewycky <nicholas@mxc.ca> |
Teach clang -fixit to modify files in-place, or -fixit=suffix to create new files with the additional suffix in the middle. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102230 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
33e982bf782d851bfe5767acb1336fcf3419ac6b |
22-Apr-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Support for -fno-constant-cfstrings option - wip. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102112 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
575cf3791216c33770ba950430493cdd43099f8f |
20-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce a limit on the depth of the template instantiation backtrace we will print with each error that occurs during template instantiation. When the backtrace is longer than that, we will print N/2 of the innermost backtrace entries and N/2 of the outermost backtrace entries, then skip the middle entries with a note such as: note: suppressed 2 template instantiation contexts; use -ftemplate-backtrace-limit=N to change the number of template instantiation entries shown This should eliminate some excessively long backtraces that aren't providing any value. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101882 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
eb5d7b752651283de5abfcc2f91df7227582a08d |
17-Apr-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Add support for '-fgnu-keywords' and '-fasm' to Clang's driver. They are not implemented precisely the same as GCC, but the distinction GCC makes isn't useful to represent. This allows parsing code which uses GCC-specific keywords ('asm', etc.) without parsing in a fully GNU mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101667 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
fb937b8c5f1c5dc9cfd4223b5cae230cc42b0287 |
15-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
clang -cc1: Add a -fno-bitfield-type-align option, for my own testing purposes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101370 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
3f87fb08dd502309960646db01099fb4c1be9a7c |
15-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Frontend: Add support for -mllvm, which forwards options to the LLVM option parser. - Note that this is a behavior change, previously -mllvm at the driver level forwarded to clang -cc1. The driver does a little magic to make sure that '-mllvm -disable-llvm-optzns' works correctly, but other users will need to be updated to use -Xclang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101354 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
c09289d104b8e01ecd998e3f08b2b0561049e1dc |
13-Apr-2010 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Add a cc1 option to specify the max number of nodes the analyzer can explore. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101120 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
bbea7168326d810eff18dfb8bc43c7790fd55010 |
13-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
add frontend support for -fdata-sections and -ffunction-sections, patch by Sylvere Teissier! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101108 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
46116ce06ae28e3fc3a34c513f2f63ac02d9a194 |
10-Apr-2010 |
Anders Carlsson <andersca@mac.com> |
Rename -dump-record-layouts to -fdump-record-layouts now that the option behaves like aa flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100943 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
43a9b3263cb0bcb050cc75c15b3e6a8951e6b97a |
10-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Ignore -fobjc-gc and -fobjc-gc-only for platforms which don't support them. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100930 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
c53e3658e667fed25d428d58204f295209b81d45 |
09-Apr-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Fix typo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100887 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
380509aa107c550d0e77ee2db4069e127709427c |
09-Apr-2010 |
John McCall <rjmccall@apple.com> |
Argh, I modified the .inc file locally, not the .td. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100881 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
b69eca5d2196c06870d3eeb62d689feebaaa8a4d |
08-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Fronted: Kill overly specialized RecordLayoutDumper, just make -dump-record-layouts a bit that Sema honors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100747 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
0f0c963f9b7ac6f0176c34d405d48fcb005dfab6 |
07-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
add a new driver-level -ferror-limit=412 option, which causes clang to stop emitting diagnostics after it has produced that many errors. Give this a default value of 20 which produces plenty of errors for people to fix before recompiling but not so many that their entire console scrolls away when the compiler gets confused. The experience looks like this: $ clang foo.c <tons of crap> foo.c:102:3: error: unknown type name 'somethingbad' somethingbad x; ^ fatal error: too many errors emitted, stopping now 36 warnings and 20 errors generated. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100689 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
c100214fdc41a7ea215f75d433eb1cb829fd4330 |
07-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
add clang -cc1 level support for "-ferror-limit 42" git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100687 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
60a53f24b160724de0e8dd0e142009981540fd26 |
06-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add a Tool::hasGoodDiagnostics hook, and use it to simplify logic for deciding when we need to emit an extra "command failed" diagnostic. - This also fixes the case where we were emitting that extra diagnostics, even when using clang w/ the integrated assembler, which has good diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100529 91177308-0d34-0410-b5e6-96231b3b80d8
ool.h
|
eea12d17ec3527f4f9474571fd3011f3d825c45a |
03-Apr-2010 |
Eric Christopher <echristo@apple.com> |
Add option and macro definition for AES instructions. Now produces real assembly for testcases. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100253 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
5d93ed3c7a2dae0a8f422747e269963b3ef11d95 |
01-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add support for a CLANGXX_IS_PRODUCTION build variable, which enable Clang++ support, even in "Production" mode (for testing purposes). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100119 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
3edbeb78fe5ea7fffea7a94575478cde19e830e0 |
29-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
add support for -MQ flag to quote targets in dependency file, PR6661, patch by Ori Avtalion! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99821 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
67e170623f51457a8edd045be95db43342424f2e |
26-Mar-2010 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
No need to specify ${CMAKE_CURRENT_BINARY_DIR} git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99622 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
4c2bcad7b843c10fd4a2ffd43da40bfefb4dc8ba |
24-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Implement support for -nostdc++. Fixes PR6446. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99417 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
48ad6094679ca2bf4f3593068e02e7a208c1a73c |
22-Mar-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Add very limited support for GCC's '-B' flag. This allows us to support unusual toolchain configurations and is a small step toward FreeBSD support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99159 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ptions.td
|
4c00fcdf98d3d7c4cb47b64f8b770f8f4bff1357 |
20-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Support CC_PRINT_OPTIONS, used for logging the compile commands (in -v style) to a file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99054 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
efb0fa9e11f75af51744a6159530ef7cc8efa24a |
20-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
C++: Add support for -fno-use-cxa-atexit. - So much typing, so little gain... Also, rename the __cxx_global_initialization function just to match llvm-gcc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99039 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
365b0bd38964c57f7e9fcace1eaf9877fb3b0485 |
20-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Force joining of "-l" "foo", the linker doesn't eat that format. <rdar://problem/7641151> clang must eat spaces after -l git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99023 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
2758595023c5c7c0495f19260089f975022c50dc |
19-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
clang -cc1: Kill off -empty-input only, and replace with -init-only which is an actual action. - This is easier to use, and more reliable for timing the thing this was actually meant to be useful for. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98978 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
94dc8f640ebea52241412512ed48601626edbc58 |
19-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Optionally store a PreprocessingRecord in the preprocessor itself, and tie its creation to a CC1 flag -detailed-preprocessing-record. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98963 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
3ddd6e026a173e9519e84e27f8d6aed5473b8b4e |
17-Mar-2010 |
John McCall <rjmccall@apple.com> |
Make -faccess-control and -fno-access-control driver options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98703 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
8c6fa84b2e4a30317b7b214a7657cb593d67773b |
16-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Fix forwarding of -fno-lax-vector-conversions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98639 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
4b7a834e0fecddd9eaf1f4567867c718e4eebf50 |
15-Mar-2010 |
John McCall <rjmccall@apple.com> |
Add support for -Wwrite-strings. Patch by Mike M! Fixes PR 4804. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98541 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
32c1a2ae8b31f32e478c8e504ed81db8c8d25713 |
11-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Free Action objects. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98263 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
|
fd48cb31d409cb1f8e1f119426965e498652e2d1 |
11-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Free synthesized derived arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98262 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
9d44023453094832ada2770941e9e4c96ce0e75e |
11-Mar-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Free jobs in JobList and PipedJob instances. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98261 91177308-0d34-0410-b5e6-96231b3b80d8
ob.h
|
3a47c4e0a3e8d13ee4fb06cc3a98f9cfa9982400 |
04-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
add TCE target support, patch by Pekka J! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97746 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
|
d39ebe2d2a24a331b89465191dce061fd9c6b5e4 |
04-Mar-2010 |
Eric Christopher <echristo@apple.com> |
Add in -msse4.1 and -msse4.2 options and continuing a rather hacky solution for translating. Expanded on comment explaining the hack a bit. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97714 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
3363b35e518c28b504d4a600dc8cb168324b17d5 |
28-Feb-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Pass '-no-canonical-prefixes' on down to GCC. It's not specific to the Clang driver and was in fact based on a feature in GCC. =] git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97424 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
43302d4144b5291961aa160d2fe191c09a9d8ad1 |
25-Feb-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Allow driver title (for --help) to be overridden by clients. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97106 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
2a7eb28397148079cbc8e54e8a3871ef01c4f4bc |
23-Feb-2010 |
Blaine Garst <blaine@apple.com> |
Unconditionally support block introspection data in a new field at the end of the block descriptor field. This field is the ObjC style @encode signature of the implementation function, and was to this point conditionally provided in the block literal data structure. That provisional support is removed. Additionally, eliminate unused enumerations for the block literal flags field. The first shipping ABI unconditionally set (1<<29) but this bit is unused by the runtime, so the second ABI will unconditionally have (1<<30) set so that the runtime can in fact distinguish whether the additional data is present or not. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96989 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
d46f98573ba104eda102dd3224b2dca69f1c6336 |
19-Feb-2010 |
John McCall <rjmccall@apple.com> |
Re-introduce the ctor/dtor alias optimization, this time hidden behind a command-line option which defaults off. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96649 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
51679c5e4828b8a64953c4f3db162ca963bf7b03 |
17-Feb-2010 |
Daniel Dunbar <daniel@zuster.org> |
PR5803: clang++: Treat untyped 'C' inputs as C++. - Patch by Andrzej K. Haczewski, with a tweak by me to emit a 'deprecated' diagnostic when we do this. We'll see what zee users say. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96511 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.h
|
6dd66ed959b7f60749dd0040507b3f304183a1b6 |
14-Feb-2010 |
Ted Kremenek <kremenek@apple.com> |
Add new static analyzer for checking LLVM coding conventions: -analyzer-check-llvm-conventions Currently these checks are intended to be largely syntactical, but may get more sophisticated over time. As an initial foray into this brave new world, emit a static analyzer warning when binding a temporary 'std::string' to an 'llvm::StringRef' where the lifetime of the 'std::string' does not outlive the 'llvm::StringRef'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96147 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
824e19ed926d7aa1296a007d0607ac4437e3c4a9 |
13-Feb-2010 |
John McCall <rjmccall@apple.com> |
Add an option to disable the LLVM verifier pass (which is still always disabled in NDEBUG builds). The option applies only to -cc1 invocations and is: -disable_llvm_verifier git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96046 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
8aa79947cbf8f0f3ac82cdd36a823ac1bb53cab4 |
11-Feb-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Remove noisy semicolon. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95872 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
824d7ea07a4e9208925daa6ae9289fb2b39bce9f |
11-Feb-2010 |
Anders Carlsson <andersca@mac.com> |
Check in the beginnings of my new vtable layout builder idea. Right now, it's off by default but can be tested by passing -fdump-vtable-layouts to clang -cc1. This option will cause all vtables that will normally be emitted as part of codegen to also be dumped using the new layout code. I've also added a very simple new vtable layout test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95865 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
64952508c2b0c8bffb45c8b410f0af3d2457f59b |
11-Feb-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add -rewrite-objc, which is an interface to clang -cc1 -rewrite-objc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95849 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
ypes.def
|
b2987d159a88ab0ee2e40c884eb4d77b42ab89b6 |
10-Feb-2010 |
Daniel Dunbar <daniel@zuster.org> |
Switch to using -fsjlj-exceptions instead of hard-coding it. Notably, this fixes calls to the UnwindResumeOrRethrow function for C++/Obj-C exception handling, for Darwin ARM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95787 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
73482884560be041d86eccbd7dd5a6918677393b |
10-Feb-2010 |
Daniel Dunbar <daniel@zuster.org> |
clang -cc1: Add -fsjlj-exceptions, which requires far too much button pushing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95785 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
412e798941ca64e2e6b084323915fa9aa5f6bdf3 |
09-Feb-2010 |
Fariborz Jahanian <fjahanian@apple.com> |
Implement synthesizing properties by default. This is a non-fragile-abi feature only. Since it breaks existing code, it is currently placed under -fobjc-nonfragile-abi2 option for test purposes only until further notice. WIP. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95685 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
9bed8798964d9f07599c2c9199701f86fbc70e20 |
09-Feb-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce a testbed for merging multiple ASTs into a single AST context with the AST importer. WIP, still useless but at least it has a test. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95683 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
a508b7de6c5246ab04ed69d0ab4e9977ec1fb4d4 |
07-Feb-2010 |
Anders Carlsson <andersca@mac.com> |
Add support for threadsafe statics, and make them the default (matching gcc). Daniel, I'd appreciate a review of the driver/cc1 parts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95508 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
565e465c6d0093f1bf8414b2cabdc842022385a9 |
05-Feb-2010 |
Ted Kremenek <kremenek@apple.com> |
Rename -cc1 option '-checker-cfref' to '-analyzer-check-objc-mem'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95348 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
7909fc8833e734aac521d7d6945bd823d75150ac |
05-Feb-2010 |
Ted Kremenek <kremenek@apple.com> |
Rename -cc1 option '-warn-objc-missing-dealloc' to '-analyzer-check-objc-missing-dealloc'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95347 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
fa15be4cf95b7ed2d1df583497b16a6f897cf789 |
05-Feb-2010 |
Ted Kremenek <kremenek@apple.com> |
Rename -cc1 option '-warn-objc-methodsigs' to '-analyzer-check-objc-methodsigs'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95346 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
2ade536f6815bf6ff128333520232c3b0e701146 |
05-Feb-2010 |
Ted Kremenek <kremenek@apple.com> |
Rename -cc1 option '-warn-objc-unused-ivars' to '-analyzer-check-objc-unused-ivars'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95345 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
cd9902bfb79c5c67559360514951714bdafac36e |
05-Feb-2010 |
Ted Kremenek <kremenek@apple.com> |
Rename -cc1 option '-warn-dead-stores' to '-analyzer-check-dead-stores'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95343 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
fb3f893bc58071e548c97a3d667c8ab9b0c38cfb |
05-Feb-2010 |
Ted Kremenek <kremenek@apple.com> |
Rename -cc1 option '-warn-security-syntactic' to '-analyzer-check-security-syntactic'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95342 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
8767cbc475ed96397b6f08617814eeb9cab121bd |
03-Feb-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add -[no-]integrated-as for clang. - Requires backend support, which only exists for i386--darwin currently. No 'as' required: -- ddunbar@ozzy:tmp$ cat t.c int main() { return 42; } ddunbar@ozzy:tmp$ clang -m32 -integrated-as t.c ddunbar@ozzy:tmp$ ./a.out; echo $? 42 ddunbar@ozzy:tmp$ -- The random extra whitespace is how you know its working! :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95194 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
ool.h
oolChain.h
|
da1573f95902a42aa4d11e8f45ab98ec7e27bc28 |
03-Feb-2010 |
Daniel Dunbar <daniel@zuster.org> |
clang -cc1: Wire up -emit-obj, for emitting object files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95182 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
609508ce95732e7e7010f79c5207613eced7c9cb |
01-Feb-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Darwin uses -fobjc-legacy-dispatch on ARM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95006 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
984eb8611d9ee46fc6351dee43609f2deed99f3c |
01-Feb-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Frontend: Add support for -fobjc-legacy-dispatch, not yet used. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95004 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
f22d1fd96d6056a2f271b0f7353b31f47547127b |
30-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Use StringRef instead of returning a temporary std::string. This fixes a really nasty bug in Darwin::getDarwinArchName where we were going StringRef -> temporary std::string -> StringRef (and return the dead StringRef). The StringRefs from Triple live as long as the Triple itself, that should be long enough. Hopefully 2 of 4 MSVC buildbot failures are gone now. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94892 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
d93256e55673a17d18543397ec462416acb13792 |
28-Jan-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce serialization and deserialization of diagnostic information so that CIndex can report diagnostics through the normal mechanisms even when executing Clang in a separate process. This applies both when performing code completion and when using ASTs as an intermediary for clang_createTranslationUnitFromSourceFile(). The serialized format is not perfect at the moment, because it does not encapsulate macro-instantiation information. Instead, it maps all source locations back to the instantiation location. However, it does maintain source-range and fix-it information. To get perfect fidelity from the serialized format would require serializing a large chunk of the source manager; at present, it isn't clear if this code will live long enough for that to matter. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94740 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
f7b33749d2a686327b8ae249b8eb1ab44770f54b |
27-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
Support -marm by treating it as an alias for -mno-thumb. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94644 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
5cc025197300c3f323ed572dd0295284a17a6661 |
27-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver/Darwin: Disallow -m{macosx,iphoneos}-version-min as -Xarch arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94636 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
3bd54cc56276c386f4d50940a9fbfcad7a69cb75 |
25-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
ASTUnit: Don't check that input files exist when parsing ASTs from the command line -- they may be remapped (fake) files. This is useful for testing parsing entirely from memory. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94395 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
225c41706dc0f3682236e351820d339e14390e00 |
20-Jan-2010 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Lift clang resource directory computation to the Driver object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93971 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
124fca533d9fef2e3f6359283909bd342b5f5f26 |
09-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
implement -ftabstop=width, patch by Christian Adåker git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93078 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
c31176d5ebbcd407aa512bbd5f717e35da629e7d |
08-Jan-2010 |
Dan Gohman <gohman@apple.com> |
Use -fno-math-errno by default, and remove the IsMathErrnoDefault targethook, which is no longer being used. This fixes PR5971. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92987 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
oolChain.h
|
edcfc411148e81c644a1ff36a9df8a7b08209a23 |
05-Jan-2010 |
Nate Begeman <natebegeman@mac.com> |
Allow clang to pass -x cl through to compiler driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92686 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.def
|
49ac8e63a0622ce049e58decab9e844b1e8c7ecd |
23-Dec-2009 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
Remove RewriteBlocks. It has been superseded by RewriteObjC git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92014 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
1bda434673d3c51a2ba6b412f100ccfcf3e7083f |
23-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Drop ToolChain::getHost() git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91960 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
f3601388f234f70778e3023018dfe57b64cf4043 |
23-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: When linking, don't warn about unused arguments which are obviously only used during compilation. - There is no easy way to define this group properly, unfortunately, and maybe this is a losing strategy. For now this is unambiguous more friendly, though. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91940 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
a91320b8af7143f7af4c0665ffa62a3b244c0bd9 |
22-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
ARM: Honor -mfpu= and set __VFP_FP__ and __ARM_NEON__ "correctly". - Correctly is in quotes, because we are following what I interpreted as GCC's intent (which diverges from practice, naturally). - Also, fix the arch define for arm1136jf-s. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91855 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
ee788e70fcd0adf76103b17c78ac658d4ea30c9b |
21-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add ToolChain::getDriver() and use it instead of going through the HostInfo object. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91830 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
38b48afd338d494099697d2611e1f45e558e469e |
18-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
clang -cc1: Rename -mcpu to -target-cpu to match other target options and not alias driver/backend option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91671 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
f2d8b9f967a1ab53ee9fdbcc3ac0a4ee0a83a26e |
18-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add -dwarf-debug-flags, which provides a way to embed the cc1 level options used to compile a translation unit into the debug info for that file. - Used by parts of Darwin build process to check compiler flags, etc. - <rdar://problem/7256886> clang does not emit AT_APPLE_flags git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91661 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
oolChain.h
|
99860173af0b070f93558c26b78bb7ac07820370 |
17-Dec-2009 |
Nuno Lopes <nunoplopes@sapo.pt> |
reword the help text of fno_assume_sane_operator_new, following Chris suggestion git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91630 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
8663b180085e9bc7a0a87c80cc3f722efef99e79 |
16-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Fix -fdollars-in-identifiers Clang translation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91562 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
fc2844846e91398205fddc71196fe9dda04e105f |
16-Dec-2009 |
Nuno Lopes <nunoplopes@sapo.pt> |
implement PR5654: add -fassume-sane-operator-new, which is enabled by default, and adds the malloc attribute to the global function new() and to the overloaded new operators. feel free to chage the name to this lengthy argument git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91543 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
feecdf15dc58a5d5e3c77c938b6d5e7deb75d39e |
15-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Forward -isysroot to clang -cc1. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91414 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
8b9adfea5e834eaee0f45d8cc7fb052d68df4a46 |
15-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add -resource-dir to clang -cc1, this allows the base directory for compiler resources (e.g., /usr/lib/clang/1.1) to be passed on the command line instead of computed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91370 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
9c276ae0f24d4cee8f7954069d4b8eae45d0447d |
12-Dec-2009 |
Mike Stump <mrs@apple.com> |
Implement runtime checks for undefined behavior. WIP. This implements a new flag -fcatch-undefined-behavior. The flag turns on additional runtime checks for: T a[I]; a[i] abort when i < 0 or i >= I. Future stuff includes shifts by >= bitwidth amounts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91198 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
ptions.td
|
6feaf57b46f0856127c84b03f3aee5fb51d0262b |
12-Dec-2009 |
Ted Kremenek <kremenek@apple.com> |
Make using '-fshort-enums' an error until it is actually implemented (changes the ABI, so it is dangerous to not error out if we don't support it). Fixes <rdar://problem/7461006>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91191 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
8ff5b28d6efcffe2251e77634c7edf83a4763344 |
12-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Switch to using "clang" "-cc1" instead of "clang-cc". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91174 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
e4cb2a4b4ad6b9596f9109945a5b3a87949f375b |
09-Dec-2009 |
Mike Stump <mrs@apple.com> |
Fix 80-col violation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90976 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
b94ffa4a641b71c7c6155cddc7dc384f8a45c9f1 |
09-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
clang -cc1: Mark -i* options as JoinedOrSeparate, since the driver forwards them directly and one can write '-includefoo' if one really wants to. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90966 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
87667aafe68c366be57f5afb60428237593da0ed |
08-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Unbreak clang-cc handling of -msoft-float / -mfloat-abi=, which I borked. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90873 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
e3fdca2ee0346a41d9cc5ee417a75e66274216f5 |
08-Dec-2009 |
Jeffrey Yasskin <jyasskin@google.com> |
Remove several .c_str() to be forward-compatible with StringRef. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90822 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
fc576514d06c46a7cac49500169411d82f38d04b |
07-Dec-2009 |
Ted Kremenek <kremenek@apple.com> |
Add clang-cc option '-analyzer-opt-analyze-nested-blocks' to treat block literals as an entry point for analyzer checks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90810 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
7ca7987669fcd14d91b4227a9ddcf7fdd8b1f8c2 |
07-Dec-2009 |
Rafael Espindola <rafael.espindola@gmail.com> |
Shorten the help test for -no-canonical-prefixes, put it behind HelpHidden and claim it in Driver.cpp instead of Tools.cpp. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90777 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
8477ee93c9d81d1b5fe321706ff95bcd219c744b |
04-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Switch -ccc-* options to using the standard options functionality. - I still want to get rid of them, but manually handling them isn't adding value. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90602 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
2658f05caf1c1d86608a46ebc7be0b3bb21fef2a |
04-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
OptTable: Allow option groups to be used to define "help groups", which will collate the options inside that group. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90592 91177308-0d34-0410-b5e6-96231b3b80d8
ptParser.td
ptTable.h
|
9a242512a8b319cc4df7d050166a1c65bf66abeb |
04-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
OptParser: Add HelpHidden flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90591 91177308-0d34-0410-b5e6-96231b3b80d8
ptParser.td
ptTable.h
|
0f4c59c3beae302b5a3ecea13f2e257bdaad3188 |
04-Dec-2009 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add gcc's -no-canonical-prefixes option to clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90577 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
f13876fac1eb2d384732779a7709575d4ecf27b6 |
04-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Ignore -fsched-interblock and -freorder-blocks to the ignored -f flags, we have no plans to support invasive optimization flags. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90558 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.td
|
9b5e9ae08defd14441acca1d7d4502b933bf6c5a |
03-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
clang-cc: Honor -help and -version when using new style option parsing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90422 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
b737fb12cbf9617edc5720fba8b6aed118c84771 |
03-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
CC1Options: Normalize meta var spellings, and fix a few help texts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90421 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
60e107fb86132fea75b886d2259f4c220334bc5e |
03-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add OptTable::PrintHelp. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90420 91177308-0d34-0410-b5e6-96231b3b80d8
ptTable.h
|
e14b5f5237d0740c2b21c50b2eb41a06e778d820 |
03-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add clang -cc1 support for -remap-file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90414 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
efba227cc5459554eca466aafe786b5132dcb68c |
03-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add clang -cc1 -load option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90413 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
daab7b1016f0a82fefa4f7be6e63c57c06b19ffc |
02-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add Command::Creator member variable, which tracks the tool that was used to create a particular command. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90287 91177308-0d34-0410-b5e6-96231b3b80d8
ob.h
|
3b315264d1a6fa303e20fe0caec306ccafc090de |
30-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add CodeGenOptions::{SoftFloat,FloatABI}, and update the all the (far too many) places to use this instead of using the backend -soft-float and -float-abi= options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90127 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
ce6bf1ecdaca15450d8c0424724cc1558b847364 |
29-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
clang -cc1: Allow -triple= as an alias for -triple, -code-compiletion-at= as an alias for -code-completion-at, and spell "-std=" option correctly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90068 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
f219e7c1529fac29e34483667f740b452e5ef9cc |
29-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Move LLVM backend options to explicit clang-cc / clang -cc1 options, which we then manually pass to the command line library; eventually the latter grossness should be fixed by a real API when creating the target machine. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90063 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
7674352cf3e8f699914a2f739f1ae8c8c3480813 |
29-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
clang-cc: Change -fsigned-char=0 to -fno-unsigned-char and pass -pic-level using separate args. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90054 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
0ff679f5ddd24a4acbeffc9757a9b2a6e4673c14 |
26-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add clang -cc1 parsing for preprocessor options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89917 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
cdd9686b890ebdc10039ae256ef4c9dfb5ebacb7 |
25-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
What the FIXMEs want, the FIXMEs shall have. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89861 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
3b84f5bab9f134741cf4d3c80086009519b6d968 |
25-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add an arg_iterator, for iterating over a subset of arguments in an ArgList. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89860 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ptSpecifier.h
|
33a33d8abd7a3d49eacc05e40c00b00634bf1ee9 |
24-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Sketch the rest of the clang -cc1 option definitions, aka fun with C-x C-(. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89721 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
21affc089773edc30be43ecb0022a48acdac7093 |
24-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add clang -cc1 parsing of diagnostic options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89716 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
e2814d89025b847ad7363b21e3e053bbae180b54 |
22-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add clang -cc1 parsing of analyzer options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89629 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
1bed0c3a555d9e32de9dead55658b4a28a4d6e03 |
21-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add clang -cc1 dependency output options parsing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89508 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
a31100e62f83933432df9092a04e48f9e5561a14 |
20-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Pass '-mcpu' 'FOO' instead of '-mcpu=FOO'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89498 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
50a4487683a7e09fb93e8b506181e034241a0ffe |
20-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add clang -cc1 parsing of CodeGenOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89464 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
31db76cb2dde031ab3262808ac233889daf7d720 |
20-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add parsing for TargetOptions to CompilerInvocation::CreateFromArgs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89435 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.td
|
f7b56fa451893699178b17d88644447bd5dbabd3 |
19-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add missing dependency on TableGen. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89387 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
|
a08304a38c2fecd647f41039d2245f0c4cd33504 |
19-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Move INPUT and UNKNOWN sentinel options into the OptParser.td file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89371 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.h
ptParser.td
ptions.h
|
f010b26b60f3f51b6fa0335218c9a458ec30cff4 |
19-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add Sentinel flag to option kinds. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89367 91177308-0d34-0410-b5e6-96231b3b80d8
ptParser.td
|
8adfcff02334455b6f95bc4e1f347204f7c0dd3e |
19-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Sketch .td file and build system goop for OptTable based clang-cc options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89330 91177308-0d34-0410-b5e6-96231b3b80d8
C1Options.h
C1Options.td
MakeLists.txt
akefile
|
847abaa62883b6c20005bdd3346ebbd44e46dbac |
19-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Factor out OptTable::ParseArgs, for parsing an entire argument vector. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89327 91177308-0d34-0410-b5e6-96231b3b80d8
ptTable.h
|
265e9ef9f3ef30a97790e6e7bbc3c17d97981ca7 |
19-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: ArgList doesn't depend on Options.h anymore. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89313 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
a0289fda5b5d67ad49596a5e1f62e1f9db497d06 |
19-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Take option ID for {Input,Unknown}Option, to drop dependency on actual options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89312 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
|
9e1f98260a1842df4bb8e6de0b592a1622dcfdc0 |
19-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Introduce OptSpecifier class for protecting access to an option id. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89310 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ptSpecifier.h
ptTable.h
ption.h
|
e4bdae78c69d2a09ee96619cc5ccf81441674412 |
19-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Switch to using explicit {getLast,has}ArgNoClaim functions instead of taking a Claim argument. - Most driver code always claims, and bool arguments don't play nice with the overloads. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89308 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
b32aa51ce9b608002a031e8ca682f073e28024cf |
19-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Resolve inconsistency in matching options against options which are aliases -- just treat this case as an (unchecked) client error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89306 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
|
64bdce3f02091b0a4e1528d690495970c1249803 |
19-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Switch to using TableGen'erated Options.inc instead of Options.def file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89288 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
akefile
ptParser.td
ptions.def
ptions.h
ptions.td
|
27e738d0d3f781672a5999d2a9e2827b00a97d0c |
19-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Split OptTable out into OptTable.{h,cpp} git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89283 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ptTable.h
ptions.h
|
a79a2b5bf23d1422eed9be3793186ebbba7532ec |
18-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Rework OptTable to have no dependency on the options it manages. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89234 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.h
|
1d189e187b1bf7d7677aefd7482bcdad29683a0c |
18-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Store Option ID field as unsigned to drop dependency on the options type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89232 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
|
a4f64805e032fa6a669434ca3f9c04b02f1bbd97 |
18-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Switch Options.def to storing flags as a bitmask (instead of mangled into a string). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89212 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
5e530af5d51572a0ed5dbe50da54bd333840c63d |
17-Nov-2009 |
David Chisnall <csdavec@swan.ac.uk> |
Added block type introspection support. As per Fariborz's suggestion, committed now but can be reverted later if the used flag is problematic for Apple. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89134 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
9e5cc6b703b2d0013f13800c2ffbeb3cf85fcfad |
17-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add -fblocks, -stack-protector, and -fobjc-nonfragile-abi defaulting to driver, instead of using getDefaultLangOptions. - Remove unused -fobjc-tight-layout while at it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89065 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
oolChain.h
|
77544fde702fdab2a6150ba812ecf04eb1e6eab6 |
17-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add driver::types::isObjC predicate. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89064 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.h
|
0be42c44f0199c5023b542d6a6d2e66eb594f27d |
17-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Move -fms-extensions defaulting to driver, instead of using getDefaultLangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89057 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
0f9fed70cea107b3f79df554e38bd8e98d48fe47 |
11-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add Diagnostic::Report method for reporting diagnostics without a location. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86760 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
a6fda124bf380479529d6a80b84b62cacd3cb707 |
05-Nov-2009 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Adding -fshort-wchar option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86167 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
59876c2713683d1538ca45bb14c2f415862fb716 |
04-Nov-2009 |
Tanya Lattner <tonic@nondot.org> |
Merge constant array and structures. This will create a global variables for arrays and structs that are constant and their initializer is constant. It is on by default but can be disable with the flag -fno-merge-all-constants. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85991 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
8d737cc78cb28f39179d6c7ca00eb5d3cf563129 |
26-Oct-2009 |
Rafael Espindola <rafael.espindola@gmail.com> |
Rename -nostdclanginc to -nobuiltininc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85116 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
6961fdd661f75b8452f526143b9f60b54e175c9d |
06-Oct-2009 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add the -nostdclanginc option to clang (the driver). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83377 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
f44c58563286bb448a72ed9c9af5f21718633230 |
23-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Push "clang-is-production" logic up to tools/driver, and make it hittable by defining the CLANG_IS_PRODUCTION Makefile variable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82583 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
2030d8f46b4226fa99e59389e3ca856a79c27e9a |
14-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Support -mabi= for clang/ARM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81734 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
f4aa4f61de7d364364dc94bbf83ff71448a11327 |
11-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Swizzle the target triple based on -mthumb, and update clang-cc to recognize thumb-foo-bar as an ARM target. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81497 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
cbd1933f83e2332b2d7add10459f80cc4e7eb7bf |
11-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Initial handling of -m{soft-float,hard-float,float-abi=} for ARM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81471 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
2ba91575905a54f712a7f64304e56002e4882499 |
10-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Implement Darwin/ARM behavior for defaulting to -fno-builtin-str{cat,cpy}. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81425 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
5ed34f4c58b6ad4e21038d713c1fae31a6146ff5 |
10-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Change Get{File,Program}Path to return an std::string (instead of a sys::Path). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81389 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
oolChain.h
|
16484afe5ca790d2f9a16650638e54067c037d7d |
10-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
StringRefize ArgList construction of ArgStrings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81385 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
0dcb9a3705743ec972af37f48ead81a0939e3958 |
09-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Push bound architecture name into TranslateArgs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81366 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
4954018954bbc97363eef02d0c83bea19ce9b329 |
09-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Push bound architecture name into Compilation::getArgsForToolChain. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81365 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
river.h
|
1eb4433ac451dc16f4133a88af2d002ac26c58ef |
09-Sep-2009 |
Mike Stump <mrs@apple.com> |
Remove tabs, and whitespace cleanups. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81346 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
rg.h
rgList.h
ompilation.h
river.h
riverDiagnostic.h
ostInfo.h
ob.h
ption.h
ptions.h
ool.h
|
79d39f92590cf2e91bf81486b02cd1156d13ca54 |
09-Sep-2009 |
Mike Stump <mrs@apple.com> |
Remove tab characters. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81340 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
|
d7502d0a662b5c299125aba04245aefce67cbc22 |
09-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Rename HostInfo::getToolChain to HostInfo::CreateToolChain, and don't recreate the default tool chain when binding the default architecture. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81279 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
|
a6046bec7fc835186dde134fb81aa1b7d45cd9f0 |
09-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Fix ShouldUseClangCompiler to use llvm::Triple. - -1 FIXME, and fixes 'clang -arch armv4t ...', for example. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81276 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
d82f8fa53771b454885c546f0fd452a4980b3a3e |
04-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Tweak darwin::Link::AddLinkArgs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81021 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
78dbd580a02759bbc408dbefb6754afa71b2c24c |
04-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Implement darwin::Link::AddDarwinArch for ARM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81020 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
5915fbf310e171c4cd3c2af05e9de360c0fa988a |
01-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add driver support for -emit-ast and AST compilation steps. - <rdar://problem/7185031> Add 'clang' option '-emit-ast' git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80678 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
ypes.def
|
8a5a9aaddb627c0884c2ed8db55cc29fdb601195 |
31-Aug-2009 |
David Chisnall <csdavec@swan.ac.uk> |
Updated GNU runtime non-fragile ABI. Added -fconstant-string-class= option. Added __has_feature() test for non-fragile ABI. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80591 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
156c4134fc936c8080ab6f15794da936f815bf8a |
27-Aug-2009 |
Gabor Greif <ggreif@gmail.com> |
add missing header git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80228 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
e7925a075f110ab21afeae084670a155dea568e3 |
22-Aug-2009 |
Edward O'Callaghan <eocallaghan@auroraux.org> |
Second half of, clang, AuroraUX toolchain support. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79713 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
|
8e9ef0d87dad25f02e5abc6facf528778236115a |
05-Aug-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Translate -mcmodel=X to -code-model X and pass it to clang-cc. Patch by Pawel Worach! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78190 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
091038cbdeab8933720a4b236ab41590fa02d78a |
05-Aug-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add support for the -fno-omit-frame-pointer option. Patch by Roman Divacky! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78188 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
738f8c278da5950d0d4607de2debe0bdfad64185 |
01-Aug-2009 |
Mike Stump <mrs@apple.com> |
Add beginnigs of rtti generation, wire up more of -fno-exceptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77751 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
793007242ba209b68ce14ec7547ac70ee981303a |
21-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
driver: Print --version on stdout, to match gcc. - Patch by Jean-Daniel Dupas git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76632 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
ceb5c5b7f67a30fae305d1d19b478b623e4fbced |
14-Jul-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Remove -ftraditional option, which gcc doesn't actually support. Make using -traditional and -traditional-cpp with clang an error because it's unsupported in clang and causes a significant change in the semantics of the language. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75690 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
e650c8c3bca2f58cad8ffa8aab63126d26e890cd |
07-Jul-2009 |
Douglas Gregor <dgregor@apple.com> |
Introduce the notion of "Relocatable" precompiled headers, which are built with a particular system root directory and can be used with a different system root directory when the headers it depends on have been installed. Relocatable precompiled headers rewrite the file names of the headers used when generating the PCH file into the corresponding file names of the headers available when using the PCH file. Addresses <rdar://problem/7001604>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74885 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
df35d7f1916140bfed5ab0bad2d5e2bc62c667e5 |
01-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Mark some Compilation members const. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74636 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
|
c88a88f6f7672b6bb831dce9da4acfa0c846975f |
01-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Move Compilation::Execute to Driver::ExecuteCompilation. - The Compilation is just a helper class, it shouldn't have that amount of logic in it. - No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74634 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
river.h
|
31c11ebdaab0acfa10e231730ae95e32c0e39e1f |
01-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Improve diagnostics for failed commands. - Not all tools give good error messages, and sometimes the tool can fail w/o any error (for example, when signalled). - We suppress this message when the failing command is the compiler and it failed normally (exit code == 1), under the assumption that it gave a good diagnostic. For example, for a linker failure we now get: -- ddunbar@lordcrumb:tmp$ clang a.c b.c ld: duplicate symbol _x in /var/folders/cl/clrOX6SaG+moCeRKEI4PtU+++TI/-Tmp-/cc-bXYITq.o and /var/folders/cl/clrOX6SaG+moCeRKEI4PtU+++TI/-Tmp-/cc-6uK4jD.o clang: error: linker command failed with exit code 1 (use -v to see invocation) -- For a compiler crash we get: -- ddunbar@lordcrumb:tmp$ clang t.i Assertion failed: (CGT.getTargetData().getTypeAllocSizeInBits(STy) == RL.getSize()), function layoutStructFields, file CodeGenTypes.cpp, line 573. 0 clang-cc 0x0000000100f1f1f1 PrintStackTrace(void*) + 38 ... stack trace and virtual stack trace follow ... clang: error: compiler command failed due to signal 6 (use -v to see invocation) -- But for a regular compilation failure we get the usual: -- ddunbar@lordcrumb:tmp$ clang c.c c.c:1:6: error: invalid token after top level declarator int x ^ 1 diagnostic generated. -- - No test case, not amenable to non-executable testing. :/ - <rdar://problem/6945613> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74629 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
ompilation.h
|
cae087e164e94e4286c11bf694dd0ff88f295302 |
01-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add Source argument for Commands to hold the Action which caused a Command to be generated, to support more advanced diagnostics. - No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74627 91177308-0d34-0410-b5e6-96231b3b80d8
ob.h
|
f7b8eec37c8c8012fa525c71fb29a58c9f29beef |
29-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
OpenBSD support. - Patch by Jonathan Gray! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74453 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
|
45483f7a1b3e57b4603b141bee80596b2d4dd443 |
28-Jun-2009 |
Bill Wendling <isanbard@gmail.com> |
Add stack protector support to clang. This generates the 'ssp' and 'sspreq' function attributes. There are predefined macros that are defined when stack protectors are used: __SSP__=1 with -fstack-protector and __SSP_ALL__=2 with -fstack-protector-all. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74405 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ptions.def
|
12cfe036d809173a25af0104844d4bb66a92252b |
17-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
Fake support for -print-multi-* - I think we will eventually need to support this for realz, and some build processes seem to depend on these options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73581 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
oolChain.h
|
5e9f35c7cb61aea46f56d46c77cbcf47c0cf28ba |
14-Jun-2009 |
Douglas Gregor <dgregor@apple.com> |
Update LLVM. Implement support for C++ Substitution Failure Is Not An Error (SFINAE), which says that errors that occur during template argument deduction do *not* produce diagnostics and do not necessarily make a program ill-formed. Instead, template argument deduction silently fails. This is currently implemented for template argument deduction during matching of class template partial specializations, although the mechanism will also apply to template argument deduction for function templates. The scheme is simple: - If we are in a template argument deduction context, any diagnostic that is considered a SFINAE error (or warning) will be suppressed. The error will be propagated up the call stack via the normal means. - By default, all warnings and errors are SFINAE errors. Add the NoSFINAE class to a diagnostic in the .td file to make it a hard error (e.g., for access-control violations). Note that, to make this fully work, every place in Sema that emits an error *and then immediately recovers* will need to check Sema::isSFINAEContext() to determine whether it must immediately return an error rather than recovering. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73332 91177308-0d34-0410-b5e6-96231b3b80d8
riverDiagnostic.h
|
75eb1d64784946a37fc0b27596e2d92b6cf7033b |
08-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
PR4016: Forward -fno-show-source-location to clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73082 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
5a77973d9bc2c9cdbdb7860dcf3ac795abe258ec |
05-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Add driver support for -fsigned-char/-funsigned-char. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72930 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
145c6090752187228340edc9a2bec8f6b74841cf |
05-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Add a couple of FreeBSD-specific command-line options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72927 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
a46c71abb1dc2f9758ad1abe3378534fe138e802 |
04-Jun-2009 |
Torok Edwin <edwintorok@gmail.com> |
forward -fno-color-diagnostics to clang-cc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72856 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
4e2567d6b1d9d046ca98aa3ab6a6b06ea5ea398b |
03-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
PR4308: Fix support for -m32/-m64 on Linux. I'll look into cleaning this up a bit as a followup. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72794 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
|
e5280286573d4fe1220cdd66e147b572a05536a8 |
03-Jun-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Support -mllvm; this just forwards options to clang-cc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72780 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
ddd1fb674eb54711d2504fe6c7fb9e3d10acff6a |
02-Jun-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Add --shared option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72716 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
6b3454a219cee5ef36c4668961f93a5c32deab61 |
26-May-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Fix for PR4140: Add the start of a Linux toolchain (basically, just barely enough to get the given usage of -print-file-name working). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72412 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
|
34e65770ad6142b033d6cec4f476ed20fb248bf3 |
22-May-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
This patch adds support for sender-aware dispatch in Objective-C for the GNU runtime, when compiled with -fobjc-sender-dependent-dispatch. This is used in AOP, COP, implementing object planes, and a few other things. Patch by David Chisnall. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72275 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
e027a4b2399e9b0acfe0f77220c66bbe369067ee |
22-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Don't warn about -funit-at-a-time, and reject -fno-unit-at-a-time. - We could just warn about -fno-unit-at-a-time, but in practice people using it probably aren't going to get what they want out of clang. Also, use "clang" specified error for unsupported things instead of driver unsupported error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72272 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
cb8ab23f7c800b041aeb6fc38c341d1aa0da86bf |
22-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
(llvm up) Use llvm::Triple for storing target triples. - This commit has some messy stuff in it to extend string lifetimes, but that will go away once we switch to using the enum'd Triple interfaces. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72243 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
oolChain.h
|
d8fc0f2e7751cf31cec5c2f3cc6a0b447e9debb3 |
22-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add --analyzer-no-default-checks and --analyzer-output options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72238 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
f4e2486145b426e84175c8e34b0f200d74daa98b |
19-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove -fprintf-source-range-info from the Driver (this was renamed) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72061 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
95a0da7b263777e6f97e5a08b6eb893681a234ba |
13-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Emit an unsupported error on -iframework. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71698 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
17ca3638e852ba81f389e9f896ed0420b52ae606 |
06-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
More x86 target feature support. - Apologies for the extremely gross code duplication, I want to get this working and then decide how to get this information out of the back end. - This replaces -m[no-]sse4[12] by -m[no-]sse4, it appears gcc doesn't distinguish them? - -msse, etc. now properly disable/enable related features. - Don't always define __SSE3__... - The main missing functionality bit here is that we don't initialize the features based on the CPU for all -march options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71117 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
868bd0aa9281929ef50d2e9a8c82a036906f53f5 |
06-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Improve handling of (X86) target features. - This is a WIP... - This adds -march= handling to the driver, and fixes the defaulting of -mcpu on Darwin (which was using the wrong test). Instead of handling -m{sse, ...} in the driver, pass them to clang-cc as -target-feature [+-]name In clang-cc, communicate with the (clang) target to discover the legal features of a target, and the features which are enabled based on -mcpu. This is currently hardcoded just enough to not be a feature regression, we need to get this information from the backend's TableGen information somehow. This is used to construct the full list of features which are being used, which is in turn used to initialize the predefines. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71061 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
63be57a832b2dab70592d1d9b37a5cd9a627356e |
06-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add --analyze-auto. - Currently just an alias for --analyze, eventually we want to refit --analyze so that it is less automatic (i.e., does not force plist output and does not hard code the list of checks). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71056 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ptions.def
|
d6884a0b90091a063478ec7fa31f6d76c94e4917 |
04-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add -fobjc-tight-layout. - This implements gcc style Objective-C interface layout (I think). Currently it is always off, there is no functionality change unless this is passed. For the curious, the deal is that gcc lays out the fields of a subclass as if they were part of the superclass. That is, the subclass fields immediately follow the super class fields instead of being padded to the alignment of the superclass structure. - Currently gcc uses the tight layout in 32-bit and 64-bit modes, and llvm-gcc uses it in 32-bit only, for reasons which aren't clear yet. We probably want to switch to matching gcc, once this makes it through testing... my hope is that we can also fix llvm-gcc in order to maintain compatibility between the compilers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70827 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
08617b1b475e5ae9c61c9b3536cf712283647284 |
03-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Treat -m32 and -m64 as "driver-only" arguments. - In particular, don't forward them to gcc; these participate in the selection of the tool chain, which should know how to talk to gcc and be fixed if it doesn't. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70648 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
11e1b40d759a643086f590f6ffbd9d68360bad46 |
02-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
DragonFly ToolChain definition for driver. - Patch by Alex Hornung! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70635 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
ptions.def
|
fffd93f38340d4d2ca7ee78a8c91c890b2ff3fa0 |
01-May-2009 |
Douglas Gregor <dgregor@apple.com> |
Implement -fmessage-length=N, which word-wraps diagnostics to N columns. Also, put a line of whitespace between the diagnostic and the source code/caret line when the start of the actual source code text lines up (or nearly lines up) with the most recent line of the diagnostic. For example, here it's okay for the last line of the diagnostic to be (vertically) next to the source line, because there is horizontal whitespace to separate them: decl-expr-ambiguity.cpp:12:16: error: function-style cast to a builtin type can only take one argument typeof(int)(a,5)<<a; However, here is a case where we need the vertical separation (since there is no horizontal separation): message-length.c:10:46: warning: incompatible pointer types initializing 'void (int, float, char, float)', expected 'int (*)(int, float, short, float)' int (*fp1)(int, float, short, float) = f; This is part one of <rdar://problem/6711348>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70578 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
a3ff202ee4fb21728e930d5d029ba4925129912c |
26-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add -std-default= option. - This can be used to supply a default value for -std=; the idea is that this can be used in conjunction with CCC_ADD_ARGS or QA_OVERRIDE_GCC3_OPTIONS to change the default without having to modify the build system. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70102 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
4df9a664b7a0bfbd065253349cc5ead88b50b9a2 |
26-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add option for AddAllArgsTranslated to control whether output argument should be joined or separate. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70101 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
182e09240a33c6f1d303deecabec6e0e9c9d109d |
21-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
rename -fprint-source-range-info -> -fdiagnostics-print-source-range-info. Temporarily accept both of them, I'll rip out the old one after awhile. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69662 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
7695fba30221613b7cf31276456217c41bb90960 |
19-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Forward f[no-]dollars-in-identifiers to clang, when specified. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69549 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
49138fc59eeac2aacd3b7e04c2642180d5baefd7 |
19-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Forward -fno-diagnostics-fixit-info to clang-cc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69546 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
df91ef3d6c55692a0236f67b6c6b134a3bf84098 |
18-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Preliminary PCH support in the driver git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69410 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
448f5e6c191b40c90a67c48547df420d16f48b96 |
17-Apr-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Added -print-ivar-layout option. No change in functionality yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69346 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
9e820ee054fefe5422b4db3f681e567a8976747e |
16-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Pass -fdiagnostics-show-option to clang-cc by default. - <rdar://problem/6796848> implement -fdiagnostics-show-option git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69276 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
19cbb44e3c4f2181dafa2ab92d3e3a26619b71d9 |
16-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
tblgen is now passing diagnostic group information in the .inc file, ignore it everywhere. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69269 91177308-0d34-0410-b5e6-96231b3b80d8
riverDiagnostic.h
|
e5ca82f20860797b5238d0a67f5ed00281370f7a |
16-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Remove the majority of -W* options, the driver doesn't generally need to know about these now we don't have to hold clang-cc's hand. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69263 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
06ef3c3e9be4923b8e29c8e267b0c56afaa14ff3 |
16-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Forward -W* to clang, it can handle all these itself now. Remove clang_W_Group and clang_ignored_W_Group. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69261 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
4ac072aceb9c68f7a023050e2ab9ccacb4fe6e5b |
15-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Tblgen now passes the default mapping explicitly, instead of having it be tied to the diag class. This requires an LLVM tree update. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69175 91177308-0d34-0410-b5e6-96231b3b80d8
riverDiagnostic.h
|
c35d71f1e0a0c72fd43a73ddecd408bf43d501de |
15-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add --help-hidden git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69171 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ptions.def
|
70d3c92820f590b10553da9c96eda24e4325ba34 |
15-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: For clang, accept -fsigned-bitfields and reject -funsigned-bitfields for now (clang defaults to -fsigned-bitfields). - <rdar://problem/6790309> ER: Support -fsigned-bitfields/-funsigned-bitfields git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69131 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
7eba5c9df989632c4dcaf13a20798d33d9ba3186 |
14-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
add support for -W[no-]extra-tokens git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69071 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
d82df3ad430397d7f9ef511e7c5157f997c41f53 |
12-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Implement support for GCC's -dD mode, which dumps -E output *and* macro definitions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68884 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
247aaa64f03c259a029205c1494d2a062e5629bd |
09-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
add driver support for -Wno-trigraphs git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68650 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
9b2ce37922ef34061cf0c193af7ce295a77d9298 |
08-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
implement -imacros support in driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68641 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
3aaf082689d3235937a2e56a60f90fc1b3aebfb2 |
07-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Forward remaining -f options to clang manually. - Groups are really just intended to hold inherent structure of the options, not be abused for individual tool argument translation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68554 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
2ac9fc2ad64e16127df8c60caeea2edfe9a400a2 |
07-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Only forward last instance of -mmacosx-version-min= and -isysroot to clang. - Don't forward arbitrary -i* options to clang, just the ones we know about. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68553 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
48d1ef782c8c88066b5febf60f8f456064d7d3f0 |
07-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Manually translate a number of -f with no- variants options to clang. - We will eventually want some more driver infrastructre for this probably. - For now, the clang-cc interface stays relatively the same, but we don't accept multiple instances anymore, or the [no-] variants directly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68550 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
9af6668984f1594459a58c381d95272aa7ca7663 |
07-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add default for ArgList::hasFlag and simplify implementation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68549 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
1e23f5f963dd6a3cee43ace77578161798e41e2d |
07-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add 'q' flag for options which shouldn't be reported as unused. - <rdar://problem/6756295> warning about '-dynamic' argument unused during compilation seems incorrect git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68535 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
ptions.def
|
16fd3a9f5159b74bfdd65cf290b4bd091088de91 |
07-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: More verbosity reduction. - Ignore some more -W options and -[fm] options which we can somewhat safely ignore. - Recognize that -W is an alias for -Wextra W: -Wdeclaration-after-statement -Werror-implicit-function-declaration -Wfour-char-constants -Winit-self -Wmissing-format-attribute -Wno-#warnings -Wno-comment -Wno-long-long -Wno-variadic-macros -Wold-style-definition -Wstrict-prototypes -Wunused-parameter f: -fconstant-cfstrings -fdollars-in-identifiers -finline -finline-functions -fno-inline -fno-keep-inline-functions -fno-strict-aliasing -fobjc-atdefs -fobjc-call-cxx-cdtors -fobjc-new-property -fstack-protector m: -mconstant-cfstrings -mfix-and-continue git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68487 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
e06dc219a869d73b6c9a398a2dee0aa2d4e2dcf0 |
04-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Handle -dumpversion, this is used by some configuration scripts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68418 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
bf4a6767a8fd4f81df93c55f88b1b4b7142a04d4 |
04-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add -Qunused-arguments option to suppress driver "unused arguments" warning. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68410 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
68fb469aeb19144403e703b825854d08353c8eea |
03-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Explicitly ignore -fpch-preprocess when using clang, we don't need to do anything special to support this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68403 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ptions.def
|
93e54836706ba0c4c1bbf23b72e179263f218245 |
03-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Reduce Driver verbosity by suppressing unused warning about another cluster of -W options. The list: -Waggregate-return -Wbad-function-cast -Wcast-qual -Wformat-security -Wformat=2 -Wformat -Wmissing-declarations -Wnewline-eof -Wno-parentheses -Wpacked -Wredundant-decls -Wshadow -Wsign-compare -Wstrict-overflow= -Wstrict-overflow -Wuninitialized -Wunknown-pragmas. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68402 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
7cd2e93125e2f3b6ca01b24ed0c3fd7e94683fd9 |
03-Apr-2009 |
Fariborz Jahanian <fjahanian@apple.com> |
Implement -fvisibility. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68369 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
035cf8911c2282550411be70f370dfe5d282b5c9 |
02-Apr-2009 |
Mike Stump <mrs@apple.com> |
Remove -ftrapu. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68330 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
5d8b2cf9fd704f6ca5e33525803a65421c0b440e |
02-Apr-2009 |
Mike Stump <mrs@apple.com> |
Fixup -ftrapv to be more gcc compatible. -ftrapu (for want of a better name) is the option that SmallTalk can use to intercept all overflows, including unsigned. I added some testcases so we don't break anything. Also included is another patch from David for += and friends. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68267 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
78d8a089c8f124ba6f47bb37e2c4a36986f60e23 |
02-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Allow -ccc-gcc-name to specify the name/path to use when calling gcc in generic configurations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68260 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
2add47387d39ee6c40dcb0e9f3d51c27ad1e113c |
01-Apr-2009 |
Mike Stump <mrs@apple.com> |
Add -ftrapv support, patch from David Chisnall; well all except the clang option code that is and two bug fixes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68240 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
7e203b7f5d894b1969765332e35c6a8b4d45556f |
01-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Revert r68221, -ftrapv support, which causes several regressions in Clang's test suite. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68230 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
3fb07bdc32cb301a8438c297fe7d68542a7537b2 |
01-Apr-2009 |
Mike Stump <mrs@apple.com> |
Add -ftrapv support, patch from David Chisnall; well all except the clang option code that is. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68221 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
91e28afe3503893c69afd71877f11e3bf03fa4ce |
31-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Implement basic --help text. - PR3875. - <rdar://problem/6615249> [driver] ccc should support some form of --help git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68148 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ptions.def
|
febdf7d3858539a3533895bdeb3bd5c083fb087a |
31-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add OptTable::getOptionKind. Also, removed default value for getOptionMetaVar. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68146 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.h
|
c0d12e93ee244534147960334c095a6d6510d0ae |
31-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add extra parameters for help text to option definitions. - Currently unused. And yes, now may be about the time I want a TableGen backend. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68139 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
ptions.h
|
cfdee929290b73ae1c4e5896d5cba120bc677661 |
31-Mar-2009 |
Steve Naroff <snaroff@apple.com> |
Add -Wdeprecated-declarations to driver and add a test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68117 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
8499f3f5ff8d5f95ece8047780030a3daad1b6fa |
31-Mar-2009 |
Douglas Gregor <dgregor@apple.com> |
Implement -Wmissing-prototypes. Fixes PR3911. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68110 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
757e0dd411c8b6c9c13a310883457a3372b1795a |
30-Mar-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Implement -Wno-pointer-sign. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68062 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
75358d267256022475371416654b056ad8531cb3 |
30-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Sketch FreeBSD tool chain. - Patch by Ed Schouten! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68061 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
|
cd8e4c44dd068956e9181381be3ee2d49a0fac52 |
30-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Support -M and -MM. - Not particularly elegant, but my hand is forced by gcc. Also, tweak -ccc-print-bindings output. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68027 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
ypes.def
|
478edc295efc560627053e2320bedd2f696ae028 |
30-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Track which original arguments an arg is derived from, so that we can properly claim arguments, even if they have been translated by the tool chain. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68020 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
rgList.h
|
1c9b7422dceb5ecdc50bad41e7cf4b635bf89c15 |
27-Mar-2009 |
Mike Stump <mrs@apple.com> |
Fixup -fcommon and -fno-common to be more gcc compatible. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67863 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
950bedd8a9f00caabd2f1fc6812d70e08103f847 |
27-Mar-2009 |
Mike Stump <mrs@apple.com> |
Fix searching for gcc, we only want executable files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67806 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
oolChain.h
|
069afd5c8c515ce483fd2f2a91daa355f66ff478 |
26-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Forward -fno-common to clang. - <rdar://problem/6710978> ccc/clang-driver ignore -fno-common git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67762 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
d7b88c2cb8986217f164203747d35c8f596e38c2 |
26-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Fix a number of option definition mismatches (flags instead of separate, or vice versa). Also, fix initialization of LinkingOutput variable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67757 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
70c8db1003af49d3627aeef41fcdd7c6c6a7df79 |
26-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Print the correct target when printing the version. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67756 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
d73fe9b70c5f6738d004744562287a62831f39bf |
26-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Move GetReleaseVersion to static Driver::GetReleaseVersion method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67754 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
524b9fb54564ab8bc437118ed55ee7c9e8c1247d |
26-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add ArgList::AddAllArgsTranslated; for forwarding options to tools with the name of the option replace, and arguments rendered separately. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67753 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
f6dd66b7b80e2fb42628df2593b3948149a53a5f |
25-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Replace Option::ForwardToGCC by Option::DriverOption (which matches the flag in Options.def). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67679 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
|
f3cad36e59a41b5767fe662b5ac8911ee174b801 |
25-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Prep for tool chain specific argument translation. - Lift ArgList to a base class for InputArgList and DerivedArgList. - This is not a great decomposition, but it does embed the translation into the type system, and keep things efficient for tool chains that don't want to do any translation. - No intended functionality change. Eventually I hope to get rid of tool chain specific translation and have each tool do the right thing, but for now this is the easiest way to match gcc precisely (which is good for testing). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67676 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ompilation.h
river.h
ption.h
ptions.h
oolChain.h
|
337a6271b98c4c183f7eaad1563a75260b4f2871 |
24-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Handle -flto, -O4, and tweak -emit-llvm to match llvm-gcc. - -emit-llvm no longer changes what compilation steps are done. - -emit-llvm and -emit-llvm -S write output files with .o and .s suffixes, respectively. - <rdar://problem/6714125> clang-driver should support -O4 and -flto, like llvm-gcc git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67645 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
ypes.def
|
0f99d2e57d8e3cf2508e7f9f868d41eccdc229c9 |
24-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Change default use of "clang" compiler. - Don't default to using clang for C++ (use -ccc-clang-cxx to override). - Default to only using clang on i386 and x86_64 (use -ccc-clang-archs "" to override). - <rdar://problem/6712350> [driver] clang should not be used on powerpc by default - <rdar://problem/6705767> driver should default to -ccc-no-clang-cxx I plan to add a warning that we are not using the clang compiler for the given compilation so that users do not think clang is being used in situations it isn't. This change is motivated by the desire to be able to drop clang into a build and have things "just work", even if it happens to get used to compile C++ code or code for an architecture we don't support yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67640 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
af80e1ffafeb77929cc0b9ba8940a7f1c0b80d51 |
24-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Move ToolChain::ShouldUseClangCompiler to Driver::ShouldUseClangCompiler. - No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67639 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
oolChain.h
|
b3fd500a1c486e9fb82d82e28828ead025462aeb |
24-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Translate -fverbose-asm for LLVM backend. - <rdar://problem/6715707> driver should translate -fverbose-asm into -asm-verbose git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67634 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
fe2e04a979205c1f395b699a24d74adb82bb4833 |
24-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: ArgList::getLastArg was in fact returning the first matching arg. - <rdar://problem/6715818> clang doesn't honor gcc semantic that last -O optimization option wins. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67628 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
d3dfdb8d98c39b400894e40ee679c1e7a3a57bf5 |
24-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
ccc/Driver: -r option doesn't take an argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67581 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
a880db0b0fc028abf754c290d921d809eec0518a |
23-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add two special groups of "whitelisted" options which we know clang doesn't support, and don't want to warn are unused. Eventually these should disappear. Here is a more readable list than is in the diff: W options: -Wall, -Wcast-align, -Wchar-align, -Wchar-subscripts, -Werror, -Wextra, -Winline, -Wint-to-pointer-cast, -Wmissing-braces, -Wmost, -Wnested-externs, -Wno-format-y2k, -Wno-four-char-constants, -Wno-missing-field-initializers, -Wno-trigraphs, -Wno-unknown-pragmas, -Wno-unused-parameter, -Wparentheses, -Wpointer-arith, -Wpointer-to-int-cast, -Wreturn-type, -Wshorten-64-to-32, -Wswitch, -Wunused-function, -Wunused-label, -Wunused-value, -Wunused-variable, -Wwrite-strings. f options: -fasm-blocks, -fmessage-length=. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67549 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
b355692a7f9349e9af747b6b444ce56e9228a696 |
23-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Check that options are ordered properly (outside of Release-Asserts mode). Also, avoid searching through option groups (which will never match). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67548 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.h
|
b0c4df5c4df69a003f26b378eb95961bc7c486e5 |
23-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Implement 'missing argument' error. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67490 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
ption.h
ptions.h
|
af96def468042cfbed55a4cc12b1bb917ead4f33 |
21-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Give Compilation::Execute total control over the Driver result code; and don't return an error code when -### is present, even if errors occur. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67425 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
9f9768c1ee1242ca0e665a070038b53f1f0c6799 |
21-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
ccc/Driver/clang-fe: Accept -fbuiltin, and forward -f[no-]builtin to clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67420 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
e33bea4ef34598e7a4a6a3a117392268998552d4 |
21-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
ccc/Driver: .s defaults to 'assembler-with-cpp' on Darwin. - <rdar://problem/6669441> ccc doesn't handle assembler-with-cpp semantics correctly (but clang supports it) - This is sad, because it requires a fairly useless target hook. C'est la vie. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67418 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
|
ee51031c3734176d00723054c765538fcffc0984 |
20-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add two option overload for AddAllArgValues. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67377 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
38dd3d54186cf44ea9d37f463c3f2800ab526b82 |
20-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add Arg::getAsString and use when dumping arguments to diagnostics. - This ensures that the whole argument and values are printed, instead of just the option name. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67366 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
|
ca3459e95f552cfae6c9c5fb4ed161e3a662c25e |
20-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Implement -print-search-dirs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67362 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
bbafc5c7645e41a52af688ef8f71a28b19fe4326 |
20-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Unbreak ToolChain::get{File,Program}Paths (which should return reference, not copy). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67361 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
4d7a089144f336b11e5e8ce437b3b27bce2b310d |
20-Mar-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Bindir and Win32 builds work, so switch to .inc files. Leave the .def files in the tree for a day or so longer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67346 91177308-0d34-0410-b5e6-96231b3b80d8
riverDiagnostic.h
|
ceafbc8f55e00345a85d5e6674d3339a45cbbf76 |
19-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Executing piped jobs with a single command is easy. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67295 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
|
42f7fc23044cc736db77878734258d35ad3dfe66 |
19-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add Arg::renderAsInput; this is a messy area and something I was hoping to clean up in the rewrite, but I don't see it yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67291 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
ptions.def
|
49b98e700e300b8a61b2f7fbb0bb22264e8ec27a |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Execute jobs; no pipe support yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67250 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
|
e530ad407af4a8904377592bfdb236acd320c6c2 |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Cleanup temporary/result files. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67248 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
|
0edefebc10fbc627d55d53936fc66178d1c08da1 |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Support ToolChain specific path lists to search for files and programs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67229 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
214399ebd73545dde02b4a45872e7ca9e1d9e742 |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Construct temporary file names. - This is still suboptimal, but should at least be workable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67223 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
1d46033f760ba5fd266ce59fe391fac473f04f52 |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Port Clang argument translation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67193 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
18a7f33af877fca8f72cfde00d52f4aef600547f |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add argument translation utilities to ArgList. - Support things like telling which -ffoo -fno-foo option won, and forwarding all arguments matching a certain set of options to the tool. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67189 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
e324ffe33e179f6167d18834e15c48c49e314bb4 |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Forgot to mark -### as a driver option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67184 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
6d954d788925e6b80077ef379c8eeb028cc31d0e |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add "d" flag to Options.def for options which are completely handled by driver. - This is not very precise, we use it to drive the "forward-to-gcc" predicate, when trying to talk to a generic gcc tool. - Slightly better than what ccc was doing, and should be good enough. Platforms which want a robust driver should implement a proper tool chain. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67181 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
ptions.def
|
871adcf4e41285e3f4c3b62eaa1b2e05b60b92da |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: ConstructJob also needs to know the destination (where to put its commands). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67179 91177308-0d34-0410-b5e6-96231b3b80d8
ob.h
ool.h
|
24b5560b6ea51b8a260194710468fa060775fc01 |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Implement -### (hard to tell, since we don't actually construct any jobs). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67177 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
|
cfcb96f610d6354234e8c33f3a25e340f6cd3a80 |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add forwarding methods to underlying list for PipedJob and JobList. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67176 91177308-0d34-0410-b5e6-96231b3b80d8
ob.h
|
456422c7eccee0e74893eb52b7fcd9171b6ea079 |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Make Arg::Claimed mutable. - This is unfortunate but necessary to retain any utility for const. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67173 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
|
d57ac5990d22592665a67a28fc5d39f1155424d3 |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Rename Command::Argv to Command::Arguments to make it clearer that this does not include the implicit first argument (the executable name). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67172 91177308-0d34-0410-b5e6-96231b3b80d8
ob.h
|
62cf601812e03dd9bc5df42b8ef06a0cdedc38bf |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add a dash of const. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67170 91177308-0d34-0410-b5e6-96231b3b80d8
ool.h
|
47ac7d27c44bd64a7d0fc03d4babc196cf2b8230 |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Stub out Tool::ConstructJob. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67169 91177308-0d34-0410-b5e6-96231b3b80d8
ool.h
til.h
|
10ffa9a4887d9376e3eb3598e40523d1b58773c9 |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Ditch Driver::DefaultToolChain, this can vary between compilations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67162 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
river.h
|
d9c834f6af12ab21d5d4af8150e6fb94eadda043 |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Err, didn't mean to commit this part yet. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67159 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
21549237f14505cfc2a18a06416372a36229d0ce |
18-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Move actions into Compilation, and construct the compilation earlier. - This gives us a simple ownership model, and allows clients access to more information should they ever want it. - We now free Actions correctly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67158 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
river.h
|
5c3c1d7b494660ba5e8983ee4584622750725ac2 |
17-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add -ccc-print-bindings option (for testing); the Python driver has no corresponding option. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67125 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
31b1e5437e7435879fc044afb77ff27096008e72 |
17-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add name to Tool (for testing/debugging) and move GCC_* tools into gcc:: namespace. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67120 91177308-0d34-0410-b5e6-96231b3b80d8
ool.h
|
670b7f4fe6720e91520ec5a993b33c00058ed77a |
17-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Stub out generic GCC tool selection. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67108 91177308-0d34-0410-b5e6-96231b3b80d8
ool.h
|
fa0cda430f7324404ddd74f41a3b8f5f749d7ec1 |
17-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Pass HostInfo reference into ToolChain. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67105 91177308-0d34-0410-b5e6-96231b3b80d8
oolChain.h
|
e504952bc89f79fc9ff54d5641ab30bb07ec435e |
17-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Pass Driver reference down into Host info, which will need it to pass to ToolChains, which may need Driver specific information (for example, to form search paths). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67102 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ostInfo.h
|
1fd6c4b8abbbdcbae0e221f35100102112dabff2 |
17-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Hide HostInfo implementations. - Also, normalize arch names a tad and stub out getToolChain implementations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67091 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ostInfo.h
|
cd4e186cdc1db0dcac937eb20afe8b5f5ff1a38d |
17-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add two option form of ArgList::getLastArg. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67090 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
441d060838a5797691777dfcc992ff836b73dcd1 |
17-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add logic for computing where to put job outputs (pipe, temporary file, user provided name, derived name). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67088 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
df78a9515c108677ed42c2b982c612362f18c277 |
17-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add list of temporary and result files to Compilation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67087 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
|
3494bb1e01eb5f90d4dc9c91b912daf945da4ff5 |
17-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add ArgList::MakeArgString and make ArgList::Make* const. - Slightly strange, but the idea is that the ArgList data structure is primarily a list of arguments; we want to allow clients to still add argument strings to an ArgList to avoid worrying about string lifetimes (or unnecessary string copying). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67086 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
f353c8cc2ee1cc16ff194b399a8d951f707fb129 |
16-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Implement majority tool binding logic. - Still need code for determining proper output location. - Doesn't work yet, of course, as the host isn't providing real tool chains. - Interface still has a few warts, but has gotten a nice bit of polish during the rewrite. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67038 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
586dc233bb88f2920c9f3638f69cef0ccd55dced |
16-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Migrate some data into the Compilation; after pipelining access to most data should go through the current Compilation, not the Driver (which shouldn't be specialized on variables for a single compilation). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67037 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
river.h
|
2ba38ba9a18b8ec88e2509fad622eeec01562769 |
16-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Sketch Tool and ToolChain classes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67036 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ool.h
oolChain.h
|
a1ead48a4e9961c7eb22592310c7e9c30cb56794 |
16-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Include Casting header definitions in a few places, add Action::getInputs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67035 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
ob.h
|
4abaed07d1b8037870a1c0de75746aa74d56c428 |
15-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Fix comment typo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67021 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
8d2554a2c3201aa664cbf2108cf9d57aa0aa4b0a |
15-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Start warning about unused arguments. - This has a number of current flaws, enabling now to flush out problems while bringing up other parts. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67015 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
|
8022fd46d45005de63306a7513aece20a1be16ed |
15-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Update ArgList::{hasArg,getLastArg} to optionally claim the arguments if they exist. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67014 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
e89b6b272f9f3b15afa56a701a4d7a6b1001ed34 |
14-Mar-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Revert the switch to the tablegen diags. It fails for seperate objdir builds and cmake builds, and I have no clue what to do about it. Revisit this after someone with a clue about the build systems has looked at it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67009 91177308-0d34-0410-b5e6-96231b3b80d8
riverDiagnostic.h
|
3801d71fbeb6e74a22cdd6a858e10d887bc29c7a |
14-Mar-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Switch diagnostics from .def to tablegen files. Please validate the Windows build. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67007 91177308-0d34-0410-b5e6-96231b3b80d8
riverDiagnostic.h
|
4db938ceb72dbaa5f7b50f6420a72629acbf29eb |
14-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add types::{isAcceptedByClang,isCXX} predicates. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66986 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.h
|
789e220d481371d52bd6265b5c414c5fe277f76b |
14-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add simple Job classes, simple wrappers for information about what processes to execute during a compilation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66985 91177308-0d34-0410-b5e6-96231b3b80d8
ob.h
|
f40ed17472a39097cc5039ed437445289487c9bf |
14-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Provide food and shelter for Action vtables. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66978 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
|
57b704d8d8f49bcaf856a3e37941d5ac6456eb50 |
13-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Sprinkle some consts in, stub out BuildJobs method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66968 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
13135a6171e5eb1dd0b10f49305bb757b8f8b20c |
13-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
ccc/Driver: Forward -fheinous-gnu-extensions to clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66915 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
3dbd6c51bcd8a730c3fe58e29d7e0d999a94fa91 |
13-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Some minor bug fixes. - language recognition was recognizing prefixes incorrectly. - -x none wasn't working. - test for "can lipo" was backwords. - missed a '"' in -ccc-print-phases git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66911 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.def
|
ba1021388e6839b76c8968b931189361c7286674 |
13-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Support -ccc-print-phases. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66888 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
85da0071a4ab7d6f06831d20bad79122d7407df7 |
13-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add cast<> support for Action, and some other accessors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66887 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
|
ad2a9af666efdd9afe3bb5f886bcb0d1c9a0f0c3 |
13-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Complete "pipelining" (building the list of abstract actions to perform). Still doesn't do anything interesting. - This code came out much cleaner than in ccc with the reworked phases & mapping of types to lists of compilation steps (phases) to perform. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66885 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
7ab25d5c03db34ca5cbca466a4caa224c4879ec6 |
13-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add remaining Action classes we need. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66882 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
|
c1b5fa81a2dfa4fea2e25bf057363658e7b43681 |
13-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add types::getNumCompilationPhases, getCompilationPhase to provide information about what steps should be done for a particular file type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66881 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.h
|
b1efcd824cad12284037cbb63e0312d16ac5c95a |
13-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Pull Phase info into separate file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66880 91177308-0d34-0410-b5e6-96231b3b80d8
hases.h
|
3bf8224fa3818b5afab529915018facffcb215ea |
13-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
ccc/Driver: Forward -fprint-source-range-info to clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66879 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
cb881672c2c46142ec1bdfa401c9818ae805db0f |
13-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Handle "immediate" options. Also, add some FIXMEs, improve doxygen & comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66857 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ostInfo.h
|
8b1604ece7bf6dc2ba811cd7d8767557e55e2ec2 |
13-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
ccc/Driver: Mark {dump{machine,specs,version}, print-{multi-{directory,lib,os-directory}, search-dirs} as unsupported instead of handling separately. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66848 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
7517ac00e40da7a0ee4ebf7451e7dc9da74f15d9 |
13-Mar-2009 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Bring in std::string to fix compilation on GCC 4.3 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66846 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
|
af61c71137d1f7239d6b9d7425ce083db7ba31df |
13-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Determine which compilation stages to run. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66844 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
ptions.def
|
2fe63e6adac0b9e5f52bcc3100b545e379417e6e |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add majority of driver-driver implementation. - Compare to driverdriver.c if bored; not completely fair since the driver gets a bit more code in other places to handle binding archs (for Xarch) but not completely unfair either. Fear not, extra Action classes will have a happy home for their vtables soon. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66817 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
|
d65bddcbe1385a4de212ecbbdc8919c54b3efeb0 |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Introduce ActionList typedef, tweak some constness. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66809 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
til.h
|
9f5ef9426fee383cb42b72cee1d6dc949c8c0189 |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add types::canLipoType helper method. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66807 91177308-0d34-0410-b5e6-96231b3b80d8
ypes.h
|
1e2d081e8073934ddc1198b6556c2e2f51c99eec |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add some HostInfo accessors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66806 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
|
bca58cb5100a4fdff63165af6a1742f5160ec73b |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add ArgList support for synthesizing arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66805 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
0c562a23a6560b5736077226ab31d6a9a216ccd3 |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add ArgList::getLastArg. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66794 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
4ad4b3ebbe5769143389dccfcfadb666a4ba5940 |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Use standard Diagnostic interface for diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66786 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
riverDiagnostic.h
|
53ec55215075c8f4ddd47ca6ed7d382f16beb670 |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Start sketching construction of abstract built actions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66783 91177308-0d34-0410-b5e6-96231b3b80d8
ction.h
river.h
|
e9fba573bd9433b89a12f747f2c4ccfa490a79cb |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add information on Driver input/temporary types. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66781 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
ypes.def
ypes.h
|
644eade617a4e2e665455accf18c455e8d025699 |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add Option flags. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66774 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
83293d268ee496a55423566a88a8af5630e22462 |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add definitions for all the gcc options the current ccc understands. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66769 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
|
b349fccc4a6e416483b0b36b4f74e39787c62344 |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Tweak option naming/def: - Use OPT_ prefix for ids. - Reference groups and aliases by shortend id (on the theory that this is more readable). - Rename the special option ids to more protected names. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66767 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
ptions.h
|
e1495eced887466e235f6a034953adf5ee1e14e6 |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Reorder arguments in Options.def so option name is first. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66759 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.def
ptions.h
|
d8cadd4f250d1b69373fc80477f67375d2c54820 |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add ArgList::hasArg, for testing for the presence of an argument matching some Option::ID. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66758 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
cf0dd156e7b9d6a70b7290f5af9646859631bd9a |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add Option::getId and Option::matches taking an option identifier; we will want to use the latter in situations where we just want to check for a match, but not load options unnecessarily. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66757 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
|
d377522ba694e52128b419c98dabae7086ccf9c6 |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add default index (=0) for Arg::getValue and add Arg::claim (will be used to emit "command line argument unused" diagnostics). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66756 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
|
f58e44caf071d81c8d38423978cd420c018c69e1 |
11-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Fix typo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66613 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
|
bf5fc320c8d772d44768413602dc82fd197552ea |
11-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add host info (add new files). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66604 91177308-0d34-0410-b5e6-96231b3b80d8
ostInfo.h
|
dd98e2cad165ca73c769e4f105a4e47c2216387a |
11-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add host info. - Replace assorted -ccc-host-* options by -ccc-host-triple which is more sane. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66600 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
365c02f65be026f90e67a8e00e7b827cee60e228 |
10-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Handle magic -ccc- options. - Follows ccc currently, but this functionality should eventually be outside the Driver lib. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66575 91177308-0d34-0410-b5e6-96231b3b80d8
river.h
|
0648262df75d97b464c2be0ed867da3615659785 |
05-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Basic argument parsing. - Add Driver::ParseArgStrings. - Store values directly in CommaJoinedArg to support simple access. - Add FlagArg class. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66142 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
river.h
ptions.def
|
f781c4192ee51a55c08ec53f054284ad1cdb2043 |
05-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add Arg::dump and SeparateArg stubs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66100 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
|
70a0dbbfbd933c80722549fef2d56de85c32d752 |
04-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add OptTable::ParseOneArg. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66090 91177308-0d34-0410-b5e6-96231b3b80d8
ptions.h
|
9358dc8d1edae6f9279647084e768c6da5715f73 |
04-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add ArgList::{append, getArgString} git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66089 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
fb36caee244b9954caf9d4dda73608980e9c45b8 |
04-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Stub out Arg implementations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66088 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
|
30b055f553ffa50ae5413ecf0f0ac8061c58f475 |
04-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Option's need to know their ID. - Also, add Input and Unknown opts to OptTable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66079 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
ptions.h
|
3e894bc92c3f7e6eaaa49c2ea3871be8ee43a100 |
04-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Pull intrusive list out of Arg; this isn't going to suffice. I will make this efficient later (if it even matters)... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66071 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
rgList.h
|
eec991a7041ce0142dc326c3ebe627119e3cae2e |
04-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Return reference for Arg::getOption(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66070 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
|
0f9098e093089e935066729ea06bc86c23d9a432 |
04-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add Option flags. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66067 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
|
3c9cc6bfe933766a8b4177a3f69841b2344ec48a |
04-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Tweak Option::accept interface. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66066 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
|
1b3bb6efc59a21f794b534078f9ae7e95393f510 |
04-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Sink Driver/Compilation into clang::driver namespace. - Add OptTable instance to Driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66063 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
river.h
|
6ac1e2252b1a16fd8841c4b1af8fe41b820aa41d |
04-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Add ArgList implementation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66037 91177308-0d34-0410-b5e6-96231b3b80d8
rgList.h
|
2c6f6f3c170502c5b810102cf85f05732a2aa9d0 |
04-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: More Option implementation. - Add Options.def file, collects option information. - Actual option instantiation is handled lazily by OptTable to allow the driver to not need to instantiate all options. - cast<> support for Option, other minor tweaks. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66028 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
ptions.def
ptions.h
|
d35e63106d7b4b76275c85c88ee715c4356f2a6b |
03-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Hush gcc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65952 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
|
0258eeeac5ecbc67b6a09e3497f3d593db01903b |
03-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Driver: Sketch Arg & ArgList classes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65937 91177308-0d34-0410-b5e6-96231b3b80d8
rg.h
rgList.h
til.h
|
1eb4e64eed08837b85a375d6a953503daa844f07 |
03-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Sketch Driver Option classes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65933 91177308-0d34-0410-b5e6-96231b3b80d8
ption.h
|
3ede8d0a7d1813f678ccc6011a99a0834b1b6116 |
02-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Stub out some structure for C++ driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65867 91177308-0d34-0410-b5e6-96231b3b80d8
ompilation.h
river.h
|
e1bd4e6d7c5b13462f83245865f7d9e9b6ea8486 |
02-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Rename lib/Driver (etc) to lib/Frontend in prep for the *actual* driver taking lib/Driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65811 91177308-0d34-0410-b5e6-96231b3b80d8
ompileOptions.h
nitHeaderSearch.h
anagerRegistry.h
athDiagnosticClients.h
extDiagnosticBuffer.h
extDiagnosticPrinter.h
|
4b2d3f7bcc4df31157df443af1b80bcaa9b58bba |
26-Feb-2009 |
Douglas Gregor <dgregor@apple.com> |
Introduce code modification hints into the diagnostics system. When we know how to recover from an error, we can attach a hint to the diagnostic that states how to modify the code, which can be one of: - Insert some new code (a text string) at a particular source location - Remove the code within a given range - Replace the code within a given range with some new code (a text string) Right now, we use these hints to annotate diagnostic information. For example, if one uses the '>>' in a template argument in C++98, as in this code: template<int I> class B { }; B<1000 >> 2> *b1; we'll warn that the behavior will change in C++0x. The fix is to insert parenthese, so we use code insertion annotations to illustrate where the parentheses go: test.cpp:10:10: warning: use of right-shift operator ('>>') in template argument will require parentheses in C++0x B<1000 >> 2> *b1; ^ ( ) Use of these annotations is partially implemented for HTML diagnostics, but it's not (yet) producing valid HTML, which may be related to PR2386, so it has been #if 0'd out. In this future, we could consider hooking this mechanism up to the rewriter to actually try to fix these problems during compilation (or, after a compilation whose only errors have fixes). For now, however, I suggest that we use these code modification hints whenever we can, so that we get better diagnostics now and will have better coverage when we find better ways to use this information. This also fixes PR3410 by placing the complaint about missing tokens just after the previous token (rather than at the location of the next token). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65570 91177308-0d34-0410-b5e6-96231b3b80d8
extDiagnosticPrinter.h
|
676f0242a86d7652de586cff360c07c4e752035b |
20-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
map source ranges through macro expansions. Before: t.m:5:2: error: invalid operands to binary expression ('typeof(P)' (aka 'struct mystruct') and 'typeof(F)' (aka 'float')) MAX(P, F); ^~~~~~~~~ t.m:1:78: note: instantiated from: #define MAX(A,B) ({ __typeof__(A) __a = (A); __typeof__(B) __b = (B); __a < __b ? __b : __a; }) ^ (no ranges on the second diagnostics) After: t.m:5:2: error: invalid operands to binary expression ('typeof(P)' (aka 'struct mystruct') and 'typeof(F)' (aka 'float')) MAX(P, F); ^~~~~~~~~ t.m:1:78: note: instantiated from: #define MAX(A,B) ({ __typeof__(A) __a = (A); __typeof__(B) __b = (B); __a < __b ? __b : __a; }) ~~~ ^ ~~~ (ranges!) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65090 91177308-0d34-0410-b5e6-96231b3b80d8
extDiagnosticPrinter.h
|
ebbbb1b211119e13229c487dfc1713e8d1e77a41 |
20-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
refactor, pass ranges down instead of the whole DiagnosticInfo. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65088 91177308-0d34-0410-b5e6-96231b3b80d8
extDiagnosticPrinter.h
|
d000c9ec6e1562e5e1eed2236a67fa9848bf8201 |
19-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
standardise on bastardised american spelling. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65027 91177308-0d34-0410-b5e6-96231b3b80d8
nitHeaderSearch.h
|
6858dd3fcc2d3ac6a706a0294be1d3ac51849022 |
19-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
fix a bug introduced in my previous patch: moving clang headers to the "after" group instead of the system group makes it so #include <limits.h> picks up the *system* limits.h file before clang's. This causes a failure on linux and is definitely not what we want. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65026 91177308-0d34-0410-b5e6-96231b3b80d8
nitHeaderSearch.h
|
445026698ca8f97ee7320464dedbe0d077b32d16 |
18-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
move llvm backend specific #includes into Backend.cpp instead of Clang.cpp git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64872 91177308-0d34-0410-b5e6-96231b3b80d8
ompileOptions.h
|
a034ba807be38d9166998d68af71226c64c5c8dd |
17-Feb-2009 |
Daniel Dunbar <daniel@zuster.org> |
Backend: Accept -mcpu and -mattr for use by TargetMachine. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64798 91177308-0d34-0410-b5e6-96231b3b80d8
ompileOptions.h
|
b88af81958b4438a04175ea46d3b4c109ad4625e |
17-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
break down EmitCaretDiagnostic to use more primitive calls. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64754 91177308-0d34-0410-b5e6-96231b3b80d8
extDiagnosticPrinter.h
|
94f55784145e7e3f1414b5368d715fa43ca3b273 |
17-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
split caret diagnostic printing out into its own function. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64751 91177308-0d34-0410-b5e6-96231b3b80d8
extDiagnosticPrinter.h
|
b8bf65e342d0872222f7ac10007d2837d7df437f |
30-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
" Attached is a patch for TextDiagnosticPrinter that adds an optional parameter that allows users to omit the printing of the source location on a diagnostic. So basically it would omit the "abc.c:5:1: " at the beginning of the line." Patch by Alexei Svitkine! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63396 91177308-0d34-0410-b5e6-96231b3b80d8
extDiagnosticPrinter.h
|
95effa1e2df6db814add998b0495a12bc58b621e |
29-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
remove two empty files git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63319 91177308-0d34-0410-b5e6-96231b3b80d8
riverDiagnostic.h
|
19e8e2cffc19606d0f44e7c2897cd126ffd3f9b0 |
29-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
next round of diagnostics cleanups, moving some diags around, eliminating #defines, etc. Patch by Anders Johnsen! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63318 91177308-0d34-0410-b5e6-96231b3b80d8
riverDiagnostic.h
|
88eccaf06f9d88191723e71bdf5ca68409393be6 |
29-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Fix -Wimplicit-function-declaration, which required some refactoring and changes in various diagnostics code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63282 91177308-0d34-0410-b5e6-96231b3b80d8
riverDiagnostic.h
|
500d3297d2a21edeac4d46cbcbe21bc2352c2a28 |
29-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
move library-specific diagnostic headers into library private dirs. Reduce redundant #includes. Patch by Anders Johnsen! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63271 91177308-0d34-0410-b5e6-96231b3b80d8
riverDiagnostic.h
|
b9c3f966b103f7cfe8e5e60007c4c8b38f7298eb |
27-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Introduce a new PresumedLoc class to represent the concept of a location as reported to the user and as manipulated by #line. This is what __FILE__, __INCLUDE_LEVEL__, diagnostics and other things should follow (but not dependency generation!). This patch also includes several cleanups along the way: - SourceLocation now has a dump method, and several other places that did similar things now use it. - I cleaned up some code in AnalysisConsumer, but it should probably be simplified further now that NamedDecl is better. - TextDiagnosticPrinter is now simplified and cleaned up a bit. This patch is a prerequisite for #line, but does not actually provide any #line functionality. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63098 91177308-0d34-0410-b5e6-96231b3b80d8
extDiagnosticPrinter.h
|
3b4d5e955e819dd3a4bed37ea2e47d6e4cb05274 |
17-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Rename SourceLocation::getFileID to getChunkID, because it returns the chunk ID not the file ID. This exposes problems in TextDiagnosticPrinter where it should have been using the canonical file ID but wasn't. Fix these along the way. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62427 91177308-0d34-0410-b5e6-96231b3b80d8
extDiagnosticPrinter.h
|
5abf03bbb9e8703d41bd241a4733d930791fd972 |
27-Nov-2008 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Add license comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60144 91177308-0d34-0410-b5e6-96231b3b80d8
anagerRegistry.h
|
22438a8dfe9f2f273c0b1a47f3f80be782ea6f09 |
27-Nov-2008 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Add support for pluggable components of static analyzer. - Creator function pointers are saved in ManagerRegistry. - The Register* class is used to notify ManagerRegistry new module is available. - AnalysisManager queries ManagerRegistry for configurable module. Then it passes them to GRExprEngine, in turn to GRStateManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60143 91177308-0d34-0410-b5e6-96231b3b80d8
anagerRegistry.h
|
a03a5b5a84989b1cbd3917b967e8fe64f99cfa80 |
19-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
switch TextDiagnosticPrinter to raw_ostream. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59597 91177308-0d34-0410-b5e6-96231b3b80d8
extDiagnosticPrinter.h
|
0a14eee528a901c16f0e288fbc10a3abc1660d87 |
18-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
This reworks some of the Diagnostic interfaces a bit to change how diagnostics are formed. In particular, a diagnostic with all its strings and ranges is now packaged up and sent to DiagnosticClients as a DiagnosticInfo instead of as a ton of random stuff. This has the benefit of simplifying the interface, making it more extensible, and allowing us to do more checking for things like access past the end of the various arrays passed in. In addition to introducing DiagnosticInfo, this also substantially changes how Diagnostic::Report works. Instead of being passed in all of the info required to issue a diagnostic, Report now takes only the required info (a location and ID) and returns a fresh DiagnosticInfo *by value*. The caller is then free to stuff strings and ranges into the DiagnosticInfo with the << operator. When the dtor runs on the DiagnosticInfo object (which should happen at the end of the statement), the diagnostic is actually emitted with all of the accumulated information. This is a somewhat tricky dance, but it means that the accumulated DiagnosticInfo is allowed to keep pointers to other expression temporaries without those pointers getting invalidated. This is just the minimal change to get this stuff working, but this will allow us to eliminate the zillions of variant "Diag" methods scattered throughout (e.g.) sema. For example, instead of calling: Diag(BuiltinLoc, diag::err_overload_no_match, typeNames, SourceRange(BuiltinLoc, RParenLoc)); We will soon be able to just do: Diag(BuiltinLoc, diag::err_overload_no_match) << typeNames << SourceRange(BuiltinLoc, RParenLoc)); This scales better to support arbitrary types being passed in (not just strings) in a type-safe way. Go operator overloading?! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59502 91177308-0d34-0410-b5e6-96231b3b80d8
extDiagnosticBuffer.h
extDiagnosticPrinter.h
|
2383b7f6aea2cb2bf2b5bfc0ec730f9354fecbbf |
18-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Change the diagnostics interface to take an array of pointers to strings instead of array of strings. This reduces string copying in some not-very-important cases, but paves the way for future improvements. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59494 91177308-0d34-0410-b5e6-96231b3b80d8
extDiagnosticBuffer.h
extDiagnosticPrinter.h
|
4fc82c84581476cb3adba8d4107ded22851d9c4d |
04-Nov-2008 |
Ted Kremenek <kremenek@apple.com> |
Hook up the Plist diagnostic client to the driver. Fix Plist output. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58652 91177308-0d34-0410-b5e6-96231b3b80d8
athDiagnosticClients.h
|
5d866256333fb6115a8a86ac4f89b2ca36e20c70 |
03-Nov-2008 |
Ted Kremenek <kremenek@apple.com> |
Add path diagnostics client for emitting path reports using Plists. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58647 91177308-0d34-0410-b5e6-96231b3b80d8
athDiagnosticClients.h
|
ad99dbfc1d9178f9f5c415a81ad5bd39bd09d4b6 |
03-Nov-2008 |
Ted Kremenek <kremenek@apple.com> |
Rename 'HTMLDiagnostics.h' to 'PathDiagnosticClients.h' git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58646 91177308-0d34-0410-b5e6-96231b3b80d8
TMLDiagnostics.h
athDiagnosticClients.h
|
8e8f3b7f61548391b675831f350b4ede040dfdce |
29-Oct-2008 |
Daniel Dunbar <daniel@zuster.org> |
Choose CompileOptions (optimization passes) to match llvm-gcc more closely. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58361 91177308-0d34-0410-b5e6-96231b3b80d8
ompileOptions.h
|
70f92436f5828c11ef108463da4473d44e114c28 |
23-Oct-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add -O[0-3s] support (following llvm-gcc). - Passes match llvm-gcc but many of the switches aren't wired. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58034 91177308-0d34-0410-b5e6-96231b3b80d8
ompileOptions.h
|
233f74b29b2864d5984e13f3ae10a21404ef82e8 |
11-Sep-2008 |
Douglas Gregor <dgregor@apple.com> |
Add support for expected-note to Clang's -verify option git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@56089 91177308-0d34-0410-b5e6-96231b3b80d8
extDiagnosticBuffer.h
|
8148839c105992f00be9fd23f68f2139a9112ebf |
24-Aug-2008 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Moved HTMLDiagnostics to lib/Driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55274 91177308-0d34-0410-b5e6-96231b3b80d8
TMLDiagnostics.h
|
0fca022d77b89100e746f4d659b84ed5b1ee0158 |
22-Aug-2008 |
Nico Weber <nicolasweber@gmx.de> |
Move most of HeaderSearch initialization to libDriver. For example, adding the default system include paths in clients is now as simple as InitHeaderSearch init(headers); init.AddDefaultSystemIncludePaths(langopts); init.Realize(); git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55174 91177308-0d34-0410-b5e6-96231b3b80d8
nitHeaderSearch.h
|
7bfaaaecb3113f955db31e8d8a51acffd1bc0c27 |
10-Aug-2008 |
Nico Weber <nicolasweber@gmx.de> |
* Remove isInSystemHeader() from DiagClient, move it to SourceManager * Move FormatError() from TextDiagnostic up to DiagClient, remove now empty class TextDiagnostic * Make DiagClient optional for Diagnostic This fixes the following problems: * -html-diags (and probably others) does now output the same set of warnings as console clang does * nothing crashes if one forgets to call setHeaderSearch() on TextDiagnostic * some code duplication is removed git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54620 91177308-0d34-0410-b5e6-96231b3b80d8
extDiagnosticBuffer.h
extDiagnosticPrinter.h
extDiagnostics.h
|
aad6953ca1149d44cebadca8839745796bfd524e |
09-Aug-2008 |
Gordon Henriksen <gordonhenriksen@mac.com> |
Expressive diagnostics-- worth their weight in gold? (Fixing a spelling error.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54591 91177308-0d34-0410-b5e6-96231b3b80d8
extDiagnosticPrinter.h
|
fd54ebcaaf9a165846fdfafb32362238458e7f2d |
06-Aug-2008 |
Nico Weber <nicolasweber@gmx.de> |
add a libDriver, for now only move the text diangostics stuff from Driver to there git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54383 91177308-0d34-0410-b5e6-96231b3b80d8
extDiagnosticBuffer.h
extDiagnosticPrinter.h
extDiagnostics.h
|