brintos

brintos / llvm-project-archived public Read only

0
0
Text · 5.6 KiB · eccb323 Raw
135 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc < %s -mtriple=x86_64-- -disable-cgp-delete-phis | FileCheck %s3 4	%struct.COMPOSITE = type { i8, i16, i16 }5	%struct.FILE = type { ptr, i32, i32, i16, i16, %struct.__sbuf, i32, ptr, ptr, ptr, ptr, ptr, %struct.__sbuf, ptr, i32, [3 x i8], [1 x i8], %struct.__sbuf, i32, i64 }6	%struct.FILE_POS = type { i8, i8, i16, i32 }7	%struct.FIRST_UNION = type { %struct.FILE_POS }8	%struct.FONT_INFO = type { ptr, ptr, ptr, ptr, i32, ptr, ptr, i16, i16, ptr, ptr, ptr, ptr }9	%struct.FOURTH_UNION = type { %struct.STYLE }10	%struct.GAP = type { i8, i8, i16 }11	%struct.LIST = type { ptr, ptr }12	%struct.SECOND_UNION = type { { i16, i8, i8 } }13	%struct.STYLE = type { { %struct.GAP }, { %struct.GAP }, i16, i16, i32 }14	%struct.THIRD_UNION = type { ptr, [8 x i8] }15	%struct.__sFILEX = type opaque16	%struct.__sbuf = type { ptr, i32 }17	%struct.head_type = type { [2 x %struct.LIST], %struct.FIRST_UNION, %struct.SECOND_UNION, %struct.THIRD_UNION, %struct.FOURTH_UNION, ptr, { ptr }, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32 }18	%struct.metrics = type { i16, i16, i16, i16, i16 }19	%struct.rec = type { %struct.head_type }20 21define void @FontChange(i1 %foo) nounwind {22; CHECK-LABEL: FontChange:23; CHECK:       # %bb.0: # %entry24; CHECK-NEXT:    testb $1, %dil25; CHECK-NEXT:    je .LBB0_1226; CHECK-NEXT:  # %bb.1: # %bb29827; CHECK-NEXT:    je .LBB0_328; CHECK-NEXT:  # %bb.2: # %bb30429; CHECK-NEXT:    je .LBB0_430; CHECK-NEXT:    .p2align 431; CHECK-NEXT:  .LBB0_3: # %bb36632; CHECK-NEXT:    # =>This Inner Loop Header: Depth=133; CHECK-NEXT:    testb $1, %dil34; CHECK-NEXT:    jne .LBB0_335; CHECK-NEXT:  .LBB0_4: # %bb42836; CHECK-NEXT:    testb $1, %dil37; CHECK-NEXT:    je .LBB0_1238; CHECK-NEXT:  # %bb.5:39; CHECK-NEXT:    cmpb $0, 040; CHECK-NEXT:    .p2align 441; CHECK-NEXT:  .LBB0_6: # %bb65042; CHECK-NEXT:    # =>This Inner Loop Header: Depth=143; CHECK-NEXT:    je .LBB0_644; CHECK-NEXT:  # %bb.7: # %bb66245; CHECK-NEXT:    movl 0, %eax46; CHECK-NEXT:    movl %eax, %ecx47; CHECK-NEXT:    andl $57344, %ecx # imm = 0xE00048; CHECK-NEXT:    cmpl $8192, %ecx # imm = 0x200049; CHECK-NEXT:    jne .LBB0_1250; CHECK-NEXT:  # %bb.8: # %bb488451; CHECK-NEXT:    andl $7168, %eax # imm = 0x1C0052; CHECK-NEXT:    cmpl $1024, %eax # imm = 0x40053; CHECK-NEXT:    jne .LBB0_1254; CHECK-NEXT:  # %bb.9: # %bb493255; CHECK-NEXT:    testb $1, %dil56; CHECK-NEXT:    jne .LBB0_1257; CHECK-NEXT:  # %bb.10: # %bb494058; CHECK-NEXT:    movl 0, %eax59; CHECK-NEXT:    cmpl $160, %eax60; CHECK-NEXT:    je .LBB0_1261; CHECK-NEXT:  # %bb.11: # %bb494062; CHECK-NEXT:    cmpl $159, %eax63; CHECK-NEXT:  .LBB0_12: # %bb489764; CHECK-NEXT:    retq65entry:66	br i1 %foo, label %bb298, label %bb4967bb49:		; preds = %entry68	ret void69bb298:		; preds = %entry70	br i1 %foo, label %bb304, label %bb36671bb304:		; preds = %bb29872	br i1 %foo, label %bb330, label %bb42873bb330:		; preds = %bb366, %bb30474	br label %bb36675bb366:		; preds = %bb330, %bb29876	br i1 %foo, label %bb330, label %bb42877bb428:		; preds = %bb366, %bb30478	br i1 %foo, label %bb650, label %bb43379bb433:		; preds = %bb42880	ret void81bb650:		; preds = %bb650, %bb42882	%tmp658 = load i8, ptr null, align 8		; <i8> [#uses=1]83	%tmp659 = icmp eq i8 %tmp658, 0		; <i1> [#uses=1]84	br i1 %tmp659, label %bb650, label %bb66285bb662:		; preds = %bb65086	br label %bb76187bb688:		; preds = %bb66288	ret void89bb761:		; preds = %bb66290	%tmp487248736542 = load i32, ptr null, align 4		; <i32> [#uses=2]91	%tmp487648776541 = and i32 %tmp487248736542, 57344		; <i32> [#uses=1]92	%tmp4881 = icmp eq i32 %tmp487648776541, 8192		; <i1> [#uses=1]93	br i1 %tmp4881, label %bb4884, label %bb489794bb4884:		; preds = %bb76195	%tmp488948906540 = and i32 %tmp487248736542, 7168		; <i32> [#uses=1]96	%tmp4894 = icmp eq i32 %tmp488948906540, 1024		; <i1> [#uses=1]97	br i1 %tmp4894, label %bb4932, label %bb489798bb4897:		; preds = %bb4884, %bb76199	ret void100bb4932:		; preds = %bb4884101	%tmp4933 = load i32, ptr null, align 4		; <i32> [#uses=1]102	br i1 %foo, label %bb5054, label %bb4940103bb4940:		; preds = %bb4932104	%tmp4943 = load i32, ptr null, align 4		; <i32> [#uses=2]105	switch i32 %tmp4933, label %bb5054 [106		 i32 159, label %bb4970107		 i32 160, label %bb5002108	]109bb4970:		; preds = %bb4940110	%tmp49746536 = trunc i32 %tmp4943 to i16		; <i16> [#uses=1]111	%tmp49764977 = and i16 %tmp49746536, 4095		; <i16> [#uses=1]112	%mask498049814982 = zext i16 %tmp49764977 to i64		; <i64> [#uses=1]113	%tmp4984 = getelementptr %struct.FONT_INFO, ptr null, i64 %mask498049814982, i32 5		; <ptr> [#uses=1]114	%tmp4985 = load ptr, ptr %tmp4984, align 8		; <ptr> [#uses=1]115	%tmp4988 = getelementptr %struct.rec, ptr %tmp4985, i64 0, i32 0, i32 3		; <ptr> [#uses=1]116	%tmp4992 = load i32, ptr %tmp4988, align 8		; <i32> [#uses=1]117	%tmp49924993 = trunc i32 %tmp4992 to i16		; <i16> [#uses=1]118	%tmp4996 = add i16 %tmp49924993, 0		; <i16> [#uses=1]119	br label %bb5054120bb5002:		; preds = %bb4940121	%tmp50066537 = trunc i32 %tmp4943 to i16		; <i16> [#uses=1]122	%tmp50085009 = and i16 %tmp50066537, 4095		; <i16> [#uses=1]123	%mask501250135014 = zext i16 %tmp50085009 to i64		; <i64> [#uses=1]124	%tmp5016 = getelementptr %struct.FONT_INFO, ptr null, i64 %mask501250135014, i32 5		; <ptr> [#uses=1]125	%tmp5017 = load ptr, ptr %tmp5016, align 8		; <ptr> [#uses=1]126	%tmp5020 = getelementptr %struct.rec, ptr %tmp5017, i64 0, i32 0, i32 3		; <ptr> [#uses=1]127	%tmp5024 = load i32, ptr %tmp5020, align 8		; <i32> [#uses=1]128	%tmp50245025 = trunc i32 %tmp5024 to i16		; <i16> [#uses=1]129	%tmp5028 = sub i16 %tmp50245025, 0		; <i16> [#uses=1]130	br label %bb5054131bb5054:		; preds = %bb5002, %bb4970, %bb4940, %bb4932132	%flen.0.reg2mem.0 = phi i16 [ %tmp4996, %bb4970 ], [ %tmp5028, %bb5002 ], [ 0, %bb4932 ], [ undef, %bb4940 ]		; <i16> [#uses=0]133	ret void134}135