mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-28 19:31:58 +00:00
Try to use the CWD if the path to the GCDA output is not available (e.g., the
executable has been moved to another machine). If that's not available (read-only or something), then exit gracefully. <rdar://problem/11111686> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153538 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
ced8af1107
commit
66e30f8db1
@ -113,6 +113,20 @@ void llvm_gcda_start_file(const char *orig_filename) {
|
|||||||
recursive_mkdir(filename);
|
recursive_mkdir(filename);
|
||||||
output_file = fopen(filename, "wb");
|
output_file = fopen(filename, "wb");
|
||||||
|
|
||||||
|
if (!output_file) {
|
||||||
|
filename[0] = '\0'; /* The size of filename should be big enough. */
|
||||||
|
char *cptr = strrchr(orig_filename, '/');
|
||||||
|
strcat(filename, cptr ? cptr + 1 : orig_filename);
|
||||||
|
output_file = fopen(filename, "wb");
|
||||||
|
|
||||||
|
if (!output_file) {
|
||||||
|
fprintf(stderr, "LLVM profiling runtime: while opening '%s': ",
|
||||||
|
filename);
|
||||||
|
perror("");
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* gcda file, version 404*, stamp LLVM. */
|
/* gcda file, version 404*, stamp LLVM. */
|
||||||
#ifdef __APPLE__
|
#ifdef __APPLE__
|
||||||
fwrite("adcg*204MVLL", 12, 1, output_file);
|
fwrite("adcg*204MVLL", 12, 1, output_file);
|
||||||
|
Loading…
Reference in New Issue
Block a user