Skip to content

[LoopUnroll] compile-time explosion with assumes at -O3 #49129

Closed
@haoxintu

Description

@haoxintu
Bugzilla Link 49785
Resolution FIXED
Resolved on Apr 16, 2021 07:08
Version trunk
OS Linux
CC @rotateright,@oToToT
Fixed by commit(s) bb907b2

Extended Description

Hi all.

$cat small.c
#include <stdint.h>
int a, b, c, d;
uint16_t e;
void f() {
uint16_t *g = &e;
int8_t *i = &a;
for (c = 5; c <= 63; c++)
for (*g = 9; *g <= 60; *g += 1)
if ((e ^ b) != d) {
int8_t *j = a;
for (*j = 3; *j <= 32; *j += 1)
if (*j)
for (*i = 1; *i <= 30;)
*i &= 0 == c;
}
}

$clang -w -O3 small.c
//endless compiling

$clang -v
clang version 13.0.0 (https://github.com/llvm/llvm-project 850fced)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /home/haoxin/haoxin-data/dut-research/compilers/llvm-project/build-20210330/bin
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/6
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/6.5.0
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/7
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/7.5.0
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/8
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7.5.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/8
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/8
Candidate multilib: .;@m64
Selected multilib: .;@m64

Thanks,
Haoxin

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugzillaIssues migrated from bugzilla

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions