[llvm-bugs] [Bug 51777] New: Hang on thumbv6 code with 64-bit wide integers

via llvm-bugs llvm-bugs at lists.llvm.org
Tue Sep 7 06:20:29 PDT 2021


https://bugs.llvm.org/show_bug.cgi?id=51777

            Bug ID: 51777
           Summary: Hang on thumbv6 code with 64-bit wide integers
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Backend: ARM
          Assignee: unassignedbugs at nondot.org
          Reporter: mh at cookiesoft.de
                CC: llvm-bugs at lists.llvm.org, smithp352 at googlemail.com,
                    Ties.Stuij at arm.com

There is this regression between LLVM 8 and LLVM 9 where on the older version
the code compiles fine and on the later it will run indefinitely.

Here's the LLVM-IR:

```
target triple = "thumbv6em-none-unknown-eabihf"

define i64 @func(i64 %arg) {
start:
  %0 = add i64 %arg, 1
  %1 = icmp ult i64 %0, 1           ; only `ult` can be used here fwr
  %2 = select i1 %1, i64 8, i64 0   ; 8 must be a power of 2
  ret i64 %2
}
```

Here's a godbolt link: https://llvm.godbolt.org/z/6Ghefnesr

Does work on thumbv7, but not of any of the thumbv6 architectures.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20210907/a10f10d4/attachment-0001.html>


More information about the llvm-bugs mailing list