llvm-project/clang/test/Frontend
Richard Smith f667ad5f98 Add flag to request Clang is ABI-compatible with older versions of itself
This patch adds a flag -fclang-abi-compat that can be used to request that
Clang attempts to be ABI-compatible with some older version of itself.

This is provided on a best-effort basis; right now, this can be used to undo
the ABI change in r310401, reverting Clang to its prior C++ ABI for pass/return
by value of class types affected by that change, and to undo the ABI change in
r262688, reverting Clang to using integer registers rather than SSE registers
for passing <1 x long long> vectors. The intent is that we will maintain this
backwards compatibility path as we make ABI-breaking fixes in future.

The reversion to the old behavior for r310401 is also applied to the PS4 target
since that change is not part of its platform ABI (which is essentially to do
whatever Clang 3.2 did).

llvm-svn: 311823
2017-08-26 01:04:35 +00:00
..
Inputs Un-revert "[Driver] Add -fdiagnostics-hotness-threshold" 2017-07-01 05:45:26 +00:00
Weverything.c
Wno-everything.c
aarch64-target-cpu.c [AArch64] Vulcan is now ThunderXT99 2017-03-07 21:24:53 +00:00
absolute-paths.c Add support for -fdiagnostics-absolute-paths: printing absolute paths in diagnostics 2016-08-26 15:45:36 +00:00
ast-codegen.c Revert "Revert r241620 and follow-up commits" and move the initialization 2015-07-08 01:00:30 +00:00
ast-main.c
ast-main.cpp
backend-diagnostic.c
backend-option.c Pass -backend-option to LLVM when there is no target machine. 2016-04-12 20:22:32 +00:00
cc1-return-codes.c
clang-abi-compat.cpp Add flag to request Clang is ABI-compatible with older versions of itself 2017-08-26 01:04:35 +00:00
cpp-output.c
darwin-eabi.c
darwin-version.c Allow iOS and tvOS version numbers with 2-digit major version numbers. 2016-07-18 20:29:14 +00:00
dependency-gen-escaping.c clang/test/Frontend/dependency-gen-escaping.c: Appease win32 hosts. Investigating. 2015-05-14 07:37:35 +00:00
dependency-gen.c Re-apply r267784, r267824 and r267830. 2016-04-28 17:09:37 +00:00
dependency-generation-crash.c Fix typo in my last commit. 2015-03-03 00:12:08 +00:00
diagnostics-option-names.c
disable-output.c
embed-bitcode.ll Change embed-bitcode linkage type 2016-05-16 18:54:58 +00:00
exceptions.c Frontend: Define __EXCEPTIONS if -fexceptions is passed 2014-10-27 20:02:19 +00:00
force-include-not-found.c Add back null check removed accidentally in r250554 2015-10-20 18:45:57 +00:00
gnu-inline.c Don't accept -std= values that would switch us to a different source language. 2017-04-26 23:44:33 +00:00
gnu-mcount.c Remove Bitrig: Clang Changes 2017-07-21 22:46:31 +00:00
hexagon-target-basic.c
iframework.c Add -iframeworkwithsysroot compiler option 2017-03-13 11:17:41 +00:00
include-duplicate-removal.c [Frontend] Fix an issue where a quoted search path is incorrectly 2016-12-02 09:51:51 +00:00
int128.cpp Provide __GLIBCXX_TYPE_INT_N_0 and __GLIBCXX_BITSIZE_INT_N_0 when in C++ gnu language extensions. 2016-07-21 07:44:41 +00:00
invalid-o-level.c Fix handling of invalid -O options. 2014-12-16 21:57:03 +00:00
ir-support-codegen.ll
ir-support-errors.ll
ir-support.c Account for differences in grep implementations 2014-06-27 03:11:38 +00:00
lit.local.cfg [OpenCL] Actually activate Frontend/opencl.cl test and fix test bugs 2016-07-14 12:56:21 +00:00
macros.c
mfpmath.c
mips-long-double.c
objc-bool-is-bool.m [Frontend] The macro that describes the Objective-C bool type should 2017-01-20 16:48:25 +00:00
opencl.cl [OpenCL] Actually activate Frontend/opencl.cl test and fix test bugs 2016-07-14 12:56:21 +00:00
optimization-remark-analysis.c Add backend dignostic printer for unsupported features 2016-02-02 13:52:52 +00:00
optimization-remark-line-directive.c Stop messing with the 'g' group of options in CompilerInvocation. 2015-10-08 04:24:12 +00:00
optimization-remark-options.c [ValueTracking] Enabling ValueTracking patch by default (recommit). Part 1. 2017-08-10 11:22:52 +00:00
optimization-remark-with-hotness.c [clang] Fix tests for Emitting Single Inline Remark 2017-08-21 16:40:35 +00:00
optimization-remark.c [clang] Fix tests for Emitting Single Inline Remark 2017-08-21 16:40:35 +00:00
output-failures.c This test was updated in r216397, but was failing on Windows due to mixed path separators as well as case sensitivity of the "no" in "no such file or directory." Rather than revert this file back to its original form, I've made some incredibly ugly regexes so that it will pass everywhere. 2014-08-26 14:09:25 +00:00
plugin-annotate-functions.c Add a PragmaHandler Registry for plugins to add PragmaHandlers to 2016-04-04 14:22:58 +00:00
plugin-delayed-template.cpp Don't leak TemplateIds when a plugin parses late-parsed templates at TU end. 2015-05-17 01:07:16 +00:00
plugin-vs-debug-info.cpp Give this test that uses Itanium mangling a triple 2016-11-30 00:31:16 +00:00
plugins.c Revert r260266 (and r260276), "clang-cl: Enable plugins on Windows" 2016-02-11 16:43:08 +00:00
pp-only-no-editor-placeholders.c [PR33394] Avoid lexing editor placeholders when Clang is used only 2017-06-16 20:13:39 +00:00
preprocessed-input.i Use filename in linemarker when compiling preprocessed source (Revised) 2017-03-07 20:20:23 +00:00
preprocessed-output-macro-first-token.c
print-header-includes.c clang-cl: Include /FI headers in /showIncludes output. 2016-03-23 18:00:22 +00:00
profile-sample-use-loc-tracking.c Use NoDebug compile units to mark debug metadata used only for sample-based 2016-04-08 22:43:06 +00:00
remove-file-on-signal.c [Support] Use FILE_SHARE_DELETE to fix RemoveFileOnSignal on Windows 2017-08-04 21:52:00 +00:00
rewrite-includes-bom.c Revert "clang/test/Driver/crash-report.c: This requires rewriter for -frewrite-includes. [PR20321]" 2014-07-16 15:12:48 +00:00
rewrite-includes-cli-include.c Revert "clang/test/Driver/crash-report.c: This requires rewriter for -frewrite-includes. [PR20321]" 2014-07-16 15:12:48 +00:00
rewrite-includes-eof.c Revert "clang/test/Driver/crash-report.c: This requires rewriter for -frewrite-includes. [PR20321]" 2014-07-16 15:12:48 +00:00
rewrite-includes-filenotfound.c PR32848: There isn't necessarily a FileChanged or FileSkipped for every InclusionDirective callback. 2017-06-02 01:05:44 +00:00
rewrite-includes-header-cmd-line.c Revert "clang/test/Driver/crash-report.c: This requires rewriter for -frewrite-includes. [PR20321]" 2014-07-16 15:12:48 +00:00
rewrite-includes-invalid-hasinclude.c Revert "clang/test/Driver/crash-report.c: This requires rewriter for -frewrite-includes. [PR20321]" 2014-07-16 15:12:48 +00:00
rewrite-includes-line-markers.c PR26771: don't forget the " 2" (returning from #included file) linemarker after including an empty file with -frewrite-includes. 2017-04-29 00:54:03 +00:00
rewrite-includes-messages.c Revert "clang/test/Driver/crash-report.c: This requires rewriter for -frewrite-includes. [PR20321]" 2014-07-16 15:12:48 +00:00
rewrite-includes-missing.c Revert "clang/test/Driver/crash-report.c: This requires rewriter for -frewrite-includes. [PR20321]" 2014-07-16 15:12:48 +00:00
rewrite-includes-modules.c Add pragma to perform module import and use it in -E output. 2017-04-29 00:34:47 +00:00
rewrite-includes-warnings.c Revert "clang/test/Driver/crash-report.c: This requires rewriter for -frewrite-includes. [PR20321]" 2014-07-16 15:12:48 +00:00
rewrite-includes.c Revert "clang/test/Driver/crash-report.c: This requires rewriter for -frewrite-includes. [PR20321]" 2014-07-16 15:12:48 +00:00
rewrite-macros.c Revert "clang/test/Driver/crash-report.c: This requires rewriter for -frewrite-includes. [PR20321]" 2014-07-16 15:12:48 +00:00
source-col-map.c This test requires UTF-8 output to print the UT-8 characters. 2015-09-11 13:29:12 +00:00
stats-file.c CC1: Add -save-stats option 2016-09-26 18:53:34 +00:00
stdin.c
stdlang.c [OpenCL] Allow -std={cl|CL}{|1.1|1.2|2.0} in driver 2016-06-17 17:19:28 +00:00
system-header-line-directive-ms-lineendings.c Remove .gitattributes, add comment to lineendings. 2017-08-24 23:25:05 +00:00
system-header-line-directive.c Add test coverage for recent behavior change in GNU line marker pre-processing 2017-05-23 16:09:13 +00:00
system-header-prefix.c
trigraphs.cpp Add driver flags -ftrigraphs, -fno-trigraphs. 2014-12-23 22:32:37 +00:00
undef.c
unknown-pragmas.c
verify-directive.h
verify-fatal.c
verify-ignore-unexpected.c Add `-verify-ignore-unexpected` option to ignore unexpected diagnostics in VerifyDiagnosticsConsumer 2015-06-13 07:11:40 +00:00
verify-unknown-arg.c Destroy the diagnostic client first in ~DiagnosticEngine 2014-12-17 20:23:11 +00:00
verify.c Provide -verify support to match "any" line for diagnostics in included files. 2014-07-10 16:43:29 +00:00
verify2.c Provide -verify support to match "any" line for diagnostics in included files. 2014-07-10 16:43:29 +00:00
verify2.h Provide -verify support to match "any" line for diagnostics in included files. 2014-07-10 16:43:29 +00:00
verify3.c
warning-mapping-1.c
warning-mapping-2.c
warning-mapping-3.c
warning-mapping-4.c
warning-mapping-5.c
warning-options.cpp Use -Rblah, not -Wblah, to control remark diagnostics. This was always the 2014-08-07 00:24:21 +00:00
windows-nul.c
x86-target-cpu.c [X86] Add recent CPU strings to some of the tests that check other cpu names. 2017-01-10 06:02:16 +00:00
x86_64-nacl-types.cpp Fix copy-paste errors in the test 2015-02-23 22:08:10 +00:00