phoebewang wrote:

> ```
> target datalayout = 
> "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
> target triple = "x86_64-pc-windows-gnu"
> 
> define ptr @__gdtoa(ptr %0, i32 %1, ptr %2, ptr %3, i32 %4, i32 %5, i32 %6) {
>   %8 = call ptr @bitstob(ptr null)
>   %9 = sub i32 0, %6
>   %10 = icmp sge i32 %6, 0
>   %11 = sub i32 %9, 1
>   %12 = sub i32 0, %11
>   %.0 = select i1 %10, i32 0, i32 %12
>   switch i32 %4, label %15 [
>     i32 0, label %13
>     i32 1, label %13
>     i32 2, label %common.ret1
>     i32 4, label %common.ret1
>     i32 3, label %14
>     i32 5, label %14
>   ]
> 
> 13:                                               ; preds = %7, %7
>   store i32 0, ptr %3, align 4
>   br label %15
> 
> common.ret1:                                      ; preds = %15, %7, %7
>   %common.ret1.op = phi ptr [ null, %15 ], [ null, %7 ], [ null, %7 ]
>   ret ptr %common.ret1.op
> 
> 14:                                               ; preds = %7, %7
>   store i32 %5, ptr %3, align 4
>   br label %15
> 
> 15:                                               ; preds = %14, %13, %7
>   %16 = call ptr @__rv_alloc_D2A()
>   store i32 0, ptr %2, align 4
>   %17 = sub i32 %.0, %5
>   store i32 %17, ptr %0, align 4
>   %18 = load volatile ptr, ptr null, align 8
>   %19 = sub i32 %9, %17
>   %20 = sub i32 0, %19
>   store i32 %20, ptr %0, align 4
>   call void @__Bfree_D2A()
>   store i32 %1, ptr %0, align 4
>   br label %common.ret1
> }
> 
> declare ptr @bitstob(ptr)
> 
> declare void @__Bfree_D2A()
> 
> declare ptr @__rv_alloc_D2A()
> ```
> 
> ```
> clang -march=novalake reduced.ll --target=x86_64-pc-windows-gnu -O3 -c -o 
> /dev/null
> fatal error: error in backend: Cannot emit physreg copy instruction
> PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ 
> and include the crash backtrace, preprocessed source, and associated run 
> script.
> Stack dump:
> 0.      Program arguments: clang -march=novalake reduced.ll 
> --target=x86_64-pc-windows-gnu -O3 -c -o /dev/null
> 1.      Code generation
> 2.      Running pass 'Function Pass Manager' on module 'reduced.ll'.
> 3.      Running pass 'Post-RA pseudo instruction expansion pass' on function 
> '@__gdtoa'
> #0 0x000064e9254c4936 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) 
> Signals.cpp:0:0
> clang: error: clang frontend command failed with exit code 70 (use -v to see 
> invocation)
> ```

Thanks for checking it, fixed.

https://github.com/llvm/llvm-project/pull/191368
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to