Skip to content

Instantly share code, notes, and snippets.

@jbush001
Created September 25, 2015 13:55
Show Gist options
  • Save jbush001/01ecb98b12f9509afb50 to your computer and use it in GitHub Desktop.
Save jbush001/01ecb98b12f9509afb50 to your computer and use it in GitHub Desktop.
# 1 "<built-in>"
# 1 "fail1.c"
/*
* This is a RANDOMLY GENERATED PROGRAM.
*
* Generator: csmith 2.2.0
* Git version: ecea375
* Options: (none)
* Seed: 3814362008
*/
#if 0 /* expanded by -frewrite-includes */
#include "csmith.h"
#endif /* expanded by -frewrite-includes */
# 10 "fail1.c"
# 1 "/Users/jeffbush/src/3rdParty/csmith/runtime/csmith.h" 1
/* -*- mode: C -*-
*
* Copyright (c) 2007-2010 The University of Utah
* All rights reserved.
*
* This file is part of `csmith', a random generator of C programs.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef RANDOM_RUNTIME_H
#define RANDOM_RUNTIME_H
#ifdef CSMITH_MINIMAL
#if 0 /* expanded by -frewrite-includes */
#include "csmith_minimal.h"
#endif /* expanded by -frewrite-includes */
# 35 "/Users/jeffbush/src/3rdParty/csmith/runtime/csmith.h"
# 36 "/Users/jeffbush/src/3rdParty/csmith/runtime/csmith.h"
#else
# 37 "/Users/jeffbush/src/3rdParty/csmith/runtime/csmith.h"
/*****************************************************************************/
#if 0 /* expanded by -frewrite-includes */
#include <string.h>
#endif /* expanded by -frewrite-includes */
# 40 "/Users/jeffbush/src/3rdParty/csmith/runtime/csmith.h"
# 1 "../../software/libs/libc/include/string.h" 1
//
// Copyright 2011-2015 Jeff Bush
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#if 0 /* expanded by -frewrite-includes */
#pragma once
#endif /* expanded by -frewrite-includes */
# 19 "../../software/libs/libc/include/string.h"
#if 0 /* expanded by -frewrite-includes */
#include <stddef.h>
#endif /* expanded by -frewrite-includes */
# 20 "../../software/libs/libc/include/string.h"
# 1 "../../software/libs/libc/include/stddef.h" 1
//
// Copyright 2011-2015 Jeff Bush
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#if 0 /* expanded by -frewrite-includes */
#pragma once
#endif /* expanded by -frewrite-includes */
# 19 "../../software/libs/libc/include/stddef.h"
#define NULL 0
typedef unsigned int size_t;
typedef int ptrdiff_t;
#define offsetof(__type__, __member__) ((size_t) (&((__type__*) 0)->__member__))
# 21 "../../software/libs/libc/include/string.h" 2
#ifdef __cplusplus
extern "C" {
#endif
# 25 "../../software/libs/libc/include/string.h"
void *memcpy(void *dest, const void *src, size_t length);
void *memset(void *dest, int value, size_t length);
int strcmp(const char *str1, const char *str2);
int memcmp(const void *a, const void *b, size_t length);
int strcasecmp(const char *str1, const char *str2);
int strncasecmp(const char *str1, const char *str2, size_t length);
int strncmp(const char *str1, const char *str2, size_t len);
size_t strlen(const char *str);
char* strcpy(char *dest, const char *src);
char* strncpy(char *dest, const char *src, size_t length);
char *strchr(const char *string, int c);
void *memchr(const void *string, int c, size_t n);
char *strcat(char *c, const char *s);
#ifdef __cplusplus
}
#endif
# 43 "../../software/libs/libc/include/string.h"
# 41 "/Users/jeffbush/src/3rdParty/csmith/runtime/csmith.h" 2
#define __STDC_LIMIT_MACROS
#if 0 /* expanded by -frewrite-includes */
#include "random_inc.h"
#endif /* expanded by -frewrite-includes */
# 43 "/Users/jeffbush/src/3rdParty/csmith/runtime/csmith.h"
# 1 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h" 1
/* -*- mode: C -*-
*
* Copyright (c) 2007-2010 The University of Utah
* All rights reserved.
*
* This file is part of `csmith', a random generator of C programs.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef RANDOM_INC_H
#define RANDOM_INC_H
#if defined(STANDALONE)
#if defined(_MSC_VER)
#if 0 /* expanded by -frewrite-includes */
#include <limits.h>
#endif /* expanded by -frewrite-includes */
# 37 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 38 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#if 0 /* expanded by -frewrite-includes */
#include "windows/stdint.h"
#endif /* expanded by -frewrite-includes */
# 38 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 39 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#elif defined (IA32_ARCH)
# 40 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#if 0 /* expanded by -frewrite-includes */
#include "stdint_ia32.h"
#endif /* expanded by -frewrite-includes */
# 40 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 41 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#elif defined (IA64_ARCH)
# 42 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#if 0 /* expanded by -frewrite-includes */
#include "stdint_ia64.h"
#endif /* expanded by -frewrite-includes */
# 42 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 43 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#elif defined (MSP430)
# 44 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#if 0 /* expanded by -frewrite-includes */
#include "stdint_msp430.h"
#endif /* expanded by -frewrite-includes */
# 44 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 45 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#elif defined (AVR_ARCH)
# 46 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#if 0 /* expanded by -frewrite-includes */
#include "stdint_avr.h"
#endif /* expanded by -frewrite-includes */
# 46 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 47 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#else
# 48 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#if 0 /* expanded by -frewrite-includes */
#include "stdint_ia32.h"
#endif /* expanded by -frewrite-includes */
# 48 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 49 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#endif
# 50 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#else
# 51 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#if 0 /* expanded by -frewrite-includes */
#include <limits.h>
#endif /* expanded by -frewrite-includes */
# 51 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 1 "../../software/libs/libc/include/limits.h" 1
//
// Copyright 2011-2015 Jeff Bush
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#if 0 /* expanded by -frewrite-includes */
#pragma once
#endif /* expanded by -frewrite-includes */
# 19 "../../software/libs/libc/include/limits.h"
#define CHAR_BIT 8
#define INT8_MIN 0x80
#define INT8_MAX 0x7f
#define UCHAR_MAX 0xff
#define INT16_MIN 0x8000
#define INT16_MAX 0x7fff
#define SHRT_MIN 0x8000
#define SHRT_MAX 0x7fff
#define INT32_MIN 0x80000000L
#define INT32_MAX 0x7fffffffL
#define INT_MIN 0x80000000
#define INT_MAX 0x7fffffff
#define INT64_MIN 0x8000000000000000LL
#define INT64_MAX 0x7fffffffffffffffLL
#define UINT8_MAX 0xff
#define UINT16_MAX 0xffff
#define UINT32_MAX 0xffffffffL
#define UINT64_MAX 0xffffffffffffffffull
#define LLONG_MAX INT64_MAX
#define LLONG_MIN INT64_MIN
#define UINT_MAX UINT32_MAX
# 52 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h" 2
#if defined(_MSC_VER)
#if 0 /* expanded by -frewrite-includes */
#include "windows/stdint.h"
#endif /* expanded by -frewrite-includes */
# 53 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 54 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#else
# 55 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#if 0 /* expanded by -frewrite-includes */
#include <stdint.h>
#endif /* expanded by -frewrite-includes */
# 55 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 1 "../../software/libs/libc/include/stdint.h" 1
//
// Copyright 2011-2015 Jeff Bush
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#if 0 /* expanded by -frewrite-includes */
#pragma once
#endif /* expanded by -frewrite-includes */
# 19 "../../software/libs/libc/include/stdint.h"
typedef int veci16_t __attribute__((__vector_size__(16 * sizeof(int))));
typedef unsigned int vecu16_t __attribute__((__vector_size__(16 * sizeof(int))));
typedef float vecf16_t __attribute__((__vector_size__(16 * sizeof(float))));
typedef char int8_t;
typedef unsigned char uint8_t;
typedef short int16_t;
typedef unsigned short uint16_t;
typedef int int32_t;
typedef unsigned int uint32_t;
typedef long long int int64_t;
typedef unsigned long long int uint64_t;
typedef unsigned int intptr_t;
# 56 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h" 2
#endif
# 57 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#endif
# 58 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#if 0 /* expanded by -frewrite-includes */
#include <assert.h>
#endif /* expanded by -frewrite-includes */
# 59 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 1 "../../software/libs/libc/include/assert.h" 1
//
// Copyright 2011-2015 Jeff Bush
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#if 0 /* expanded by -frewrite-includes */
#pragma once
#endif /* expanded by -frewrite-includes */
# 19 "../../software/libs/libc/include/assert.h"
#if 0 /* expanded by -frewrite-includes */
#include <stdio.h>
#endif /* expanded by -frewrite-includes */
# 20 "../../software/libs/libc/include/assert.h"
# 1 "../../software/libs/libc/include/stdio.h" 1
//
// Copyright 2011-2015 Jeff Bush
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#if 0 /* expanded by -frewrite-includes */
#pragma once
#endif /* expanded by -frewrite-includes */
# 19 "../../software/libs/libc/include/stdio.h"
#if 0 /* expanded by -frewrite-includes */
#include <stdarg.h>
#endif /* expanded by -frewrite-includes */
# 20 "../../software/libs/libc/include/stdio.h"
# 1 "../../software/libs/libc/include/stdarg.h" 1
//
// Copyright 2011-2015 Jeff Bush
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#if 0 /* expanded by -frewrite-includes */
#pragma once
#endif /* expanded by -frewrite-includes */
# 19 "../../software/libs/libc/include/stdarg.h"
#define va_start(AP, LASTARG) __builtin_va_start(AP, LASTARG);
#define va_arg(AP, TYPE) __builtin_va_arg(AP, TYPE)
#define va_end(AP) __builtin_va_end(AP)
#define va_list __builtin_va_list
# 21 "../../software/libs/libc/include/stdio.h" 2
#if 0 /* expanded by -frewrite-includes */
#include <stddef.h>
#endif /* expanded by -frewrite-includes */
# 21 "../../software/libs/libc/include/stdio.h"
# 22 "../../software/libs/libc/include/stdio.h"
#define FILENAME_MAX 32
#define BUFSIZ 256
#define EOF -1
#define SEEK_SET 0
#define SEEK_CUR 1
#define SEEK_END 2
typedef struct __file FILE;
typedef int off_t;
extern FILE *stdout;
extern FILE *stdin;
extern FILE *stderr;
#ifdef __cplusplus
extern "C" {
#endif
# 42 "../../software/libs/libc/include/stdio.h"
int puts(const char *s);
int putchar(int ch);
int vfprintf(FILE*, const char *format, va_list args);
int printf(const char *fmt, ...);
int fprintf(FILE*, const char *fmt, ...);
int sprintf(char *buf, const char *fmt, ...);
int snprintf(char *buf, size_t size, const char *fmt, ...);
int vsnprintf(char *buf, size_t size, const char *fmt, va_list args);
int fputc(int ch, FILE*);
int fputs(const char *s, FILE*);
int fgetc(FILE*);
int fflush(FILE*);
FILE *fopen(const char *filename, const char *mode);
size_t fread(void *ptr, size_t size, size_t nelem, FILE *stream);
size_t fwrite(const void *ptr, size_t size, size_t nelem, FILE *stream);
int fclose(FILE*);
off_t fseek(FILE*, off_t offset, int whence);
off_t ftell(FILE*);
int ferror(FILE*);
int ungetc(int character, FILE*);
#ifdef __cplusplus
}
#endif
# 67 "../../software/libs/libc/include/stdio.h"
# 21 "../../software/libs/libc/include/assert.h" 2
#if 0 /* expanded by -frewrite-includes */
#include <stdlib.h>
#endif /* expanded by -frewrite-includes */
# 21 "../../software/libs/libc/include/assert.h"
# 1 "../../software/libs/libc/include/stdlib.h" 1
//
// Copyright 2011-2015 Jeff Bush
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#if 0 /* expanded by -frewrite-includes */
#pragma once
#endif /* expanded by -frewrite-includes */
# 19 "../../software/libs/libc/include/stdlib.h"
#if 0 /* expanded by -frewrite-includes */
#include <stddef.h>
#endif /* expanded by -frewrite-includes */
# 20 "../../software/libs/libc/include/stdlib.h"
# 21 "../../software/libs/libc/include/stdlib.h"
#define RAND_MAX 0x7fffffff
typedef int (*cmpfun)(const void *, const void *);
#ifdef __cplusplus
extern "C" {
#endif
# 29 "../../software/libs/libc/include/stdlib.h"
void *calloc(size_t size, size_t numElements);
void *malloc(size_t size);
void *memalign(size_t size, size_t align);
void *realloc(void* oldmem, size_t bytes);
void free(void*);
void abort(void) __attribute__((noreturn));
void exit(int status) __attribute__((noreturn));
void qsort(void *base, size_t nel, size_t width, cmpfun cmp);
int atoi(const char *num);
int abs(int value);
int rand(void);
void srand(unsigned int seed);
void* bsearch (const void* key, const void* base, size_t num,
size_t size, int (*compare)(const void*,const void*));
#ifdef __cplusplus
}
#endif
# 49 "../../software/libs/libc/include/stdlib.h"
# 22 "../../software/libs/libc/include/assert.h" 2
#ifdef NDEBUG
#define assert(ignore) ((void) 0)
#else
# 26 "../../software/libs/libc/include/assert.h"
#define assert(cond) if (!(cond)) { printf("ASSERT FAILED: %s:%d: %s\n", __FILE__, __LINE__, \
#cond); abort(); }
#endif
# 29 "../../software/libs/libc/include/assert.h"
# 60 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h" 2
/*****************************************************************************/
#ifndef DEPUTY
#define COUNT(n)
#define TC
#define SAFE
#endif
# 68 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
/*****************************************************************************/
#ifdef LOG_WRAPPERS
#if 0 /* expanded by -frewrite-includes */
#include "wrapper.h"
#endif /* expanded by -frewrite-includes */
# 72 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 73 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
char __failed_checks[N_WRAP+1];
char __executed_checks[N_WRAP+1];
#define UNDEFINED(__val) (__failed_checks[index]=1,(__val))
#define LOG_INDEX , int index
#define LOG_EXEC __executed_checks[index]=1;
#else
# 79 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#define UNDEFINED(__val) (__val)
#define LOG_INDEX
#define LOG_EXEC
#endif
# 83 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#if defined(AVR_ARCH)
#if 0 /* expanded by -frewrite-includes */
#include "platform_avr.h"
#endif /* expanded by -frewrite-includes */
# 85 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 86 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#elif defined (MSP430)
# 87 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#if 0 /* expanded by -frewrite-includes */
#include "platform_msp430.h"
#endif /* expanded by -frewrite-includes */
# 87 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 88 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#else
# 89 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#if 0 /* expanded by -frewrite-includes */
#include "platform_generic.h"
#endif /* expanded by -frewrite-includes */
# 89 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 1 "/Users/jeffbush/src/3rdParty/csmith/runtime/platform_generic.h" 1
/* -*- mode: C -*-
*
* Copyright (c) 2007, 2008, 2011, 2013 The University of Utah
* All rights reserved.
*
* This file is part of `csmith', a random generator of C programs.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef PLATFORM_GENERIC_H
#define PLATFORM_GENERIC_H
/*****************************************************************************/
#ifdef STANDALONE
extern int printf (const char *, ...);
#else
# 39 "/Users/jeffbush/src/3rdParty/csmith/runtime/platform_generic.h"
#if 0 /* expanded by -frewrite-includes */
#include <stdio.h>
#endif /* expanded by -frewrite-includes */
# 39 "/Users/jeffbush/src/3rdParty/csmith/runtime/platform_generic.h"
# 40 "/Users/jeffbush/src/3rdParty/csmith/runtime/platform_generic.h"
#endif
# 41 "/Users/jeffbush/src/3rdParty/csmith/runtime/platform_generic.h"
static void
platform_main_begin(void)
{
/* Nothing to do. */
}
static void
platform_main_end(uint32_t crc, int flag)
{
#if defined (__FRAMAC)
Frama_C_dump_assert_each();
#endif
# 54 "/Users/jeffbush/src/3rdParty/csmith/runtime/platform_generic.h"
#ifndef NOT_PRINT_CHECKSUM
printf ("checksum = %X\n", crc);
#endif
# 58 "/Users/jeffbush/src/3rdParty/csmith/runtime/platform_generic.h"
#if defined (LOG_WRAPPERS)
{
int i, first;
printf ("executed wrappers: ");
first = 1;
for (i=1; i<N_WRAP+1; i++) {
if (__executed_checks[i]) {
if (!first) {
printf (",");
} else {
first = 0;
}
printf ("%d", i);
}
}
printf ("\n");
printf ("dead wrappers: ");
first = 1;
for (i=1; i<N_WRAP+1; i++) {
if (!__executed_checks[i]) {
if (!first) {
printf (",");
} else {
first = 0;
}
printf ("%d", i);
}
}
printf ("\n");
printf ("wrappers that failed at least once: ");
first = 1;
for (i=1; i<N_WRAP+1; i++) {
if (__failed_checks[i]) {
if (!first) {
printf (",");
} else {
first = 0;
}
printf ("%d", i);
}
}
printf ("\n");
printf ("wrappers that never failed (or never executed): ");
first = 1;
for (i=1; i<N_WRAP+1; i++) {
if (!__failed_checks[i]) {
if (!first) {
printf (",");
} else {
first = 0;
}
printf ("%d", i);
}
}
printf ("\n");
}
#endif
# 120 "/Users/jeffbush/src/3rdParty/csmith/runtime/platform_generic.h"
}
#define MB (1<<20)
/*****************************************************************************/
#endif /* PLATFORM_GENERIC_H */
# 127 "/Users/jeffbush/src/3rdParty/csmith/runtime/platform_generic.h"
/*
* Local Variables:
* c-basic-offset: 4
* tab-width: 4
* End:
*/
/* End of file. */
# 90 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h" 2
#endif
# 91 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#define STATIC static
#if defined (USE_MATH_MACROS_NOTMP)
#if 0 /* expanded by -frewrite-includes */
#include "safe_math_macros_notmp.h"
#endif /* expanded by -frewrite-includes */
# 95 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 96 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#elif defined (USE_MATH_MACROS)
# 97 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#if 0 /* expanded by -frewrite-includes */
#include "safe_math_macros.h"
#endif /* expanded by -frewrite-includes */
# 97 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 98 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#else
# 99 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#define FUNC_NAME(x) (safe_##x)
#if 0 /* expanded by -frewrite-includes */
#include "safe_math.h"
#endif /* expanded by -frewrite-includes */
# 100 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 1 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h" 1
#ifndef SAFE_MATH_H
#define SAFE_MATH_H
STATIC int8_t
FUNC_NAME(unary_minus_func_int8_t_s)(int8_t si LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
#if (INT8_MAX>=INT_MAX)
(si==INT8_MIN) ?
(UNDEFINED(si)) :
#endif
# 23 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 24 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
-si;
}
STATIC int8_t
FUNC_NAME(add_func_int8_t_s_s)(int8_t si1, int8_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
#if (INT8_MAX>=INT_MAX)
(((si1>0) && (si2>0) && (si1 > (INT8_MAX-si2))) || ((si1<0) && (si2<0) && (si1 < (INT8_MIN-si2)))) ?
(UNDEFINED(si1)) :
#endif
# 37 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 38 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(si1 + si2);
}
STATIC int8_t
FUNC_NAME(sub_func_int8_t_s_s)(int8_t si1, int8_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
#if (INT8_MAX>=INT_MAX)
(((si1^si2) & (((si1 ^ ((si1^si2) & (~INT8_MAX)))-si2)^si2)) < 0) ?
(UNDEFINED(si1)) :
#endif
# 51 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 52 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(si1 - si2);
}
STATIC int8_t
FUNC_NAME(mul_func_int8_t_s_s)(int8_t si1, int8_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
#if (INT8_MAX>=INT_MAX)
(((si1 > 0) && (si2 > 0) && (si1 > (INT8_MAX / si2))) || ((si1 > 0) && (si2 <= 0) && (si2 < (INT8_MIN / si1))) || ((si1 <= 0) && (si2 > 0) && (si1 < (INT8_MIN / si2))) || ((si1 <= 0) && (si2 <= 0) && (si1 != 0) && (si2 < (INT8_MAX / si1)))) ?
(UNDEFINED(si1)) :
#endif
# 65 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 66 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
si1 * si2;
}
STATIC int8_t
FUNC_NAME(mod_func_int8_t_s_s)(int8_t si1, int8_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((si2 == 0) || ((si1 == INT8_MIN) && (si2 == (-1)))) ?
(UNDEFINED(si1)) :
#endif
# 78 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(si1 % si2);
}
STATIC int8_t
FUNC_NAME(div_func_int8_t_s_s)(int8_t si1, int8_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((si2 == 0) || ((si1 == INT8_MIN) && (si2 == (-1)))) ?
(UNDEFINED(si1)) :
#endif
# 90 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(si1 / si2);
}
STATIC int8_t
FUNC_NAME(lshift_func_int8_t_s_s)(int8_t left, int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((left < 0) || (((int)right) < 0) || (((int)right) >= 32) || (left > (INT8_MAX >> ((int)right)))) ?
(UNDEFINED(left)) :
#endif
# 102 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left << ((int)right));
}
STATIC int8_t
FUNC_NAME(lshift_func_int8_t_s_u)(int8_t left, unsigned int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((left < 0) || (((unsigned int)right) >= 32) || (left > (INT8_MAX >> ((unsigned int)right)))) ?
(UNDEFINED(left)) :
#endif
# 114 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left << ((unsigned int)right));
}
STATIC int8_t
FUNC_NAME(rshift_func_int8_t_s_s)(int8_t left, int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((left < 0) || (((int)right) < 0) || (((int)right) >= 32))?
(UNDEFINED(left)) :
#endif
# 126 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left >> ((int)right));
}
STATIC int8_t
FUNC_NAME(rshift_func_int8_t_s_u)(int8_t left, unsigned int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((left < 0) || (((unsigned int)right) >= 32)) ?
(UNDEFINED(left)) :
#endif
# 138 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left >> ((unsigned int)right));
}
STATIC int16_t
FUNC_NAME(unary_minus_func_int16_t_s)(int16_t si LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
#if (INT16_MAX>=INT_MAX)
(si==INT16_MIN) ?
(UNDEFINED(si)) :
#endif
# 153 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 154 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
-si;
}
STATIC int16_t
FUNC_NAME(add_func_int16_t_s_s)(int16_t si1, int16_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
#if (INT16_MAX>=INT_MAX)
(((si1>0) && (si2>0) && (si1 > (INT16_MAX-si2))) || ((si1<0) && (si2<0) && (si1 < (INT16_MIN-si2)))) ?
(UNDEFINED(si1)) :
#endif
# 167 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 168 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(si1 + si2);
}
STATIC int16_t
FUNC_NAME(sub_func_int16_t_s_s)(int16_t si1, int16_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
#if (INT16_MAX>=INT_MAX)
(((si1^si2) & (((si1 ^ ((si1^si2) & (~INT16_MAX)))-si2)^si2)) < 0) ?
(UNDEFINED(si1)) :
#endif
# 181 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 182 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(si1 - si2);
}
STATIC int16_t
FUNC_NAME(mul_func_int16_t_s_s)(int16_t si1, int16_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
#if (INT16_MAX>=INT_MAX)
(((si1 > 0) && (si2 > 0) && (si1 > (INT16_MAX / si2))) || ((si1 > 0) && (si2 <= 0) && (si2 < (INT16_MIN / si1))) || ((si1 <= 0) && (si2 > 0) && (si1 < (INT16_MIN / si2))) || ((si1 <= 0) && (si2 <= 0) && (si1 != 0) && (si2 < (INT16_MAX / si1)))) ?
(UNDEFINED(si1)) :
#endif
# 195 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 196 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
si1 * si2;
}
STATIC int16_t
FUNC_NAME(mod_func_int16_t_s_s)(int16_t si1, int16_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((si2 == 0) || ((si1 == INT16_MIN) && (si2 == (-1)))) ?
(UNDEFINED(si1)) :
#endif
# 208 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(si1 % si2);
}
STATIC int16_t
FUNC_NAME(div_func_int16_t_s_s)(int16_t si1, int16_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((si2 == 0) || ((si1 == INT16_MIN) && (si2 == (-1)))) ?
(UNDEFINED(si1)) :
#endif
# 220 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(si1 / si2);
}
STATIC int16_t
FUNC_NAME(lshift_func_int16_t_s_s)(int16_t left, int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((left < 0) || (((int)right) < 0) || (((int)right) >= 32) || (left > (INT16_MAX >> ((int)right)))) ?
(UNDEFINED(left)) :
#endif
# 232 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left << ((int)right));
}
STATIC int16_t
FUNC_NAME(lshift_func_int16_t_s_u)(int16_t left, unsigned int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((left < 0) || (((unsigned int)right) >= 32) || (left > (INT16_MAX >> ((unsigned int)right)))) ?
(UNDEFINED(left)) :
#endif
# 244 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left << ((unsigned int)right));
}
STATIC int16_t
FUNC_NAME(rshift_func_int16_t_s_s)(int16_t left, int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((left < 0) || (((int)right) < 0) || (((int)right) >= 32))?
(UNDEFINED(left)) :
#endif
# 256 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left >> ((int)right));
}
STATIC int16_t
FUNC_NAME(rshift_func_int16_t_s_u)(int16_t left, unsigned int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((left < 0) || (((unsigned int)right) >= 32)) ?
(UNDEFINED(left)) :
#endif
# 268 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left >> ((unsigned int)right));
}
STATIC int32_t
FUNC_NAME(unary_minus_func_int32_t_s)(int32_t si LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
#if (INT32_MAX>=INT_MAX)
(si==INT32_MIN) ?
(UNDEFINED(si)) :
#endif
# 283 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 284 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
-si;
}
STATIC int32_t
FUNC_NAME(add_func_int32_t_s_s)(int32_t si1, int32_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
#if (INT32_MAX>=INT_MAX)
(((si1>0) && (si2>0) && (si1 > (INT32_MAX-si2))) || ((si1<0) && (si2<0) && (si1 < (INT32_MIN-si2)))) ?
(UNDEFINED(si1)) :
#endif
# 297 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 298 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(si1 + si2);
}
STATIC int32_t
FUNC_NAME(sub_func_int32_t_s_s)(int32_t si1, int32_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
#if (INT32_MAX>=INT_MAX)
(((si1^si2) & (((si1 ^ ((si1^si2) & (~INT32_MAX)))-si2)^si2)) < 0) ?
(UNDEFINED(si1)) :
#endif
# 311 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 312 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(si1 - si2);
}
STATIC int32_t
FUNC_NAME(mul_func_int32_t_s_s)(int32_t si1, int32_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
#if (INT32_MAX>=INT_MAX)
(((si1 > 0) && (si2 > 0) && (si1 > (INT32_MAX / si2))) || ((si1 > 0) && (si2 <= 0) && (si2 < (INT32_MIN / si1))) || ((si1 <= 0) && (si2 > 0) && (si1 < (INT32_MIN / si2))) || ((si1 <= 0) && (si2 <= 0) && (si1 != 0) && (si2 < (INT32_MAX / si1)))) ?
(UNDEFINED(si1)) :
#endif
# 325 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 326 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
si1 * si2;
}
STATIC int32_t
FUNC_NAME(mod_func_int32_t_s_s)(int32_t si1, int32_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((si2 == 0) || ((si1 == INT32_MIN) && (si2 == (-1)))) ?
(UNDEFINED(si1)) :
#endif
# 338 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(si1 % si2);
}
STATIC int32_t
FUNC_NAME(div_func_int32_t_s_s)(int32_t si1, int32_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((si2 == 0) || ((si1 == INT32_MIN) && (si2 == (-1)))) ?
(UNDEFINED(si1)) :
#endif
# 350 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(si1 / si2);
}
STATIC int32_t
FUNC_NAME(lshift_func_int32_t_s_s)(int32_t left, int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((left < 0) || (((int)right) < 0) || (((int)right) >= 32) || (left > (INT32_MAX >> ((int)right)))) ?
(UNDEFINED(left)) :
#endif
# 362 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left << ((int)right));
}
STATIC int32_t
FUNC_NAME(lshift_func_int32_t_s_u)(int32_t left, unsigned int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((left < 0) || (((unsigned int)right) >= 32) || (left > (INT32_MAX >> ((unsigned int)right)))) ?
(UNDEFINED(left)) :
#endif
# 374 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left << ((unsigned int)right));
}
STATIC int32_t
FUNC_NAME(rshift_func_int32_t_s_s)(int32_t left, int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((left < 0) || (((int)right) < 0) || (((int)right) >= 32))?
(UNDEFINED(left)) :
#endif
# 386 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left >> ((int)right));
}
STATIC int32_t
FUNC_NAME(rshift_func_int32_t_s_u)(int32_t left, unsigned int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((left < 0) || (((unsigned int)right) >= 32)) ?
(UNDEFINED(left)) :
#endif
# 398 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left >> ((unsigned int)right));
}
#ifndef NO_LONGLONG
STATIC int64_t
FUNC_NAME(unary_minus_func_int64_t_s)(int64_t si LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
#if (INT64_MAX>=INT_MAX)
(si==INT64_MIN) ?
(UNDEFINED(si)) :
#endif
# 414 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 415 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
-si;
}
STATIC int64_t
FUNC_NAME(add_func_int64_t_s_s)(int64_t si1, int64_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
#if (INT64_MAX>=INT_MAX)
(((si1>0) && (si2>0) && (si1 > (INT64_MAX-si2))) || ((si1<0) && (si2<0) && (si1 < (INT64_MIN-si2)))) ?
(UNDEFINED(si1)) :
#endif
# 428 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 429 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(si1 + si2);
}
STATIC int64_t
FUNC_NAME(sub_func_int64_t_s_s)(int64_t si1, int64_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
#if (INT64_MAX>=INT_MAX)
(((si1^si2) & (((si1 ^ ((si1^si2) & (~INT64_MAX)))-si2)^si2)) < 0) ?
(UNDEFINED(si1)) :
#endif
# 442 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 443 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(si1 - si2);
}
STATIC int64_t
FUNC_NAME(mul_func_int64_t_s_s)(int64_t si1, int64_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
#if (INT64_MAX>=INT_MAX)
(((si1 > 0) && (si2 > 0) && (si1 > (INT64_MAX / si2))) || ((si1 > 0) && (si2 <= 0) && (si2 < (INT64_MIN / si1))) || ((si1 <= 0) && (si2 > 0) && (si1 < (INT64_MIN / si2))) || ((si1 <= 0) && (si2 <= 0) && (si1 != 0) && (si2 < (INT64_MAX / si1)))) ?
(UNDEFINED(si1)) :
#endif
# 456 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 457 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
si1 * si2;
}
STATIC int64_t
FUNC_NAME(mod_func_int64_t_s_s)(int64_t si1, int64_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((si2 == 0) || ((si1 == INT64_MIN) && (si2 == (-1)))) ?
(UNDEFINED(si1)) :
#endif
# 469 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(si1 % si2);
}
STATIC int64_t
FUNC_NAME(div_func_int64_t_s_s)(int64_t si1, int64_t si2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((si2 == 0) || ((si1 == INT64_MIN) && (si2 == (-1)))) ?
(UNDEFINED(si1)) :
#endif
# 481 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(si1 / si2);
}
STATIC int64_t
FUNC_NAME(lshift_func_int64_t_s_s)(int64_t left, int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((left < 0) || (((int)right) < 0) || (((int)right) >= 32) || (left > (INT64_MAX >> ((int)right)))) ?
(UNDEFINED(left)) :
#endif
# 493 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left << ((int)right));
}
STATIC int64_t
FUNC_NAME(lshift_func_int64_t_s_u)(int64_t left, unsigned int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((left < 0) || (((unsigned int)right) >= 32) || (left > (INT64_MAX >> ((unsigned int)right)))) ?
(UNDEFINED(left)) :
#endif
# 505 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left << ((unsigned int)right));
}
STATIC int64_t
FUNC_NAME(rshift_func_int64_t_s_s)(int64_t left, int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((left < 0) || (((int)right) < 0) || (((int)right) >= 32))?
(UNDEFINED(left)) :
#endif
# 517 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left >> ((int)right));
}
STATIC int64_t
FUNC_NAME(rshift_func_int64_t_s_u)(int64_t left, unsigned int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((left < 0) || (((unsigned int)right) >= 32)) ?
(UNDEFINED(left)) :
#endif
# 529 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left >> ((unsigned int)right));
}
#endif
# 533 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
STATIC uint8_t
FUNC_NAME(unary_minus_func_uint8_t_u)(uint8_t ui LOG_INDEX)
{
LOG_EXEC
return -ui;
}
STATIC uint8_t
FUNC_NAME(add_func_uint8_t_u_u)(uint8_t ui1, uint8_t ui2 LOG_INDEX)
{
LOG_EXEC
return ui1 + ui2;
}
STATIC uint8_t
FUNC_NAME(sub_func_uint8_t_u_u)(uint8_t ui1, uint8_t ui2 LOG_INDEX)
{
LOG_EXEC
return ui1 - ui2;
}
STATIC uint8_t
FUNC_NAME(mul_func_uint8_t_u_u)(uint8_t ui1, uint8_t ui2 LOG_INDEX)
{
LOG_EXEC
return ((unsigned int)ui1) * ((unsigned int)ui2);
}
STATIC uint8_t
FUNC_NAME(mod_func_uint8_t_u_u)(uint8_t ui1, uint8_t ui2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
(ui2 == 0) ?
(UNDEFINED(ui1)) :
#endif
# 575 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(ui1 % ui2);
}
STATIC uint8_t
FUNC_NAME(div_func_uint8_t_u_u)(uint8_t ui1, uint8_t ui2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
(ui2 == 0) ?
(UNDEFINED(ui1)) :
#endif
# 587 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(ui1 / ui2);
}
STATIC uint8_t
FUNC_NAME(lshift_func_uint8_t_u_s)(uint8_t left, int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((((int)right) < 0) || (((int)right) >= 32) || (left > (UINT8_MAX >> ((int)right)))) ?
(UNDEFINED(left)) :
#endif
# 599 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left << ((int)right));
}
STATIC uint8_t
FUNC_NAME(lshift_func_uint8_t_u_u)(uint8_t left, unsigned int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((((unsigned int)right) >= 32) || (left > (UINT8_MAX >> ((unsigned int)right)))) ?
(UNDEFINED(left)) :
#endif
# 611 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left << ((unsigned int)right));
}
STATIC uint8_t
FUNC_NAME(rshift_func_uint8_t_u_s)(uint8_t left, int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((((int)right) < 0) || (((int)right) >= 32)) ?
(UNDEFINED(left)) :
#endif
# 623 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left >> ((int)right));
}
STATIC uint8_t
FUNC_NAME(rshift_func_uint8_t_u_u)(uint8_t left, unsigned int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
(((unsigned int)right) >= 32) ?
(UNDEFINED(left)) :
#endif
# 635 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left >> ((unsigned int)right));
}
STATIC uint16_t
FUNC_NAME(unary_minus_func_uint16_t_u)(uint16_t ui LOG_INDEX)
{
LOG_EXEC
return -ui;
}
STATIC uint16_t
FUNC_NAME(add_func_uint16_t_u_u)(uint16_t ui1, uint16_t ui2 LOG_INDEX)
{
LOG_EXEC
return ui1 + ui2;
}
STATIC uint16_t
FUNC_NAME(sub_func_uint16_t_u_u)(uint16_t ui1, uint16_t ui2 LOG_INDEX)
{
LOG_EXEC
return ui1 - ui2;
}
STATIC uint16_t
FUNC_NAME(mul_func_uint16_t_u_u)(uint16_t ui1, uint16_t ui2 LOG_INDEX)
{
LOG_EXEC
return ((unsigned int)ui1) * ((unsigned int)ui2);
}
STATIC uint16_t
FUNC_NAME(mod_func_uint16_t_u_u)(uint16_t ui1, uint16_t ui2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
(ui2 == 0) ?
(UNDEFINED(ui1)) :
#endif
# 677 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(ui1 % ui2);
}
STATIC uint16_t
FUNC_NAME(div_func_uint16_t_u_u)(uint16_t ui1, uint16_t ui2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
(ui2 == 0) ?
(UNDEFINED(ui1)) :
#endif
# 689 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(ui1 / ui2);
}
STATIC uint16_t
FUNC_NAME(lshift_func_uint16_t_u_s)(uint16_t left, int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((((int)right) < 0) || (((int)right) >= 32) || (left > (UINT16_MAX >> ((int)right)))) ?
(UNDEFINED(left)) :
#endif
# 701 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left << ((int)right));
}
STATIC uint16_t
FUNC_NAME(lshift_func_uint16_t_u_u)(uint16_t left, unsigned int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((((unsigned int)right) >= 32) || (left > (UINT16_MAX >> ((unsigned int)right)))) ?
(UNDEFINED(left)) :
#endif
# 713 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left << ((unsigned int)right));
}
STATIC uint16_t
FUNC_NAME(rshift_func_uint16_t_u_s)(uint16_t left, int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((((int)right) < 0) || (((int)right) >= 32)) ?
(UNDEFINED(left)) :
#endif
# 725 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left >> ((int)right));
}
STATIC uint16_t
FUNC_NAME(rshift_func_uint16_t_u_u)(uint16_t left, unsigned int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
(((unsigned int)right) >= 32) ?
(UNDEFINED(left)) :
#endif
# 737 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left >> ((unsigned int)right));
}
STATIC uint32_t
FUNC_NAME(unary_minus_func_uint32_t_u)(uint32_t ui LOG_INDEX)
{
LOG_EXEC
return -ui;
}
STATIC uint32_t
FUNC_NAME(add_func_uint32_t_u_u)(uint32_t ui1, uint32_t ui2 LOG_INDEX)
{
LOG_EXEC
return ui1 + ui2;
}
STATIC uint32_t
FUNC_NAME(sub_func_uint32_t_u_u)(uint32_t ui1, uint32_t ui2 LOG_INDEX)
{
LOG_EXEC
return ui1 - ui2;
}
STATIC uint32_t
FUNC_NAME(mul_func_uint32_t_u_u)(uint32_t ui1, uint32_t ui2 LOG_INDEX)
{
LOG_EXEC
return ((unsigned int)ui1) * ((unsigned int)ui2);
}
STATIC uint32_t
FUNC_NAME(mod_func_uint32_t_u_u)(uint32_t ui1, uint32_t ui2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
(ui2 == 0) ?
(UNDEFINED(ui1)) :
#endif
# 779 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(ui1 % ui2);
}
STATIC uint32_t
FUNC_NAME(div_func_uint32_t_u_u)(uint32_t ui1, uint32_t ui2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
(ui2 == 0) ?
(UNDEFINED(ui1)) :
#endif
# 791 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(ui1 / ui2);
}
STATIC uint32_t
FUNC_NAME(lshift_func_uint32_t_u_s)(uint32_t left, int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((((int)right) < 0) || (((int)right) >= 32) || (left > (UINT32_MAX >> ((int)right)))) ?
(UNDEFINED(left)) :
#endif
# 803 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left << ((int)right));
}
STATIC uint32_t
FUNC_NAME(lshift_func_uint32_t_u_u)(uint32_t left, unsigned int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((((unsigned int)right) >= 32) || (left > (UINT32_MAX >> ((unsigned int)right)))) ?
(UNDEFINED(left)) :
#endif
# 815 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left << ((unsigned int)right));
}
STATIC uint32_t
FUNC_NAME(rshift_func_uint32_t_u_s)(uint32_t left, int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((((int)right) < 0) || (((int)right) >= 32)) ?
(UNDEFINED(left)) :
#endif
# 827 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left >> ((int)right));
}
STATIC uint32_t
FUNC_NAME(rshift_func_uint32_t_u_u)(uint32_t left, unsigned int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
(((unsigned int)right) >= 32) ?
(UNDEFINED(left)) :
#endif
# 839 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left >> ((unsigned int)right));
}
#ifndef NO_LONGLONG
STATIC uint64_t
FUNC_NAME(unary_minus_func_uint64_t_u)(uint64_t ui LOG_INDEX)
{
LOG_EXEC
return -ui;
}
STATIC uint64_t
FUNC_NAME(add_func_uint64_t_u_u)(uint64_t ui1, uint64_t ui2 LOG_INDEX)
{
LOG_EXEC
return ui1 + ui2;
}
STATIC uint64_t
FUNC_NAME(sub_func_uint64_t_u_u)(uint64_t ui1, uint64_t ui2 LOG_INDEX)
{
LOG_EXEC
return ui1 - ui2;
}
STATIC uint64_t
FUNC_NAME(mul_func_uint64_t_u_u)(uint64_t ui1, uint64_t ui2 LOG_INDEX)
{
LOG_EXEC
return ((unsigned long long)ui1) * ((unsigned long long)ui2);
}
STATIC uint64_t
FUNC_NAME(mod_func_uint64_t_u_u)(uint64_t ui1, uint64_t ui2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
(ui2 == 0) ?
(UNDEFINED(ui1)) :
#endif
# 882 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(ui1 % ui2);
}
STATIC uint64_t
FUNC_NAME(div_func_uint64_t_u_u)(uint64_t ui1, uint64_t ui2 LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
(ui2 == 0) ?
(UNDEFINED(ui1)) :
#endif
# 894 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(ui1 / ui2);
}
STATIC uint64_t
FUNC_NAME(lshift_func_uint64_t_u_s)(uint64_t left, int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((((int)right) < 0) || (((int)right) >= 32) || (left > (UINT64_MAX >> ((int)right)))) ?
(UNDEFINED(left)) :
#endif
# 906 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left << ((int)right));
}
STATIC uint64_t
FUNC_NAME(lshift_func_uint64_t_u_u)(uint64_t left, unsigned int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((((unsigned int)right) >= 32) || (left > (UINT64_MAX >> ((unsigned int)right)))) ?
(UNDEFINED(left)) :
#endif
# 918 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left << ((unsigned int)right));
}
STATIC uint64_t
FUNC_NAME(rshift_func_uint64_t_u_s)(uint64_t left, int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
((((int)right) < 0) || (((int)right) >= 32)) ?
(UNDEFINED(left)) :
#endif
# 930 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left >> ((int)right));
}
STATIC uint64_t
FUNC_NAME(rshift_func_uint64_t_u_u)(uint64_t left, unsigned int right LOG_INDEX)
{
LOG_EXEC
return
#ifndef UNSAFE
(((unsigned int)right) >= 32) ?
(UNDEFINED(left)) :
#endif
# 942 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
(left >> ((unsigned int)right));
}
#endif
# 946 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
#endif
# 948 "/Users/jeffbush/src/3rdParty/csmith/runtime/safe_math.h"
# 101 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h" 2
#undef FUNC_NAME
#endif
# 103 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#define INT_BIT (sizeof(int)*CHAR_BIT)
#define _CSMITH_BITFIELD(x) (((x)>INT_BIT)?((x)%INT_BIT):(x))
#ifdef TCC
void* memcpy(void* dest, const void* src, size_t count) {
char* dst8 = (char*)dest;
char* src8 = (char*)src;
while (count--) {
*dst8++ = *src8++;
}
return dest;
}
void *memset(void *s, int c, size_t n)
{
unsigned char* p=s;
while(n--)
*p++ = (unsigned char)c;
return s;
}
#endif
# 128 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
#endif // RANDOM_INC_H
# 130 "/Users/jeffbush/src/3rdParty/csmith/runtime/random_inc.h"
# 44 "/Users/jeffbush/src/3rdParty/csmith/runtime/csmith.h" 2
static uint32_t crc32_tab[256];
static uint32_t crc32_context = 0xFFFFFFFFUL;
static void
crc32_gentab (void)
{
uint32_t crc;
const uint32_t poly = 0xEDB88320UL;
int i, j;
for (i = 0; i < 256; i++) {
crc = i;
for (j = 8; j > 0; j--) {
if (crc & 1) {
crc = (crc >> 1) ^ poly;
} else {
crc >>= 1;
}
}
crc32_tab[i] = crc;
}
}
static void
crc32_byte (uint8_t b) {
crc32_context =
((crc32_context >> 8) & 0x00FFFFFF) ^
crc32_tab[(crc32_context ^ b) & 0xFF];
}
#if defined(__SPLAT__) || defined (__COMPCERT__) || defined(NO_LONGLONG)
static void
crc32_8bytes (uint32_t val)
{
crc32_byte ((val>>0) & 0xff);
crc32_byte ((val>>8) & 0xff);
crc32_byte ((val>>16) & 0xff);
crc32_byte ((val>>24) & 0xff);
}
static void
transparent_crc (uint32_t val, char* vname, int flag)
{
crc32_8bytes(val);
if (flag) {
printf("...checksum after hashing %s : %X\n", vname, crc32_context ^ 0xFFFFFFFFU);
}
}
#else
# 94 "/Users/jeffbush/src/3rdParty/csmith/runtime/csmith.h"
static void
crc32_8bytes (uint64_t val)
{
crc32_byte ((val>>0) & 0xff);
crc32_byte ((val>>8) & 0xff);
crc32_byte ((val>>16) & 0xff);
crc32_byte ((val>>24) & 0xff);
crc32_byte ((val>>32) & 0xff);
crc32_byte ((val>>40) & 0xff);
crc32_byte ((val>>48) & 0xff);
crc32_byte ((val>>56) & 0xff);
}
static void
transparent_crc (uint64_t val, char* vname, int flag)
{
crc32_8bytes(val);
if (flag) {
printf("...checksum after hashing %s : %lX\n", vname, crc32_context ^ 0xFFFFFFFFUL);
}
}
#endif
# 116 "/Users/jeffbush/src/3rdParty/csmith/runtime/csmith.h"
/*****************************************************************************/
#endif
# 120 "/Users/jeffbush/src/3rdParty/csmith/runtime/csmith.h"
#endif /* RANDOM_RUNTIME_H */
# 122 "/Users/jeffbush/src/3rdParty/csmith/runtime/csmith.h"
/*
* Local Variables:
* c-basic-offset: 4
* tab-width: 4
* End:
*/
/* End of file. */
# 11 "fail1.c" 2
static long __undefined;
/* --- Struct/Union Declarations --- */
#pragma pack(push)
#pragma pack(1)
struct S0 {
unsigned f0 : 26;
};
#pragma pack(pop)
struct S1 {
unsigned f0 : 31;
unsigned f1 : 5;
const signed f2 : 22;
signed f3 : 10;
const signed f4 : 3;
};
#pragma pack(push)
#pragma pack(1)
struct S2 {
const volatile struct S0 f0;
};
#pragma pack(pop)
#pragma pack(push)
#pragma pack(1)
struct S3 {
signed f0 : 6;
const volatile signed f1 : 25;
signed f2 : 22;
signed f3 : 6;
signed f4 : 7;
};
#pragma pack(pop)
/* --- GLOBAL VARIABLES --- */
static volatile struct S3 g_2 = {-4,2888,1648,0,-7};/* VOLATILE GLOBAL g_2 */
static struct S1 g_8 = {32445,4,222,-19,1};
static int32_t * const g_9 = (void*)0;
static const int32_t g_22[3][10][2] = {{{0xEF9F3B06L,(-10L)},{3L,(-1L)},{1L,6L},{0x6B5CFDA6L,6L},{1L,(-1L)},{3L,(-10L)},{0xEF9F3B06L,0x14A9C79EL},{1L,1L},{0xEF8169C1L,9L},{(-1L),0x6B5CFDA6L}},{{1L,0x093D7F28L},{9L,1L},{8L,0x9E96BB64L},{8L,1L},{9L,0x093D7F28L},{1L,0x6B5CFDA6L},{(-1L),9L},{0xEF8169C1L,1L},{1L,0x14A9C79EL},{0xEF9F3B06L,(-10L)}},{{3L,(-1L)},{1L,6L},{0x6B5CFDA6L,6L},{(-1L),0x6B5CFDA6L},{0xEF8169C1L,3L},{1L,0x9E96BB64L},{0L,0L},{0x14A9C79EL,0xEF9F3B06L},{0x6B5CFDA6L,(-10L)},{0xE7EB6652L,1L}}};
static const int32_t *g_21 = &g_22[0][9][1];
static struct S0 g_23 = {2607};
static int32_t g_62[8][8] = {{0x125F8973L,(-1L),0x270ADFF4L,0x270ADFF4L,(-1L),0x125F8973L,(-1L),0x270ADFF4L},{0xDC4505AFL,(-1L),0xDC4505AFL,0x125F8973L,0x125F8973L,0xDC4505AFL,(-1L),0xDC4505AFL},{0xA4BDACABL,0x125F8973L,0x270ADFF4L,0x125F8973L,0xA4BDACABL,0xA4BDACABL,0x125F8973L,0x270ADFF4L},{0xA4BDACABL,0xA4BDACABL,0x125F8973L,0x270ADFF4L,0x125F8973L,0xA4BDACABL,0xA4BDACABL,0x125F8973L},{0xDC4505AFL,0x125F8973L,0x125F8973L,0xDC4505AFL,(-1L),0xDC4505AFL,0x125F8973L,0x125F8973L},{0x125F8973L,(-1L),0x270ADFF4L,0x270ADFF4L,(-1L),0x125F8973L,(-1L),0x270ADFF4L},{0xDC4505AFL,(-1L),0xDC4505AFL,0x125F8973L,0x125F8973L,0xDC4505AFL,(-1L),0xDC4505AFL},{0xA4BDACABL,0x125F8973L,0x270ADFF4L,0x125F8973L,0xA4BDACABL,0xA4BDACABL,0x125F8973L,0x270ADFF4L}};
static int32_t *g_67 = (void*)0;
static int32_t **g_66 = &g_67;
static struct S1 g_72 = {12972,1,623,-6,-0};
static struct S1 *g_71[7] = {&g_72,&g_72,&g_72,&g_72,&g_72,&g_72,&g_72};
static int32_t g_73 = 0xE5819C35L;
static struct S3 *g_76 = (void*)0;
static struct S3 g_79 = {-3,-3495,619,5,-9};/* VOLATILE GLOBAL g_79 */
static int16_t g_102[6][7][6] = {{{(-6L),(-1L),(-2L),0x1F15L,0xB34EL,0x9561L},{(-1L),4L,(-1L),(-1L),0xCF26L,0xB2A3L},{1L,(-6L),(-1L),(-1L),(-2L),0xC658L},{0xCF26L,0x0E8AL,0L,0x88C5L,0x0644L,8L},{0L,1L,0xAFEBL,(-1L),0xA7AFL,0x1F15L},{1L,0L,1L,1L,0xBFC2L,5L},{0x14DBL,(-10L),(-2L),0x5949L,0x88C5L,(-1L)}},{{(-10L),5L,0xB405L,0xB405L,5L,(-10L)},{1L,0xB2A3L,0x0E8AL,8L,0x10A3L,1L},{0L,0xAFEBL,0xB34EL,(-1L),0x2B3DL,(-1L)},{0L,0xBFC2L,(-1L),8L,0x0644L,0x88C5L},{1L,0x10A3L,0x9561L,0xB405L,(-1L),0x1F15L},{(-10L),1L,0x0348L,0x5949L,1L,(-1L)},{0x14DBL,0x3468L,2L,1L,(-1L),0xB405L}},{{1L,5L,(-1L),(-1L),0xCAE5L,0L},{0L,0x5949L,0x0E8AL,0x88C5L,0x0E8AL,0x5949L},{0xCF26L,4L,0xC658L,(-1L),2L,(-1L)},{1L,(-5L),0x2B3DL,5L,0x0348L,(-1L)},{0xB34EL,0L,(-1L),0xBFC2L,(-1L),0x6101L},{8L,0xB34EL,(-1L),(-1L),0xB2A3L,0L},{0L,0x88C5L,0x0644L,8L,(-1L),0xBFC2L}},{{0x14DBL,(-2L),(-5L),0xCF26L,0x1F15L,8L},{(-1L),8L,0xB2A3L,(-1L),1L,0x14DBL},{0xB2A3L,0x4CCDL,1L,0x464FL,0x464FL,1L},{0x3468L,0x3468L,0x6101L,0x1F15L,0x0348L,0xA7AFL},{0xB405L,(-10L),0xB34EL,1L,0xB484L,0x6101L},{0x88C5L,0xB405L,0xB34EL,0xCAE5L,0x3468L,0xA7AFL},{0L,0xCAE5L,0x6101L,0L,(-2L),1L}},{{0L,(-2L),1L,0x10A3L,2L,0x14DBL},{0xC658L,5L,0xB2A3L,0xA7AFL,(-10L),8L},{(-10L),(-1L),(-5L),0x464FL,0x0644L,0xBFC2L},{0L,1L,0x0644L,0L,0x0348L,0L},{(-1L),0xB2A3L,(-1L),0x0E8AL,0xD93FL,0x6101L},{0xCAE5L,(-1L),(-1L),0x0348L,0x464FL,(-1L)},{0xC658L,1L,0L,0x0348L,0x4CCDL,(-2L)}},{{(-6L),(-1L),(-1L),(-2L),0xC658L,0L},{8L,4L,0xD93FL,0xC658L,0x6101L,1L},{0xB484L,0x14DBL,(-2L),(-5L),0xCF26L,0x1F15L},{0x0644L,0x6101L,0x0E8AL,0x4CCDL,1L,0xB34EL},{0xCAE5L,0x464FL,0x14DBL,0L,0xBFC2L,0xBFC2L},{1L,0xCAE5L,0xCAE5L,1L,0xB484L,(-1L)},{0xC658L,0x9561L,(-5L),(-6L),0xB405L,0L}}};
static uint64_t g_105 = 0xA9FDAC8820D8B5B8LL;
static int32_t g_109 = 0x5F75C09CL;
static uint8_t g_112 = 0x6FL;
static uint8_t g_118 = 0x12L;
static uint8_t *g_117 = &g_118;
static int8_t g_123 = (-6L);
static uint32_t g_173 = 4294967294UL;
static int8_t g_196 = 0x80L;
static int8_t g_213 = 0xC5L;
static int32_t *g_237 = &g_62[3][3];
static int64_t g_254 = (-1L);
static uint32_t g_255 = 0UL;
static struct S1 g_272[8][4][1] = {{{{11978,2,1171,2,-0}},{{22955,1,586,22,-1}},{{11978,2,1171,2,-0}},{{19540,1,1794,2,-0}}},{{{16981,2,315,-10,-1}},{{34318,2,-1923,6,0}},{{16942,0,-675,0,-0}},{{29743,0,-1112,5,-1}}},{{{6775,1,-1040,26,-0}},{{29743,0,-1112,5,-1}},{{16942,0,-675,0,-0}},{{34318,2,-1923,6,0}}},{{{16981,2,315,-10,-1}},{{19540,1,1794,2,-0}},{{11978,2,1171,2,-0}},{{22955,1,586,22,-1}}},{{{11978,2,1171,2,-0}},{{19540,1,1794,2,-0}},{{16981,2,315,-10,-1}},{{34318,2,-1923,6,0}}},{{{16942,0,-675,0,-0}},{{29743,0,-1112,5,-1}},{{6775,1,-1040,26,-0}},{{29743,0,-1112,5,-1}}},{{{16942,0,-675,0,-0}},{{34318,2,-1923,6,0}},{{16981,2,315,-10,-1}},{{19540,1,1794,2,-0}}},{{{11978,2,1171,2,-0}},{{22955,1,586,22,-1}},{{11978,2,1171,2,-0}},{{19540,1,1794,2,-0}}}};
static int64_t g_327 = 0L;
static int32_t ***g_348 = (void*)0;
static uint32_t g_360 = 18446744073709551615UL;
static int32_t g_365 = 0x7CDF4BE7L;
static struct S2 g_375[6][10] = {{{{7708}},{{7708}},{{3127}},{{7383}},{{5262}},{{7383}},{{3127}},{{7708}},{{7708}},{{3127}}},{{{3101}},{{7383}},{{7708}},{{7708}},{{3127}},{{7383}},{{5262}},{{7383}},{{3127}},{{7708}}},{{{4548}},{{3101}},{{4548}},{{7708}},{{5262}},{{5262}},{{7708}},{{4548}},{{3101}},{{4548}}},{{{4548}},{{7383}},{{3101}},{{3127}},{{3101}},{{7383}},{{4548}},{{4548}},{{7383}},{{3101}}},{{{7383}},{{4548}},{{4548}},{{7383}},{{3101}},{{3127}},{{3101}},{{7383}},{{4548}},{{4548}}},{{{3101}},{{4548}},{{7708}},{{5262}},{{5262}},{{7708}},{{4548}},{{3101}},{{4548}},{{7708}}}};
static struct S2 g_378 = {{6114}};/* VOLATILE GLOBAL g_378 */
static uint16_t g_380 = 0x50E7L;
static uint32_t g_399 = 4294967294UL;
static volatile struct S2 *g_438 = (void*)0;
static int32_t g_451 = 0x7E2F8FB0L;
static const uint8_t g_452 = 1UL;
static volatile struct S2 g_462 = {{3045}};/* VOLATILE GLOBAL g_462 */
static int32_t ** const volatile g_464[4] = {&g_237,&g_237,&g_237,&g_237};
static struct S3 g_469 = {4,2444,1966,-6,8};/* VOLATILE GLOBAL g_469 */
/* --- FORWARD DECLARATIONS --- */
static struct S3 func_1(void);
static int32_t * func_3(struct S1 p_4, uint32_t p_5, int32_t * const p_6, int32_t * p_7);
static int32_t * func_10(int32_t p_11, const int8_t p_12, int8_t p_13, uint32_t p_14, int32_t * p_15);
static int32_t * func_17(const int32_t * p_18, struct S0 p_19, uint8_t p_20);
static int32_t ** const func_24(int64_t p_25, struct S1 p_26, int64_t p_27);
static struct S1 func_28(int32_t * p_29, int32_t * p_30, struct S1 p_31, int32_t * p_32);
static const struct S1 func_33(int32_t * p_34, int16_t p_35, int32_t p_36, uint16_t p_37, int64_t p_38);
static int32_t * func_39(uint8_t p_40, struct S1 p_41, int16_t p_42, int32_t ** p_43, struct S0 p_44);
static int32_t func_46(int32_t ** p_47, int32_t ** p_48, uint8_t p_49, uint64_t p_50, struct S0 p_51);
static int32_t ** func_52(int32_t p_53, int64_t p_54, struct S0 p_55);
/* --- FUNCTIONS --- */
/* ------------------------------------------ */
/*
* reads : g_2 g_8 g_9 g_21 g_23 g_22 g_66 g_67 g_73 g_62 g_76 g_102 g_79.f4 g_79.f0 g_105 g_72.f4 g_109 g_112 g_123 g_72.f0 g_72.f2 g_117 g_118 g_79.f2 g_254 g_237 g_72.f1 g_173 g_272.f4 g_213 g_196 g_380 g_272.f3 g_399 g_365 g_272 g_360 g_438 g_451 g_452 g_462 g_469
* writes: g_62 g_67 g_71 g_73 g_76 g_102 g_79.f0 g_105 g_109 g_112 g_173 g_123 g_196 g_23 g_118 g_237 g_254 g_213 g_380 g_399 g_365 g_79.f4 g_360 g_438 g_451
*/
static struct S3 func_1(void)
{ /* block id: 0 */
uint16_t l_16 = 0xFBFCL;
int32_t *l_463 = (void*)0;
int32_t *l_465[5][2] = {{&g_62[3][0],&g_62[3][0]},{&g_62[3][0],&g_62[3][0]},{&g_62[3][0],&g_62[3][0]},{&g_62[3][0],&g_62[3][0]},{&g_62[3][0],&g_62[3][0]}};
uint8_t l_466 = 0xD1L;
int i, j;
l_465[3][0] = (l_463 = ((*g_66) = (g_2 , func_3(g_8, g_2.f4, g_9, func_10(l_16, g_8.f2, g_8.f4, l_16, func_17(g_21, g_23, l_16))))));
l_466--;
return g_469;
}
/* ------------------------------------------ */
/*
* reads : g_462
* writes: g_365
*/
static int32_t * func_3(struct S1 p_4, uint32_t p_5, int32_t * const p_6, int32_t * p_7)
{ /* block id: 350 */
(*p_7) = (g_462 , 0L);
return p_7;
}
/* ------------------------------------------ */
/*
* reads : g_105 g_117 g_118 g_112 g_23 g_21 g_22 g_66 g_67 g_73 g_62 g_76 g_237
* writes: g_112 g_213 g_237 g_71 g_73 g_62 g_76
*/
static int32_t * func_10(int32_t p_11, const int8_t p_12, int8_t p_13, uint32_t p_14, int32_t * p_15)
{ /* block id: 345 */
int32_t **l_455 = &g_237;
uint8_t *l_456 = &g_112;
int8_t *l_457 = &g_213;
int8_t **l_459 = &l_457;
int8_t ***l_458 = &l_459;
int32_t l_460[3][9][8] = {{{(-10L),9L,0xB4C9D110L,1L,0L,0x8368AC0DL,0L,1L},{1L,(-9L),1L,0L,0x3E332836L,0xFFE8300AL,0x82B9D2A6L,0x40B65088L},{(-1L),1L,0x0B8B6142L,0x1C479956L,0xCAE0702FL,0x0D29B817L,0x3E332836L,(-10L)},{(-1L),0xA7899793L,0x6269B653L,0xB93B8C77L,0x3E332836L,0xF3F89BC4L,0L,0xC8E3FE83L},{1L,1L,0x03859B3EL,(-7L),0x66737CBAL,0L,0xB4C9D110L,0xF39930DAL},{0x8C88961CL,0x8368AC0DL,0x40B65088L,0x6D9348BBL,1L,(-1L),0xFC240C98L,0x116BFF4DL},{0x1D9B47E1L,1L,0xA6BE0E4CL,(-2L),0x116BFF4DL,6L,1L,(-10L)},{0xFFE8300AL,0x1D9B47E1L,0x47AFC7F9L,0L,0L,(-8L),0x82B9D2A6L,0xC8E3FE83L},{0x738E2D4AL,0xC89F0725L,0xB4B67477L,0x37A56C9AL,0x1D9B47E1L,0x82B9D2A6L,1L,0x52B91847L}},{{0x61651B2AL,6L,0x1F22FE2CL,0L,(-10L),1L,6L,0x9A539BB4L},{0L,0x6C72ABB9L,1L,0xD0F400D5L,8L,(-10L),0xB461BF99L,0xD9EAEB8EL},{0xDA56DFBFL,0xA6BE0E4CL,0x23E0E047L,0L,0xB93B8C77L,(-10L),0x1D9B47E1L,0xA7899793L},{(-1L),(-7L),0xB461BF99L,0x1FC5D653L,0xD9EAEB8EL,(-2L),2L,(-1L)},{0x8728D326L,0L,9L,0x52B91847L,0x52B91847L,9L,0L,0x8728D326L},{0x1C479956L,0xF813A901L,0x6D9348BBL,0L,(-2L),0x019CDC91L,0L,(-7L)},{0x82B9D2A6L,0x6B73621BL,0xF39930DAL,0xF09271EAL,0L,0x019CDC91L,0L,0x40B65088L},{0x66737CBAL,0xB93B8C77L,0xB461BF99L,1L,0x0B8B6142L,0L,1L,0xB79E00ADL},{9L,0xC8E3FE83L,0x47AFC7F9L,0x18016193L,0x8C88961CL,0L,0xA6BE0E4CL,0L}},{{0xB461BF99L,0xA6BE0E4CL,0xCAE0702FL,0x7AA9D2AAL,1L,4L,0x1F22FE2CL,1L},{0x23E0E047L,0xDA56DFBFL,1L,0xA7899793L,(-9L),8L,1L,1L},{1L,0x66737CBAL,(-9L),0x0B8B6142L,0x3E332836L,0xF813A901L,8L,0xC89F0725L},{0x1F22FE2CL,0xF020BEFDL,0L,0x74DA118CL,8L,0xF39930DAL,0L,0xC8E3FE83L},{0xB4B67477L,0x3E332836L,0L,(-1L),6L,0xD9EAEB8EL,0xC8B6D990L,0xEF490AFEL},{0x47AFC7F9L,(-2L),0x707D977CL,0xB79E00ADL,0xFFE8300AL,0xF020BEFDL,2L,0xC8B6D990L},{0xA6BE0E4CL,0x31E00E8CL,0L,0x9A539BB4L,(-1L),0x8728D326L,(-3L),0xD5F2B8EAL},{0x40B65088L,0x82B9D2A6L,0xFFE8300AL,0x3E332836L,0L,1L,(-9L),1L},{0x03859B3EL,0xD9EAEB8EL,1L,0xD9EAEB8EL,0x03859B3EL,0x1FC5D653L,(-7L),0L}}};
int32_t *l_461 = &g_365;
int i, j, k;
l_460[0][2][1] = (safe_lshift_func_uint16_t_u_u(g_105, func_46(l_455, &p_15, (*g_117), ((((((((*l_456) ^= 0xD4L) != ((*l_457) = p_12)) <= ((void*)0 != l_458)) , 0xE2C8L) , l_460[1][6][7]) > 4294967289UL) , 0x78DD73AED9ED0E64LL), g_23)));
return l_461;
}
/* ------------------------------------------ */
/*
* reads : g_22 g_8.f3 g_21 g_66 g_8.f4 g_67 g_73 g_62 g_76 g_23 g_102 g_79.f4 g_79.f0 g_105 g_72.f4 g_109 g_123 g_8.f0 g_72.f0 g_72.f2 g_117 g_118 g_79.f2 g_254 g_237 g_72.f1 g_173 g_272.f4 g_380 g_272.f3 g_8.f1 g_112 g_399 g_365 g_272 g_360 g_438 g_451 g_452 g_213 g_196
* writes: g_62 g_67 g_71 g_73 g_76 g_102 g_79.f0 g_105 g_109 g_112 g_173 g_123 g_196 g_23 g_118 g_237 g_254 g_213 g_380 g_399 g_365 g_79.f4 g_360 g_438 g_451
*/
static int32_t * func_17(const int32_t * p_18, struct S0 p_19, uint8_t p_20)
{ /* block id: 1 */
struct S1 l_45[6] = {{6139,2,-5,8,1},{6139,2,-5,8,1},{6139,2,-5,8,1},{6139,2,-5,8,1},{6139,2,-5,8,1},{6139,2,-5,8,1}};
int32_t l_56 = 0xD8B12ACFL;
struct S0 l_57[7][4] = {{{6172},{1100},{664},{664}},{{664},{1100},{6172},{6172}},{{3387},{3387},{664},{6172}},{{8019},{1100},{8019},{664}},{{8019},{664},{664},{8019}},{{3387},{664},{6172},{664}},{{664},{1100},{6172},{6172}}};
int32_t **l_68[8] = {&g_67,&g_67,&g_67,&g_67,&g_67,&g_67,&g_67,&g_67};
int32_t *l_386[1][1];
int32_t ***l_422 = &l_68[0];
int32_t *l_450 = &g_451;
int i, j;
for (i = 0; i < 1; i++)
{
for (j = 0; j < 1; j++)
l_386[i][j] = &g_62[5][7];
}
lbl_440:
(*l_422) = func_24(((g_22[2][1][1] , ((func_28((func_33(((*g_66) = func_39(p_19.f0, l_45[3], (func_46(func_52((((void*)0 == &p_18) || (((~((l_56 |= g_8.f3) == l_45[3].f1)) ^ l_45[3].f2) == (~(l_57[2][3] , p_20)))), g_8.f3, p_19), l_68[0], g_8.f3, g_8.f4, p_19) , p_19.f0), l_68[0], g_23)), p_20, g_272[5][2][0].f3, p_19.f0, g_8.f1) , l_386[0][0]), &g_365, l_45[5], &g_365) , g_62[7][0]) < p_19.f0)) , g_399), g_272[5][3][0], p_20);
for (g_112 = 6; (g_112 < 38); g_112 = safe_add_func_int32_t_s_s(g_112, 4))
{ /* block id: 312 */
int32_t l_436 = (-3L);
struct S0 l_444 = {5324};
for (g_109 = 0; (g_109 != 19); g_109++)
{ /* block id: 315 */
uint32_t l_433 = 0x371FA1E8L;
for (g_254 = 0; (g_254 <= 16); g_254++)
{ /* block id: 318 */
uint32_t l_437 = 0xD1587DE0L;
int32_t *l_442 = (void*)0;
for (g_360 = 0; (g_360 <= 34); g_360 = safe_add_func_int16_t_s_s(g_360, 1))
{ /* block id: 321 */
uint16_t l_431 = 0xECBFL;
int32_t l_432 = 0L;
int32_t *l_441[2][1][9] = {{{(void*)0,&l_432,(void*)0,&g_365,&l_432,&g_62[0][3],&g_62[0][3],&l_432,&g_365}},{{(void*)0,&l_432,(void*)0,&g_365,&l_432,&g_62[0][3],&g_62[0][3],&l_432,&g_365}}};
struct S1 **l_443 = &g_71[6];
struct S0 *l_445[2];
int i, j, k;
for (i = 0; i < 2; i++)
l_445[i] = &g_23;
if (l_431)
{ /* block id: 322 */
volatile struct S2 **l_439 = &g_438;
if ((*p_18))
break;
++l_433;
l_437 |= (l_436 = l_432);
(*l_439) = g_438;
}
else
{ /* block id: 328 */
if (g_72.f2)
goto lbl_440;
return l_442;
}
(*l_443) = &g_8;
g_23 = (p_19 = l_444);
}
return (*g_66);
}
}
}
g_109 = (safe_div_func_int8_t_s_s(((safe_rshift_func_uint8_t_u_u(((*g_117) = (*g_117)), 4)) == (func_46(((*l_422) = func_52((p_20 , (p_20 , ((*l_450) ^= ((p_20 & p_20) <= p_20)))), g_72.f2, g_23)), &g_67, p_19.f0, p_19.f0, p_19) != p_20)), g_452));
return (*g_66);
}
/* ------------------------------------------ */
/*
* reads : g_21 g_22 g_23 g_66 g_67 g_73 g_62 g_76 g_399 g_79.f4
* writes: g_62 g_67 g_71 g_73 g_76 g_399 g_79.f4
*/
static int32_t ** const func_24(int64_t p_25, struct S1 p_26, int64_t p_27)
{ /* block id: 303 */
uint16_t l_410 = 0xA977L;
struct S1 **l_415 = &g_71[6];
int32_t *l_418 = &g_62[3][4];
int64_t *l_420 = &g_327;
int64_t **l_419 = &l_420;
uint32_t *l_421 = &g_399;
l_410 = (*g_21);
g_79.f4 &= ((safe_add_func_int64_t_s_s((0L && (0UL < (((*l_421) |= (safe_div_func_uint16_t_u_u(func_46(func_52(((void*)0 == l_415), (l_410 && (safe_rshift_func_uint8_t_u_s((((*l_419) = ((p_26 , 0xD376D18AL) , (void*)0)) != &g_327), p_26.f2))), g_23), &l_418, p_26.f2, p_26.f0, g_23), l_410))) > 0L))), l_410)) || 0L);
return &g_237;
}
/* ------------------------------------------ */
/*
* reads : g_117 g_118 g_23 g_21 g_22 g_66 g_67 g_73 g_62 g_76 g_237 g_72.f1 g_112 g_173 g_399 g_365
* writes: g_237 g_71 g_73 g_62 g_76 g_196 g_173 g_399 g_365
*/
static struct S1 func_28(int32_t * p_29, int32_t * p_30, struct S1 p_31, int32_t * p_32)
{ /* block id: 296 */
int32_t **l_391 = &g_237;
int8_t *l_392 = (void*)0;
int8_t *l_393 = &g_196;
uint32_t *l_396 = &g_173;
uint32_t *l_397 = (void*)0;
uint32_t *l_398 = &g_399;
uint16_t l_400[10] = {0xD8CEL,1UL,0x3DD0L,0x3DD0L,1UL,0xD8CEL,1UL,0x3DD0L,0x3DD0L,1UL};
int32_t *l_401 = &g_73;
int32_t *l_402 = &g_62[5][7];
int32_t *l_403 = (void*)0;
int32_t *l_404 = &g_62[7][0];
int32_t *l_405[3];
uint64_t l_406[10][5] = {{0xB7C534B82F9F639BLL,0xF26FA471ACD1B734LL,0xFFA182332B9995A0LL,7UL,0xF26FA471ACD1B734LL},{18446744073709551608UL,0xF26FA471ACD1B734LL,0xE9AF762445D952B6LL,0xE9AF762445D952B6LL,0xF26FA471ACD1B734LL},{0xB7C534B82F9F639BLL,0UL,0xE9AF762445D952B6LL,7UL,0UL},{0xB7C534B82F9F639BLL,0xF26FA471ACD1B734LL,0xFFA182332B9995A0LL,7UL,0xF26FA471ACD1B734LL},{18446744073709551608UL,0xF26FA471ACD1B734LL,0xE9AF762445D952B6LL,0xE9AF762445D952B6LL,0xF26FA471ACD1B734LL},{0xB7C534B82F9F639BLL,0UL,0xE9AF762445D952B6LL,7UL,0UL},{0xB7C534B82F9F639BLL,0xF26FA471ACD1B734LL,0xFFA182332B9995A0LL,7UL,0xE9AF762445D952B6LL},{0xD5020EB62A683867LL,0xE9AF762445D952B6LL,18446744073709551612UL,18446744073709551612UL,0xE9AF762445D952B6LL},{0UL,0xFFA182332B9995A0LL,18446744073709551612UL,0xE78482419879306DLL,0xFFA182332B9995A0LL},{0UL,0xE9AF762445D952B6LL,0x5F2B1AF444A96983LL,0xE78482419879306DLL,0xE9AF762445D952B6LL}};
struct S1 l_409 = {41921,0,-40,16,-0};
int i, j;
for (i = 0; i < 3; i++)
l_405[i] = &g_109;
(*p_30) |= (((*l_398) ^= ((*l_396) |= (~(safe_sub_func_uint32_t_u_u((safe_mul_func_int16_t_s_s((func_46(l_391, l_391, (*g_117), p_31.f3, g_23) & ((*l_393) = p_31.f1)), g_72.f1)), (safe_mod_func_int64_t_s_s(0x6853BB1EF1FF3757LL, g_112))))))) >= l_400[8]);
l_406[6][2]++;
return l_409;
}
/* ------------------------------------------ */
/*
* reads :
* writes:
*/
static const struct S1 func_33(int32_t * p_34, int16_t p_35, int32_t p_36, uint16_t p_37, int64_t p_38)
{ /* block id: 293 */
uint8_t *l_383 = (void*)0;
int32_t l_384 = 0x0EC064C4L;
const struct S1 l_385[6][7] = {{{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0}},{{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0}},{{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0}},{{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0}},{{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0}},{{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0},{7488,3,1231,23,0}}};
int i, j;
l_384 |= (l_383 != &g_112);
return l_385[3][1];
}
/* ------------------------------------------ */
/*
* reads : g_62 g_73 g_102 g_79.f4 g_79.f0 g_105 g_72.f4 g_21 g_22 g_66 g_67 g_76 g_109 g_123 g_23 g_8.f0 g_72.f0 g_72.f2 g_117 g_118 g_79.f2 g_254 g_237 g_72.f1 g_173 g_272.f4 g_213 g_196 g_380 g_112
* writes: g_102 g_79.f0 g_105 g_71 g_73 g_62 g_76 g_109 g_112 g_173 g_67 g_123 g_196 g_23 g_118 g_237 g_254 g_213 g_380
*/
static int32_t * func_39(uint8_t p_40, struct S1 p_41, int16_t p_42, int32_t ** p_43, struct S0 p_44)
{ /* block id: 35 */
int32_t *l_85 = &g_62[5][7];
int32_t *l_86[5][2][5] = {{{(void*)0,&g_62[5][7],&g_62[5][7],&g_62[5][7],(void*)0},{&g_73,&g_62[5][7],&g_62[5][7],(void*)0,&g_62[5][7]}},{{&g_62[5][7],&g_62[5][7],&g_62[5][7],(void*)0,&g_73},{&g_62[5][7],&g_73,&g_73,&g_62[5][7],&g_62[5][7]}},{{&g_62[5][7],(void*)0,&g_62[5][7],&g_62[5][7],(void*)0},{&g_62[5][7],&g_73,&g_62[5][7],&g_62[5][7],&g_62[5][7]}},{{&g_73,&g_62[5][7],&g_73,&g_62[5][7],&g_62[5][7]},{(void*)0,&g_62[5][7],&g_62[5][7],&g_73,&g_73}},{{&g_62[5][7],&g_73,&g_62[5][7],&g_73,&g_62[5][7]},{&g_62[5][7],&g_62[5][7],&g_62[5][7],&g_73,&g_62[5][7]}}};
uint64_t l_87 = 3UL;
uint64_t *l_96 = &l_87;
int16_t *l_101[4][9][1] = {{{&g_102[1][2][2]},{&g_102[1][2][2]},{(void*)0},{&g_102[1][2][2]},{&g_102[1][6][1]},{&g_102[1][2][2]},{&g_102[1][2][2]},{&g_102[1][2][2]},{&g_102[1][6][1]}},{{&g_102[1][2][2]},{(void*)0},{&g_102[1][2][2]},{&g_102[1][2][2]},{&g_102[1][2][2]},{&g_102[1][2][2]},{&g_102[1][2][2]},{(void*)0},{&g_102[1][2][2]}},{{&g_102[1][6][1]},{&g_102[1][2][2]},{&g_102[1][2][2]},{&g_102[1][2][2]},{&g_102[1][6][1]},{&g_102[1][2][2]},{(void*)0},{&g_102[1][2][2]},{&g_102[1][2][2]}},{{&g_102[1][2][2]},{&g_102[1][2][2]},{&g_102[1][2][2]},{(void*)0},{&g_102[1][2][2]},{&g_102[1][6][1]},{&g_102[1][2][2]},{&g_102[1][2][2]},{&g_102[1][2][2]}}};
struct S0 *l_103[9][2];
uint64_t *l_104 = &g_105;
int32_t l_135 = 0x44FDB9DDL;
int32_t *l_148[6];
uint32_t l_197 = 0x99CE5FD4L;
int8_t *l_199 = &g_196;
int8_t **l_198 = &l_199;
uint8_t **l_226[9][8] = {{&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117},{&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117},{&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117},{&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117},{&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117},{&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117},{&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117},{&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117},{&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117}};
struct S1 *l_271 = &g_272[5][2][0];
int32_t l_329 = 0xA4E18471L;
struct S2 *l_377 = &g_378;
int64_t l_379 = 0L;
int i, j, k;
for (i = 0; i < 9; i++)
{
for (j = 0; j < 2; j++)
l_103[i][j] = &g_23;
}
for (i = 0; i < 6; i++)
l_148[i] = (void*)0;
lbl_211:
++l_87;
if ((!(0L || ((*l_104) |= (p_40 == (safe_lshift_func_int8_t_s_s((safe_add_func_int16_t_s_s(((safe_mod_func_int64_t_s_s(p_41.f1, (~((*l_96) = (*l_85))))) <= (*l_85)), g_73)), ((((safe_mul_func_int8_t_s_s((safe_rshift_func_int16_t_s_u((g_102[1][2][2] ^= g_73), g_79.f4)), (((g_79.f0 ^= ((p_40 , l_103[6][0]) == l_103[6][0])) || p_41.f0) == 4294967290UL))) , p_41.f0) ^ 9L) && 0xAE63DA66330F8949LL))))))))
{ /* block id: 41 */
uint16_t l_110 = 0x1AB3L;
int32_t **l_130[10] = {&l_86[2][1][0],&l_86[0][0][3],&l_86[0][0][3],&l_86[0][0][3],&l_86[0][0][3],&l_86[2][1][0],&l_86[0][0][3],&l_86[0][0][3],&l_86[0][0][3],&l_86[0][0][3]};
struct S0 l_210 = {4799};
uint8_t **l_225[3];
int16_t l_231 = 0xD279L;
uint8_t l_266 = 253UL;
struct S3 **l_279 = (void*)0;
const int8_t * const l_301 = &g_196;
uint8_t l_309[10] = {249UL,1UL,249UL,1UL,249UL,1UL,249UL,1UL,249UL,1UL};
int32_t * const *l_318 = (void*)0;
int32_t * const **l_317[8][9] = {{&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318},{&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318},{&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318},{&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318},{&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318},{&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318},{&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318},{&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318,&l_318}};
struct S1 *l_324 = (void*)0;
uint16_t l_330 = 1UL;
int i, j;
for (i = 0; i < 3; i++)
l_225[i] = (void*)0;
for (p_40 = 0; (p_40 < 43); ++p_40)
{ /* block id: 44 */
int32_t *l_108 = &g_109;
(*l_108) &= func_46(&l_86[0][0][1], &g_67, g_79.f0, g_72.f4, p_44);
if (p_44.f0)
break;
if (l_110)
break;
}
for (g_105 = 0; (g_105 <= 1); g_105 += 1)
{ /* block id: 51 */
uint8_t *l_120 = (void*)0;
int32_t **l_131 = &l_86[0][0][3];
int32_t l_133[1][10];
int32_t l_157 = (-6L);
int32_t l_158 = 0xDD6C4D08L;
int64_t l_183 = 1L;
struct S0 l_202 = {485};
int i, j;
for (i = 0; i < 1; i++)
{
for (j = 0; j < 10; j++)
l_133[i][j] = 0x043B8F34L;
}
for (l_87 = 0; (l_87 <= 1); l_87 += 1)
{ /* block id: 54 */
uint8_t *l_111 = &g_112;
uint8_t **l_119[1][1];
int8_t *l_121 = (void*)0;
int8_t *l_122 = &g_123;
int32_t l_132 = (-1L);
uint8_t l_147 = 0UL;
int32_t **l_154 = (void*)0;
int i, j;
for (i = 0; i < 1; i++)
{
for (j = 0; j < 1; j++)
l_119[i][j] = &g_117;
}
l_103[(l_87 + 2)][g_105] = l_103[l_87][g_105];
for (l_110 = 0; l_110 < 5; l_110 += 1)
{
for (p_42 = 0; p_42 < 2; p_42 += 1)
{
for (p_40 = 0; p_40 < 5; p_40 += 1)
{
l_86[l_110][p_42][p_40] = &g_109;
}
}
}
for (l_110 = 0; (l_110 <= 1); l_110 += 1)
{ /* block id: 59 */
return (*g_66);
}
}
for (l_110 = 0; (l_110 <= 1); l_110 += 1)
{ /* block id: 94 */
uint64_t l_159 = 18446744073709551615UL;
int32_t **l_212 = &l_86[0][0][3];
l_159++;
for (p_40 = 0; (p_40 <= 1); p_40 += 1)
{ /* block id: 98 */
if (p_40)
break;
}
for (g_112 = 0; (g_112 <= 1); g_112 += 1)
{ /* block id: 103 */
uint64_t l_170 = 1UL;
struct S1 **l_171 = &g_71[6];
uint32_t *l_172 = &g_173;
int8_t ***l_200 = (void*)0;
int8_t ***l_201 = &l_198;
int64_t *l_204 = &l_183;
uint8_t l_207 = 0UL;
if (((-10L) != ((safe_add_func_uint16_t_u_u((safe_rshift_func_int8_t_s_s((safe_div_func_uint64_t_u_u(((func_46(&l_148[3], &g_67, (safe_add_func_int64_t_s_s(l_170, p_41.f4)), ((func_46(&g_67, p_43, ((((*l_172) = (((*l_171) = &g_72) == &g_72)) == l_159) ^ p_40), g_123, p_44) , l_170) & (*g_21)), g_23) , (*g_21)) <= l_170), 0xFFC7C3E99366D9D4LL)), 4)), l_170)) , p_44.f0)))
{ /* block id: 106 */
int8_t *l_180 = &g_123;
(*l_85) = (safe_rshift_func_int8_t_s_s(((safe_add_func_int16_t_s_s((&g_72 != ((((safe_lshift_func_uint16_t_u_u(65526UL, 4)) > 65535UL) , (((((*l_180) |= (g_102[1][2][2] , (-8L))) | (-1L)) , g_8.f0) >= (l_183 = ((safe_lshift_func_int8_t_s_s((~(p_41.f3 , 0x35L)), 1)) , g_72.f0)))) , &p_41)), p_41.f3)) | 0x894A638292736123LL), g_62[5][6]));
}
else
{ /* block id: 110 */
int32_t l_192 = 0xF59C59D2L;
int8_t *l_195 = &g_196;
if ((*g_21))
break;
(*l_85) ^= (safe_add_func_int64_t_s_s(g_102[4][6][2], ((p_41 , p_42) , (g_123 | (safe_rshift_func_int8_t_s_s((safe_lshift_func_int16_t_s_u(((safe_mod_func_uint8_t_u_u(p_41.f4, 0x86L)) & (l_192 & (((safe_rshift_func_int8_t_s_s(((*l_195) = (0x2B8033DE5451DF1BLL || p_41.f0)), g_72.f2)) < 0x199A9337L) > (*g_117)))), l_197)), 1))))));
return (*g_66);
}
(*l_201) = l_198;
for (g_109 = 0; (g_109 <= 1); g_109 += 1)
{ /* block id: 119 */
if ((*g_21))
break;
(*g_66) = (l_202 , (*g_66));
return (*g_66);
}
if (((*l_85) = (((*g_117) <= 0L) | (safe_unary_minus_func_int64_t_s((~((*l_204) = 0x94D6678A5AF4F0EBLL)))))))
{ /* block id: 126 */
g_23 = p_44;
g_109 = (p_41.f1 | (safe_lshift_func_int16_t_s_u((p_41.f3 & ((*l_96) ^= (l_207 > (g_73 , (safe_sub_func_uint16_t_u_u(((p_41 , (g_123 , l_207)) != func_46(&g_67, &g_67, p_41.f2, l_170, l_210)), g_23.f0)))))), 12)));
return (*g_66);
}
else
{ /* block id: 131 */
struct S0 l_214 = {5370};
if (p_41.f2)
goto lbl_211;
(*l_212) = ((*g_66) = (p_40 , (*l_212)));
p_44 = l_214;
}
}
}
for (g_118 = 0; (g_118 <= 1); g_118 += 1)
{ /* block id: 143 */
return (*g_66);
}
}
if (p_41.f2)
{ /* block id: 147 */
int32_t * const l_215 = &g_109;
int32_t **l_216 = &g_67;
uint8_t **l_223[2][7] = {{&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117},{&g_117,&g_117,&g_117,&g_117,&g_117,&g_117,&g_117}};
uint8_t ***l_224 = (void*)0;
uint32_t l_265 = 8UL;
int32_t l_303[2][10] = {{(-1L),0x053CB167L,(-1L),(-1L),0x053CB167L,(-1L),(-1L),0x053CB167L,(-1L),(-1L)},{0x053CB167L,0x053CB167L,0x1A930AC7L,0x053CB167L,0x053CB167L,0x1A930AC7L,0x053CB167L,0x053CB167L,0x1A930AC7L,0x053CB167L}};
int64_t l_304 = 0x572DAFAD3BD019D2LL;
int i, j;
(*l_216) = l_215;
if (((safe_lshift_func_int16_t_s_u((g_102[0][4][5] = (p_42 = (p_41.f2 , p_41.f3))), 7)) > (safe_lshift_func_int16_t_s_s((safe_lshift_func_int16_t_s_u((g_62[7][7] < (((l_225[1] = l_223[0][0]) == l_226[0][7]) != 0x4FE09BB1L)), ((safe_lshift_func_int16_t_s_s(0xA2EFL, 5)) != (safe_div_func_int64_t_s_s((g_118 != ((p_41.f3 >= l_231) > 0x3CE6440DBB3CFD91LL)), p_41.f1))))), 1))))
{ /* block id: 152 */
int32_t *l_232 = &g_109;
struct S0 l_233[4] = {{7770},{7770},{7770},{7770}};
int i;
if (((*l_85) = 5L))
{ /* block id: 154 */
l_232 = ((g_23 , p_41.f2) , (void*)0);
l_233[3] = g_23;
}
else
{ /* block id: 157 */
uint32_t l_245 = 0x30AAFB5AL;
int32_t **l_252 = (void*)0;
int64_t *l_264 = &g_254;
(*g_67) |= p_41.f3;
(*l_215) &= (&p_42 != &p_42);
for (g_109 = 0; (g_109 != (-14)); g_109 = safe_sub_func_uint8_t_u_u(g_109, 5))
{ /* block id: 162 */
uint32_t l_236 = 0UL;
int32_t ***l_242 = &g_66;
int64_t *l_253[3];
int i;
for (i = 0; i < 3; i++)
l_253[i] = &g_254;
(*l_85) ^= ((((*g_66) = (l_236 , (*l_216))) != (g_237 = l_232)) , (safe_div_func_int32_t_s_s((((&p_44 == &g_23) < (safe_mul_func_uint16_t_u_u((*l_232), l_245))) , (**g_66)), p_41.f3)));
(*l_85) = (safe_add_func_int64_t_s_s((g_254 |= (((8UL | (safe_div_func_int64_t_s_s((safe_rshift_func_int8_t_s_u(g_79.f2, ((*g_117) ^= (g_72.f2 > (g_102[1][2][2] |= (p_41.f2 || p_42)))))), 18446744073709551606UL))) <= 0xFC59C9FE5A341899LL) == g_22[2][4][0])), p_41.f2));
if ((*g_237))
break;
}
(*g_67) = (p_44.f0 ^ (safe_div_func_int8_t_s_s(((safe_div_func_int64_t_s_s(((*l_264) = p_41.f2), g_22[0][9][1])) ^ p_41.f1), (l_266 |= (~l_265)))));
}
}
else
{ /* block id: 180 */
uint64_t l_269 = 7UL;
int32_t l_305 = 0x6FA15BBDL;
int32_t l_306 = (-6L);
for (p_40 = 0; (p_40 < 37); ++p_40)
{ /* block id: 183 */
int64_t *l_293 = &g_254;
int8_t *l_300 = &g_123;
int32_t l_302[3];
int i;
for (i = 0; i < 3; i++)
l_302[i] = 0xCA8C6D9CL;
if ((l_269 |= ((*g_67) = func_46(&g_237, &g_67, (g_123 , p_41.f4), g_72.f1, l_210))))
{ /* block id: 186 */
struct S1 **l_270 = &g_71[6];
struct S3 ***l_280 = (void*)0;
struct S3 **l_282 = (void*)0;
struct S3 ***l_281 = &l_282;
struct S0 l_283 = {3945};
l_271 = ((*l_270) = (void*)0);
(*l_216) = (*g_66);
(*l_85) &= ((**g_66) = (safe_mul_func_int8_t_s_s((safe_lshift_func_int8_t_s_u((safe_rshift_func_int8_t_s_u(g_123, (((p_41.f2 == p_40) < p_41.f3) && p_44.f0))), 0)), l_269)));
}
else
{ /* block id: 193 */
uint32_t *l_288 = &g_173;
int32_t l_299 = (-1L);
int32_t l_307 = 0x28B10FAFL;
int32_t l_308 = 0x5A75C873L;
struct S0 **l_312 = &l_103[5][1];
p_41.f3 &= ((safe_mul_func_uint8_t_u_u((+(safe_mod_func_int16_t_s_s((((65535UL | (func_46(func_52(p_42, (l_269 , (((*l_288)++) == (safe_mod_func_uint32_t_u_u((((l_293 != l_293) & (g_272[5][2][0].f4 == 0UL)) ^ (((safe_mul_func_uint16_t_u_u((safe_unary_minus_func_int8_t_s((safe_rshift_func_int16_t_s_s(p_41.f2, l_269)))), l_299)) <= 0L) , 0L)), p_40)))), g_23), p_43, p_41.f0, l_299, g_23) && g_62[2][1])) , (**l_216)) || (*g_21)), 0x8A22L))), l_269)) <= (*g_117));
(**g_66) = (l_300 == ((*l_215) , l_301));
l_309[5]++;
(*l_312) = &g_23;
}
for (g_73 = 7; (g_73 >= 0); g_73 -= 1)
{ /* block id: 202 */
(*g_67) |= (*g_21);
p_44 = p_44;
}
}
if ((*g_67))
{ /* block id: 207 */
int32_t * const ***l_319 = &l_317[1][6];
struct S1 *l_322 = &g_8;
for (l_305 = 0; (l_305 < (-25)); l_305--)
{ /* block id: 210 */
return (*g_66);
}
l_306 ^= ((safe_add_func_int16_t_s_s(((*l_215) = ((-9L) < (((*l_319) = l_317[6][0]) != &p_43))), l_269)) , 0x7427DB5CL);
p_44 = l_210;
for (l_305 = 7; (l_305 >= 2); l_305 -= 1)
{ /* block id: 219 */
struct S1 **l_323 = &l_271;
(**g_66) = (safe_mod_func_int64_t_s_s(((*g_117) == (((*l_323) = l_322) == (void*)0)), 18446744073709551611UL));
(**g_66) ^= (l_324 == &p_41);
return (*l_216);
}
}
else
{ /* block id: 225 */
for (g_213 = 0; (g_213 <= 0); g_213 += 1)
{ /* block id: 228 */
int32_t *l_325 = &g_62[2][3];
return l_325;
}
}
}
}
else
{ /* block id: 233 */
struct S3 **l_326 = &g_76;
int32_t l_328[4][1];
int i, j;
for (i = 0; i < 4; i++)
{
for (j = 0; j < 1; j++)
l_328[i][j] = (-1L);
}
(*l_326) = g_76;
++l_330;
}
}
else
{ /* block id: 237 */
int32_t *l_333 = &g_73;
return l_333;
}
for (g_196 = 0; (g_196 <= 1); g_196 += 1)
{ /* block id: 242 */
int32_t *l_334 = &g_62[5][7];
int32_t l_358 = 0x885A27DEL;
int32_t l_359 = 0x3D26074DL;
(*g_66) = l_334;
for (g_118 = 0; (g_118 <= 1); g_118 += 1)
{ /* block id: 246 */
uint8_t l_335 = 250UL;
int32_t l_369 = 0xEECA3812L;
(*l_334) = l_335;
for (l_87 = 0; (l_87 <= 1); l_87 += 1)
{ /* block id: 250 */
int16_t l_336 = 1L;
int8_t l_355 = (-10L);
struct S0 l_356[10][4] = {{{1031},{5305},{1311},{1223}},{{441},{3999},{160},{3999}},{{3999},{1311},{1031},{3999}},{{1031},{3999},{1223},{1223}},{{5305},{5305},{160},{441}},{{5305},{1311},{1223},{5305}},{{1031},{441},{1031},{1223}},{{3999},{441},{160},{5305}},{{441},{1311},{1311},{1223}},{{160},{1311},{5699},{3552}}};
int32_t l_357 = (-9L);
int32_t l_364 = 6L;
int32_t l_367 = (-1L);
int32_t l_370 = 1L;
struct S2 *l_374 = &g_375[4][5];
int i, j;
p_41.f3 ^= 0L;
}
}
}
g_380--;
return (*g_66);
}
/* ------------------------------------------ */
/*
* reads : g_21 g_22 g_66 g_67 g_73 g_62 g_76 g_237
* writes: g_67 g_71 g_73 g_62 g_76 g_237
*/
static int32_t func_46(int32_t ** p_47, int32_t ** p_48, uint8_t p_49, uint64_t p_50, struct S0 p_51)
{ /* block id: 12 */
struct S1 *l_69[6] = {(void*)0,(void*)0,(void*)0,(void*)0,(void*)0,(void*)0};
struct S0 l_80 = {8036};
struct S0 *l_81 = &l_80;
int32_t *l_84 = &g_73;
int i;
for (p_49 = 1; (p_49 <= 7); p_49 += 1)
{ /* block id: 15 */
if ((*g_21))
break;
(*p_47) = (*g_66);
for (p_50 = 0; (p_50 <= 7); p_50 += 1)
{ /* block id: 20 */
struct S1 **l_70[7][2][1] = {{{&l_69[0]},{&l_69[0]}},{{&l_69[0]},{&l_69[0]}},{{&l_69[0]},{&l_69[0]}},{{&l_69[0]},{&l_69[0]}},{{&l_69[0]},{&l_69[0]}},{{&l_69[0]},{&l_69[0]}},{{&l_69[0]},{&l_69[0]}}};
struct S3 **l_77 = &g_76;
struct S3 *l_78 = &g_79;
int i, j, k;
g_71[6] = l_69[0];
for (g_73 = 6; (g_73 >= 0); g_73 -= 1)
{ /* block id: 24 */
int i, j;
g_62[p_50][p_49] = (safe_rshift_func_uint16_t_u_u(g_62[p_50][g_73], 4));
}
l_78 = ((*l_77) = g_76);
}
}
(*l_81) = l_80;
(*l_84) ^= (safe_sub_func_int32_t_s_s(l_80.f0, g_62[3][2]));
(*p_47) = (*p_47);
return (*l_84);
}
/* ------------------------------------------ */
/*
* reads : g_21 g_22 g_66
* writes: g_62
*/
static int32_t ** func_52(int32_t p_53, int64_t p_54, struct S0 p_55)
{ /* block id: 3 */
int32_t l_60 = 0L;
const int32_t ***l_63 = (void*)0;
const int32_t **l_64 = &g_21;
int32_t *l_65 = &g_62[5][7];
for (p_54 = 6; (p_54 <= (-19)); p_54 = safe_sub_func_int16_t_s_s(p_54, 4))
{ /* block id: 6 */
int32_t *l_61[2][9] = {{&g_62[5][7],&g_62[6][6],&g_62[5][7],(void*)0,&g_62[6][6],&g_62[4][2],&g_62[4][2],&g_62[6][6],(void*)0},{&g_62[5][7],&g_62[6][6],&g_62[5][7],(void*)0,&g_62[6][6],&g_62[4][2],&g_62[4][2],&g_62[6][6],(void*)0}};
int i, j;
g_62[1][7] = l_60;
}
l_64 = &g_21;
(*l_65) = (**l_64);
return g_66;
}
/* ---------------------------------------- */
int main (int argc, char* argv[])
{
int i, j, k;
int print_hash_value = 0;
if (argc == 2 && strcmp(argv[1], "1") == 0) print_hash_value = 1;
platform_main_begin();
crc32_gentab();
func_1();
transparent_crc(g_2.f0, "g_2.f0", print_hash_value);
transparent_crc(g_2.f1, "g_2.f1", print_hash_value);
transparent_crc(g_2.f2, "g_2.f2", print_hash_value);
transparent_crc(g_2.f3, "g_2.f3", print_hash_value);
transparent_crc(g_2.f4, "g_2.f4", print_hash_value);
transparent_crc(g_8.f0, "g_8.f0", print_hash_value);
transparent_crc(g_8.f1, "g_8.f1", print_hash_value);
transparent_crc(g_8.f2, "g_8.f2", print_hash_value);
transparent_crc(g_8.f3, "g_8.f3", print_hash_value);
transparent_crc(g_8.f4, "g_8.f4", print_hash_value);
for (i = 0; i < 3; i++)
{
for (j = 0; j < 10; j++)
{
for (k = 0; k < 2; k++)
{
transparent_crc(g_22[i][j][k], "g_22[i][j][k]", print_hash_value);
if (print_hash_value) printf("index = [%d][%d][%d]\n", i, j, k);
}
}
}
transparent_crc(g_23.f0, "g_23.f0", print_hash_value);
for (i = 0; i < 8; i++)
{
for (j = 0; j < 8; j++)
{
transparent_crc(g_62[i][j], "g_62[i][j]", print_hash_value);
if (print_hash_value) printf("index = [%d][%d]\n", i, j);
}
}
transparent_crc(g_72.f0, "g_72.f0", print_hash_value);
transparent_crc(g_72.f1, "g_72.f1", print_hash_value);
transparent_crc(g_72.f2, "g_72.f2", print_hash_value);
transparent_crc(g_72.f3, "g_72.f3", print_hash_value);
transparent_crc(g_72.f4, "g_72.f4", print_hash_value);
transparent_crc(g_73, "g_73", print_hash_value);
transparent_crc(g_79.f0, "g_79.f0", print_hash_value);
transparent_crc(g_79.f1, "g_79.f1", print_hash_value);
transparent_crc(g_79.f2, "g_79.f2", print_hash_value);
transparent_crc(g_79.f3, "g_79.f3", print_hash_value);
transparent_crc(g_79.f4, "g_79.f4", print_hash_value);
for (i = 0; i < 6; i++)
{
for (j = 0; j < 7; j++)
{
for (k = 0; k < 6; k++)
{
transparent_crc(g_102[i][j][k], "g_102[i][j][k]", print_hash_value);
if (print_hash_value) printf("index = [%d][%d][%d]\n", i, j, k);
}
}
}
transparent_crc(g_105, "g_105", print_hash_value);
transparent_crc(g_109, "g_109", print_hash_value);
transparent_crc(g_112, "g_112", print_hash_value);
transparent_crc(g_118, "g_118", print_hash_value);
transparent_crc(g_123, "g_123", print_hash_value);
transparent_crc(g_173, "g_173", print_hash_value);
transparent_crc(g_196, "g_196", print_hash_value);
transparent_crc(g_213, "g_213", print_hash_value);
transparent_crc(g_254, "g_254", print_hash_value);
transparent_crc(g_255, "g_255", print_hash_value);
for (i = 0; i < 8; i++)
{
for (j = 0; j < 4; j++)
{
for (k = 0; k < 1; k++)
{
transparent_crc(g_272[i][j][k].f0, "g_272[i][j][k].f0", print_hash_value);
transparent_crc(g_272[i][j][k].f1, "g_272[i][j][k].f1", print_hash_value);
transparent_crc(g_272[i][j][k].f2, "g_272[i][j][k].f2", print_hash_value);
transparent_crc(g_272[i][j][k].f3, "g_272[i][j][k].f3", print_hash_value);
transparent_crc(g_272[i][j][k].f4, "g_272[i][j][k].f4", print_hash_value);
if (print_hash_value) printf("index = [%d][%d][%d]\n", i, j, k);
}
}
}
transparent_crc(g_327, "g_327", print_hash_value);
transparent_crc(g_360, "g_360", print_hash_value);
transparent_crc(g_365, "g_365", print_hash_value);
for (i = 0; i < 6; i++)
{
for (j = 0; j < 10; j++)
{
transparent_crc(g_375[i][j].f0.f0, "g_375[i][j].f0.f0", print_hash_value);
if (print_hash_value) printf("index = [%d][%d]\n", i, j);
}
}
transparent_crc(g_378.f0.f0, "g_378.f0.f0", print_hash_value);
transparent_crc(g_380, "g_380", print_hash_value);
transparent_crc(g_399, "g_399", print_hash_value);
transparent_crc(g_451, "g_451", print_hash_value);
transparent_crc(g_452, "g_452", print_hash_value);
transparent_crc(g_462.f0.f0, "g_462.f0.f0", print_hash_value);
transparent_crc(g_469.f0, "g_469.f0", print_hash_value);
transparent_crc(g_469.f1, "g_469.f1", print_hash_value);
transparent_crc(g_469.f2, "g_469.f2", print_hash_value);
transparent_crc(g_469.f3, "g_469.f3", print_hash_value);
transparent_crc(g_469.f4, "g_469.f4", print_hash_value);
platform_main_end(crc32_context ^ 0xFFFFFFFFUL, print_hash_value);
return 0;
}
/************************ statistics *************************
XXX max struct depth: 2
breakdown:
depth: 0, occurrence: 125
depth: 1, occurrence: 17
depth: 2, occurrence: 1
XXX total union variables: 0
XXX non-zero bitfields defined in structs: 11
XXX zero bitfields defined in structs: 0
XXX const bitfields defined in structs: 3
XXX volatile bitfields defined in structs: 1
XXX structs with bitfields in the program: 31
breakdown:
indirect level: 0, occurrence: 18
indirect level: 1, occurrence: 11
indirect level: 2, occurrence: 2
XXX full-bitfields structs in the program: 17
breakdown:
indirect level: 0, occurrence: 17
XXX times a bitfields struct's address is taken: 20
XXX times a bitfields struct on LHS: 13
XXX times a bitfields struct on RHS: 66
XXX times a single bitfield on LHS: 5
XXX times a single bitfield on RHS: 98
XXX max expression depth: 40
breakdown:
depth: 1, occurrence: 134
depth: 2, occurrence: 38
depth: 3, occurrence: 3
depth: 5, occurrence: 2
depth: 6, occurrence: 1
depth: 7, occurrence: 2
depth: 8, occurrence: 1
depth: 9, occurrence: 1
depth: 11, occurrence: 1
depth: 12, occurrence: 1
depth: 14, occurrence: 1
depth: 15, occurrence: 1
depth: 16, occurrence: 3
depth: 18, occurrence: 2
depth: 20, occurrence: 2
depth: 23, occurrence: 1
depth: 26, occurrence: 1
depth: 28, occurrence: 1
depth: 40, occurrence: 1
XXX total number of pointers: 134
XXX times a variable address is taken: 228
XXX times a pointer is dereferenced on RHS: 57
breakdown:
depth: 1, occurrence: 53
depth: 2, occurrence: 3
depth: 3, occurrence: 1
XXX times a pointer is dereferenced on LHS: 77
breakdown:
depth: 1, occurrence: 73
depth: 2, occurrence: 4
XXX times a pointer is compared with null: 5
XXX times a pointer is compared with address of another variable: 3
XXX times a pointer is compared with another pointer: 3
XXX times a pointer is qualified to be dereferenced: 1897
XXX max dereference level: 3
breakdown:
level: 0, occurrence: 0
level: 1, occurrence: 748
level: 2, occurrence: 58
level: 3, occurrence: 4
XXX number of pointers point to pointers: 50
XXX number of pointers point to scalars: 71
XXX number of pointers point to structs: 13
XXX percent of pointers has null in alias set: 35.1
XXX average alias set size: 1.46
XXX times a non-volatile is read: 471
XXX times a non-volatile is write: 260
XXX times a volatile is read: 3
XXX times read thru a pointer: 0
XXX times a volatile is write: 0
XXX times written thru a pointer: 0
XXX times a volatile is available for access: 5
XXX percentage of non-volatile access: 99.6
XXX forward jumps: 0
XXX backward jumps: 2
XXX stmts: 132
XXX max block depth: 5
breakdown:
depth: 0, occurrence: 33
depth: 1, occurrence: 11
depth: 2, occurrence: 16
depth: 3, occurrence: 14
depth: 4, occurrence: 22
depth: 5, occurrence: 36
XXX percentage a fresh-made variable is used: 16.4
XXX percentage an existing variable is used: 83.6
FYI: the random generator makes assumptions about the integer size. See platform.info for more details.
********************* end of statistics **********************/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment