mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-27 06:54:30 +00:00
[llvm-isel-fuzzer] Use "--" as separator rather than '='.
Summary: OSS-Fuzz doesn't support '=' in filenames. Reviewers: bogner, kcc Reviewed By: kcc Subscribers: javed.absar, hiraditya, llvm-commits Differential Revision: https://reviews.llvm.org/D38866 llvm-svn: 315647
This commit is contained in:
parent
a4398c87a4
commit
e184e29f2e
@ -83,7 +83,7 @@ the following command would fuzz AArch64 with :doc:`GlobalISel`:
|
||||
|
||||
Some flags can also be specified in the binary name itself in order to support
|
||||
OSS Fuzz, which has trouble with required arguments. To do this, you can copy
|
||||
or move ``llvm-isel-fuzzer`` to ``llvm-isel-fuzzer=x-y-z``, where x, y, and z
|
||||
or move ``llvm-isel-fuzzer`` to ``llvm-isel-fuzzer--x-y-z``, where x, y, and z
|
||||
are architecture names (``aarch64``, ``x86_64``), optimization levels (``O0``,
|
||||
``O2``), or specific keywords like ``gisel`` for enabling global instruction
|
||||
selection.
|
||||
|
@ -28,9 +28,9 @@ void parseFuzzerCLOpts(int ArgC, char *ArgV[]);
|
||||
/// Handle backend options that are encoded in the executable name.
|
||||
///
|
||||
/// Parses some common backend options out of a specially crafted executable
|
||||
/// name (argv[0]). For example, a name like llvm-foo-fuzzer:aarch64-gisel might
|
||||
/// set up an AArch64 triple and the Global ISel selector. This should be called
|
||||
/// *before* parseFuzzerCLOpts if calling both.
|
||||
/// name (argv[0]). For example, a name like llvm-foo-fuzzer--aarch64-gisel
|
||||
/// might set up an AArch64 triple and the Global ISel selector. This should be
|
||||
/// called *before* parseFuzzerCLOpts if calling both.
|
||||
///
|
||||
/// This is meant to be used for environments like OSS-Fuzz that aren't capable
|
||||
/// of passing in command line arguments in the normal way.
|
||||
|
@ -34,7 +34,7 @@ void llvm::parseFuzzerCLOpts(int ArgC, char *ArgV[]) {
|
||||
void llvm::handleExecNameEncodedBEOpts(StringRef ExecName) {
|
||||
std::vector<std::string> Args{ExecName};
|
||||
|
||||
auto NameAndArgs = ExecName.split('=');
|
||||
auto NameAndArgs = ExecName.split("--");
|
||||
if (NameAndArgs.second.empty())
|
||||
return;
|
||||
|
||||
|
@ -5,14 +5,14 @@
|
||||
|
||||
; RUN: echo > %t.input
|
||||
|
||||
; RUN: cp llvm-isel-fuzzer %t.bin=aarch64
|
||||
; RUN: %t.bin=aarch64 %t.input 2>&1 | FileCheck -check-prefix=AARCH64 %s
|
||||
; RUN: cp llvm-isel-fuzzer %t.bin--aarch64
|
||||
; RUN: %t.bin--aarch64 %t.input 2>&1 | FileCheck -check-prefix=AARCH64 %s
|
||||
; AARCH64: Injected args: -mtriple=aarch64
|
||||
|
||||
; RUN: cp llvm-isel-fuzzer %t.bin=aarch64-O1
|
||||
; RUN: %t.bin=aarch64-O1 %t.input 2>&1 | FileCheck -check-prefix=OPT-AFTER %s
|
||||
; RUN: cp llvm-isel-fuzzer %t.bin--aarch64-O1
|
||||
; RUN: %t.bin--aarch64-O1 %t.input 2>&1 | FileCheck -check-prefix=OPT-AFTER %s
|
||||
; OPT-AFTER: Injected args: -mtriple=aarch64 -O1
|
||||
|
||||
; RUN: cp llvm-isel-fuzzer %t.bin=O3-aarch64
|
||||
; RUN: %t.bin=O3-aarch64 %t.input 2>&1 | FileCheck -check-prefix=OPT-BEFORE %s
|
||||
; RUN: cp llvm-isel-fuzzer %t.bin--O3-aarch64
|
||||
; RUN: %t.bin--O3-aarch64 %t.input 2>&1 | FileCheck -check-prefix=OPT-BEFORE %s
|
||||
; OPT-BEFORE: Injected args: -O3 -mtriple=aarch64
|
||||
|
@ -4,16 +4,16 @@
|
||||
|
||||
; RUN: echo > %t.input
|
||||
|
||||
; RUN: cp llvm-isel-fuzzer %t.bin=gisel
|
||||
; RUN: not %t.bin=gisel %t.input 2>&1 | FileCheck -check-prefix=GISEL %s
|
||||
; RUN: cp llvm-isel-fuzzer %t.bin--gisel
|
||||
; RUN: not %t.bin--gisel %t.input 2>&1 | FileCheck -check-prefix=GISEL %s
|
||||
; GISEL: Injected args: -global-isel -O0
|
||||
; GISEL: -mtriple must be specified
|
||||
|
||||
; RUN: cp llvm-isel-fuzzer %t.bin=gisel-O2
|
||||
; RUN: not %t.bin=gisel-O2 %t.input 2>&1 | FileCheck -check-prefix=GISEL-O2 %s
|
||||
; RUN: cp llvm-isel-fuzzer %t.bin--gisel-O2
|
||||
; RUN: not %t.bin--gisel-O2 %t.input 2>&1 | FileCheck -check-prefix=GISEL-O2 %s
|
||||
; GISEL-O2: Injected args: -global-isel -O0 -O2
|
||||
; GISEL-O2: -mtriple must be specified
|
||||
|
||||
; RUN: cp llvm-isel-fuzzer %t.bin=unexist
|
||||
; RUN: not %t.bin=unexist %t.input 2>&1 | FileCheck -check-prefix=NO-OPT %s
|
||||
; RUN: cp llvm-isel-fuzzer %t.bin--unexist
|
||||
; RUN: not %t.bin--unexist %t.input 2>&1 | FileCheck -check-prefix=NO-OPT %s
|
||||
; NO-OPT: Unknown option:
|
||||
|
Loading…
x
Reference in New Issue
Block a user