mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-30 02:32:08 +00:00
9445e9aaa0
Change the keywords for the zext and sext parameter attributes to be zeroext and signext so they don't conflict with the keywords for the instructions of the same name. This gets around the ambiguity. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40069 91177308-0d34-0410-b5e6-96231b3b80d8
71 lines
2.3 KiB
LLVM
71 lines
2.3 KiB
LLVM
; RUN: llvm-as < %s | opt -gvnpre | llvm-dis
|
|
|
|
@.str1 = external constant [4 x i8] ; <[4 x i8]*> [#uses=1]
|
|
@.str2 = external constant [5 x i8] ; <[5 x i8]*> [#uses=1]
|
|
|
|
define i32 @main(i32 %argc, i8** %argv) {
|
|
entry:
|
|
br i1 false, label %cond_next, label %cond_true
|
|
|
|
cond_true: ; preds = %entry
|
|
ret i32 0
|
|
|
|
cond_next: ; preds = %entry
|
|
%tmp10 = invoke i16 @_ZN12token_stream4openEPKc( i8* null, i8* null ) signext
|
|
to label %invcont unwind label %cleanup690 ; <i16> [#uses=0]
|
|
|
|
invcont: ; preds = %cond_next
|
|
%tmp15 = invoke i32 (i8*, ...)* @printf( i8* getelementptr ([4 x i8]* @.str1, i32 0, i32 0) )
|
|
to label %invcont14 unwind label %cleanup685 ; <i32> [#uses=0]
|
|
|
|
invcont14: ; preds = %invcont
|
|
%tmp17 = invoke i8* @_ZN24lambda_expression_parser10expressionEPP11arglst_node( i8* null, i8** null )
|
|
to label %cond_true22 unwind label %cleanup685
|
|
|
|
cond_true22: ; preds = %invcont14
|
|
%tmp35 = invoke i32 null( i8* null )
|
|
to label %cond_next56 unwind label %cleanup685 ; <i32> [#uses=0]
|
|
|
|
cond_next56: ; preds = %cond_true22
|
|
%tmp59 = invoke i32 (i8*, ...)* @printf( i8* getelementptr ([5 x i8]* @.str2, i32 0, i32 0) )
|
|
to label %invcont58 unwind label %cleanup685 ; <i32> [#uses=0]
|
|
|
|
invcont58: ; preds = %cond_next56
|
|
invoke void null( i8* null, i8* null, i32 0 )
|
|
to label %invcont72 unwind label %cleanup685
|
|
|
|
invcont72: ; preds = %invcont58
|
|
%tmp143 = invoke i32 null( i8* null )
|
|
to label %invcont142 unwind label %cleanup685 ; <i32> [#uses=0]
|
|
|
|
invcont142: ; preds = %invcont72
|
|
br i1 false, label %cond_false407, label %cond_true150
|
|
|
|
cond_true150: ; preds = %invcont142
|
|
ret i32 0
|
|
|
|
cond_false407: ; preds = %invcont142
|
|
%tmp431 = invoke i8* null( i8* null, i8* null, i32 0, i32* null )
|
|
to label %bb432 unwind label %cleanup685
|
|
|
|
bb432: ; preds = %bb432, %cond_false407
|
|
%rexp413.7 = phi i8* [ %tmp431, %cond_false407 ], [ %rexp413.7, %bb432 ]
|
|
%tmp434 = icmp eq i8* %rexp413.7, null ; <i1> [#uses=1]
|
|
br i1 %tmp434, label %bb432, label %cond_true437
|
|
|
|
cond_true437: ; preds = %bb432
|
|
ret i32 0
|
|
|
|
cleanup685: ; preds = %cond_false407, %invcont72, %invcont58, %cond_next56, %cond_true22, %invcont14, %invcont
|
|
ret i32 0
|
|
|
|
cleanup690: ; preds = %cond_next
|
|
ret i32 0
|
|
}
|
|
|
|
declare i16 @_ZN12token_stream4openEPKc(i8*, i8*) signext
|
|
|
|
declare i32 @printf(i8*, ...)
|
|
|
|
declare i8* @_ZN24lambda_expression_parser10expressionEPP11arglst_node(i8*, i8**)
|