File: 2011-08-23-PerformSubCombine128.ll

package info (click to toggle)
llvm-3.0 3.0-10
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 75,412 kB
  • sloc: cpp: 468,043; asm: 109,345; ansic: 13,782; sh: 12,935; ml: 4,716; python: 4,351; perl: 2,096; makefile: 1,905; pascal: 1,578; exp: 389; xml: 283; lisp: 187; csh: 117
file content (18 lines) | stat: -rw-r--r-- 685 bytes parent folder | download | duplicates (12)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
; RUN: llc -march=x86-64 -O2 < %s

define void @test(i64 %add127.tr.i2686) {
entry:
  %conv143.i2687 = and i64 %add127.tr.i2686, 72057594037927935
  %conv76.i2623 = zext i64 %conv143.i2687 to i128
  %mul148.i2338 = mul i128 0, %conv76.i2623
  %add149.i2339 = add i128 %mul148.i2338, 0
  %add.i2303 = add i128 0, 170141183460469229370468033484042534912
  %add6.i2270 = add i128 %add.i2303, 0
  %sub58.i2271 = sub i128 %add6.i2270, %add149.i2339
  %add71.i2272 = add i128 %sub58.i2271, 0
  %add105.i2273 = add i128 %add71.i2272, 0
  %add116.i2274 = add i128 %add105.i2273, 0
  %shr124.i2277 = lshr i128 %add116.i2274, 56
  %add116.tr.i2280 = trunc i128 %add116.i2274 to i64
  ret void
}