File: polynomial-expand.ll

package info (click to toggle)
llvm-toolchain-16 1%3A16.0.6-15~deb12u1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 1,634,792 kB
  • sloc: cpp: 6,179,261; ansic: 1,216,205; asm: 741,319; python: 196,614; objc: 75,325; f90: 49,640; lisp: 32,396; pascal: 12,286; sh: 9,394; perl: 7,442; ml: 5,494; awk: 3,523; makefile: 2,723; javascript: 1,206; xml: 886; fortran: 581; cs: 573
file content (38 lines) | stat: -rw-r--r-- 1,965 bytes parent folder | download | duplicates (12)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
; RUN: opt < %s -passes=indvars -disable-output
; PR5073

target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128"
target triple = "x86_64-unknown-linux-gnu"

define void @ctpmv_(ptr noalias nocapture %tmp4, i32 %tmp21) nounwind {
bb20:                                             ; preds = %bb19
  br label %bb24

bb24:                                             ; preds = %bb40, %bb23
  %tmp25 = phi i32 [ %tmp43, %bb40 ], [ %tmp21, %bb20 ] ; <i32> [#uses=4]
  %tmp26 = phi i32 [ %tmp41, %bb40 ], [ undef, %bb20 ] ; <i32> [#uses=2]
  %tmp27 = add nsw i32 %tmp26, -1                 ; <i32> [#uses=1]
  %tmp28 = add nsw i32 %tmp25, -1                 ; <i32> [#uses=2]
  %tmp29 = icmp sgt i32 %tmp28, 0                 ; <i1> [#uses=1]
  br i1 %tmp29, label %bb30, label %bb40

bb30:                                             ; preds = %bb30, %bb24
  %tmp31 = phi i32 [ %tmp39, %bb30 ], [ %tmp28, %bb24 ] ; <i32> [#uses=2]
  %tmp32 = phi i32 [ %tmp37, %bb30 ], [ %tmp27, %bb24 ] ; <i32> [#uses=2]
  %tmp33 = sext i32 %tmp32 to i64                 ; <i64> [#uses=1]
  %tmp35 = getelementptr float, ptr %tmp4, i64 %tmp33 ; <ptr> [#uses=1]
  %tmp36 = load float, ptr %tmp35, align 4               ; <%0> [#uses=0]
  %tmp37 = add nsw i32 %tmp32, -1                 ; <i32> [#uses=1]
  %tmp39 = add nsw i32 %tmp31, -1                 ; <i32> [#uses=1]
  %tmp38 = icmp eq i32 %tmp31, 1                  ; <i1> [#uses=1]
  br i1 %tmp38, label %bb40, label %bb30

bb40:                                             ; preds = %bb30, %bb24
  %tmp41 = sub i32 %tmp26, %tmp25                 ; <i32> [#uses=1]
  %tmp43 = add nsw i32 %tmp25, -1                 ; <i32> [#uses=1]
  %tmp42 = icmp eq i32 %tmp25, 1                  ; <i1> [#uses=1]
  br i1 %tmp42, label %bb46, label %bb24

bb46:                                             ; preds = %bb40, %bb23, %bb19
  ret void
}