| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
llvm::report_fatal_error() generate preprocessed source + reproducer.sh again.
Added a test for #pragma clang __debug llvm_fatal_error to test for the original issue.
Added llvm::sys::Process::Exit() and replaced ::exit() in places where it was appropriate. This new function would call the current CrashRecoveryContext if one is running on the same thread; or call ::exit() otherwise.
Fixes PR44705.
Differential Revision: https://reviews.llvm.org/D73742
(cherry picked from commit faace365088a2a3a4cb1050a9facfc34a7a56577)
|
|
|
|
|
|
|
|
|
|
|
| |
crashing when generating crash diagnostics when '#pragma clang __debug ..."
This re-lands commits f41ec709d9d388dc43469e6ac7f51b6313f7e4af (https://reviews.llvm.org/D74076)
and commit 5fedc2b410853a6aef05e8edf19ebfc4e071e28f (https://reviews.llvm.org/D74070)
The previous build break was caused by '#pragma clang __debug llvm_unreachable' used in a non-assert build. Move it to a separate test in crash-report-with-asserts.c.
(cherry picked from commit 75f09b54429bee17a96e2ba7a2ac0f0a8a7f7e74)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
lit internal shell now"
Plus change run lines from
not env FOO=bar %clang
to
env FOO=bar not %clang
To not confuse the internal shell.
llvm-svn: 334494
|
|
|
|
|
|
|
|
|
|
| |
lit internal shell now"
The tests fail on Windows bots, and for me locally.
> Enable crash recovery tests on Windows, globs work in the lit internal shell now
llvm-svn: 334493
|
|
|
|
| |
llvm-svn: 334418
|
|
|
|
| |
llvm-svn: 320398
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As reported in llvm bugzilla 32377.
Here’s a patch to add preinclude of stdc-predef.h.
The gcc documentation says “On GNU/Linux, <stdc-predef.h> is pre-included.” See https://gcc.gnu.org/gcc-4.8/porting_to.html;
The preinclude is inhibited with –ffreestanding.
Basically I fixed the failing test cases by adding –ffreestanding which inhibits this behavior.
I fixed all the failing tests, including some in extra/test, there's a separate patch for that which is linked here
Note: this is a recommit after a test failure took down the original (r318669)
Patch By: mibintc
Differential Revision: https://reviews.llvm.org/D34158
llvm-svn: 320391
|
|
|
|
|
|
| |
Broke some libclang tests, so reverting for now.
llvm-svn: 318698
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As reported in llvm bugzilla 32377.
Here’s a patch to add preinclude of stdc-predef.h.
The gcc documentation says “On GNU/Linux, <stdc-predef.h> is pre-included.”
See https://gcc.gnu.org/gcc-4.8/porting_to.html;
The preinclude is inhibited with –ffreestanding.
Basically I fixed the failing test cases by adding –ffreestanding which inhibits
this behavior.
I fixed all the failing tests, including some in extra/test, there's a separate
patch for that which is linked here
Patch By: mibintc
Differential Revision: https://reviews.llvm.org/D34158
llvm-svn: 318669
|
|
|
|
|
|
|
|
|
| |
scripts
These two arguments tend to refer to a local path that won't exist
when we try to reproduce a bug. Strip them.
llvm-svn: 244179
|
|
|
|
| |
llvm-svn: 243237
|
|
|
|
| |
llvm-svn: 243236
|
|
|
|
|
|
|
|
| |
Guessing which file name to replace based on the -main-file-name
argument to -cc1 is flawed. Instead, keep track of which arguments are
inputs to each command.
llvm-svn: 242504
|
|
|
|
|
|
|
| |
Similarly to r231989, the driver arguments can be quite helpful in
diagnosing a crash.
llvm-svn: 241786
|
|
|
|
|
|
|
|
|
|
| |
When a crash report script doesn't work for a reproduction on your
machine for one reason or another, it can be really tricky to figure
out why not. The compiler version that crashed and the original
command line before stripping flags are very helpful when this comes
up.
llvm-svn: 231989
|
|
|
|
|
|
|
|
| |
This fixes crash report generation when filenames have spaces. It also
removes an awkward workaround that quoted *some* arguments when
generating crash reports.
llvm-svn: 220307
|
|
|
|
|
|
| |
These tests were a little bit too flexible in terms of filenames.
llvm-svn: 220265
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-frewrite-includes. [PR20321]"
We've decided to make the core rewriter class and PP rewriters mandatory.
They're only a few hundred lines of code in total and not worth supporting as a
distinct build configuration, especially since doing so disables key compiler
features.
This reverts commit r213150.
Revert "clang/test: Introduce the feature "rewriter" for --enable-clang-rewriter."
This reverts commit r213148.
Revert "Move clang/test/Frontend/rewrite-*.c to clang/test/Frontend/Rewriter/"
This reverts commit r213146.
llvm-svn: 213159
|
|
|
|
|
|
| |
-frewrite-includes. [PR20321]
llvm-svn: 213150
|
|
|
|
| |
llvm-svn: 211806
|
|
|
|
|
|
| |
Based on a review of r211411 by Jordan Rose.
llvm-svn: 211572
|
|
|
|
| |
llvm-svn: 211421
|
|
|
|
|
|
|
|
|
|
|
| |
It's more flexible and arguably better layering to set flags to modify
compiling for diagnostics in the CC1 job themselves, rather than
tweaking the driver flags and letting them propagate.
There is one visible change this causes: crash report files will now
get preprocessed names (.i and friends).
llvm-svn: 211411
|
|
|
|
|
|
|
| |
inputs to the preprocessor, check for invalid types first because not
all linker inputs have an option value to retrieve.
llvm-svn: 207454
|
|
|
|
|
|
|
| |
The modules cache path shouldn't be included in crash reports, as it's
a system (or run) specific directory.
llvm-svn: 206922
|
|
|
|
|
|
| |
They are cc1 options only, so the driver was ignoring them.
llvm-svn: 191379
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
llvm-svn: 190620
|
|
|
|
|
|
| |
templates from Parser to Sema.
llvm-svn: 187770
|
|
|
|
|
|
| |
Sema.
llvm-svn: 187768
|
|
|
|
|
|
|
|
| |
Investigating.
I met a message, "fatal error: file 'nul' modified since it was first processed".
llvm-svn: 187767
|
|
|
|
|
|
|
| |
Some versions of python will expand the glob used in the test, others wont,
causing the test to fail when run with LIT_USE_INTERNAL_SHELL=1.
llvm-svn: 185653
|
|
|
|
|
|
|
| |
This is at least good documentation, but also opens the possibility of
using pipefail.
llvm-svn: 185652
|
|
|
|
|
|
| |
due to FORCE_CLANG_DIAGNOSTICS_CRASH=1. Also add a test for that env var.
llvm-svn: 171074
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
llvm-svn: 167152
|
|
|
|
|
|
|
|
| |
-internal-externc-isystem.
rdar://11949066
llvm-svn: 160752
|
|
|
|
|
|
|
| |
-iwithprefixbefore, and -isystem options, per Matt's suggestion.
rdar://11949066
llvm-svn: 160750
|
|
|
|
|
|
|
|
|
| |
-Strip -iquote and -M options.
-Quote -D options to avoid problems with command line macros that include
parens.
rdar://11949066
llvm-svn: 160743
|
|
|
|
|
|
| |
also with gnuwin32.
llvm-svn: 160362
|
|
|
|
|
|
|
|
|
|
|
| |
- lib/Driver/Driver.cpp, tools/driver/driver.cpp: Exit status should not be propagated, although clang driver should catch exceptions.
- test/Driver/crash-report.c: Add REQUIRES:shell for now.
FIXME: setenv should work also on Lit.InternalShellRunner.
- test/Driver/crash-report.c: Remove XFAIL.
Thanks to Chad, To point out the issue.
llvm-svn: 160343
|
|
|
|
|
|
| |
Set all of $TMPDIR, $TEMP and $TMP, or a certain host might set $TEMP.
llvm-svn: 160342
|
|
|
|
|
|
| |
a previous run of this test!
llvm-svn: 159615
|
|
|
|
|
|
|
|
|
|
| |
This adds validation that the
* repro source is only rewrite-includes processed, not fully preprocessed.
* repro script contains macro definitions (-DFOO=BAR).
Based on suggestions/help by Matt Beaumont-Gay.
llvm-svn: 159605
|
|
|
|
|
|
| |
Investigating.
llvm-svn: 159476
|
|
|
|
| |
llvm-svn: 159474
|
|
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.
llvm-svn: 159469
|