LLVM
4.0.0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
llvm.src
lib
Fuzzer
test
SignedIntOverflowTest.cpp
Go to the documentation of this file.
1
// This file is distributed under the University of Illinois Open Source
2
// License. See LICENSE.TXT for details.
3
4
// Test for signed-integer-overflow.
5
#include <assert.h>
6
#include <cstdint>
7
#include <cstdlib>
8
#include <cstddef>
9
#include <iostream>
10
#include <climits>
11
12
static
volatile
int
Sink
;
13
static
int
Large
= INT_MAX;
14
15
extern
"C"
int
LLVMFuzzerTestOneInput
(
const
uint8_t *Data,
size_t
Size) {
16
assert
(Data);
17
if
(Size > 0 && Data[0] ==
'H'
) {
18
Sink
= 1;
19
if
(Size > 1 && Data[1] ==
'i'
) {
20
Sink
= 2;
21
if
(Size > 2 && Data[2] ==
'!'
) {
22
Large
++;
// int overflow.
23
}
24
}
25
}
26
return
0;
27
}
28
LLVMFuzzerTestOneInput
int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size)
Definition:
SignedIntOverflowTest.cpp:15
Sink
static volatile int Sink
Definition:
SignedIntOverflowTest.cpp:12
Large
static int Large
Definition:
SignedIntOverflowTest.cpp:13
assert
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
Generated on Wed Mar 8 2017 17:25:59 for LLVM by
1.8.6