From: Reid Spencer Date: Thu, 19 Jul 2007 23:13:04 +0000 (+0000) Subject: For PR1553: X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=9445e9aaa0240a897baf464ff89255acdcc7fbc9;p=oota-llvm.git For PR1553: 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 --- diff --git a/docs/LangRef.html b/docs/LangRef.html index a57f2426059..699c11b3925 100644 --- a/docs/LangRef.html +++ b/docs/LangRef.html @@ -760,22 +760,22 @@ a power of 2.

-%someFunc = i16 (i8 sext %someParam) zext
-%someFunc = i16 (i8 zext %someParam) zext
+%someFunc = i16 (i8 signext %someParam) zeroext
+%someFunc = i16 (i8 zeroext %someParam) zeroext
 

Note that the two function types above are unique because the parameter has - a different attribute (sext in the first one, zext in the second). Also note - that the attribute for the function result (zext) comes immediately after the - argument list.

+ a different attribute (signext in the first one, zeroext in + the second). Also note that the attribute for the function result + (zeroext) comes immediately after the argument list.

Currently, only the following parameter attributes are defined:

-
zext
+
zeroext
This indicates that the parameter should be zero extended just before a call to this function.
-
sext
+
signext
This indicates that the parameter should be sign extended just before a call to this function.
inreg
@@ -1131,7 +1131,7 @@ Variable argument functions can access their arguments with the function taking an i32, returning an i32 - float (i16 sext, i32 *) * + float (i16 signext, i32 *) * Pointer to a function that takes an i16 that should be sign extended and a diff --git a/lib/AsmParser/Lexer.l b/lib/AsmParser/Lexer.l index bc61e97ca95..24467cf606d 100644 --- a/lib/AsmParser/Lexer.l +++ b/lib/AsmParser/Lexer.l @@ -225,6 +225,8 @@ coldcc { return COLDCC_TOK; } x86_stdcallcc { return X86_STDCALLCC_TOK; } x86_fastcallcc { return X86_FASTCALLCC_TOK; } +signext { return SIGNEXT; } +zeroext { return ZEROEXT; } inreg { return INREG; } sret { return SRET; } nounwind { return NOUNWIND; } diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y index c8790819d33..0936af3a4d0 100644 --- a/lib/AsmParser/llvmAsmParser.y +++ b/lib/AsmParser/llvmAsmParser.y @@ -1101,7 +1101,7 @@ Module *llvm::RunVMAsmParser(const char * AsmString, Module * M) { %token EXTRACTELEMENT INSERTELEMENT SHUFFLEVECTOR // Function Attributes -%token NORETURN INREG SRET NOUNWIND NOALIAS BYVAL +%token SIGNEXT ZEROEXT NORETURN INREG SRET NOUNWIND NOALIAS BYVAL // Visibility Styles %token DEFAULT HIDDEN PROTECTED @@ -1224,8 +1224,8 @@ OptCallingConv : /*empty*/ { $$ = CallingConv::C; } | CHECK_FOR_ERROR }; -ParamAttr : ZEXT { $$ = ParamAttr::ZExt; } - | SEXT { $$ = ParamAttr::SExt; } +ParamAttr : ZEROEXT { $$ = ParamAttr::ZExt; } + | SIGNEXT { $$ = ParamAttr::SExt; } | INREG { $$ = ParamAttr::InReg; } | SRET { $$ = ParamAttr::StructRet; } | NOALIAS { $$ = ParamAttr::NoAlias; } @@ -1240,7 +1240,8 @@ OptParamAttrs : /* empty */ { $$ = ParamAttr::None; } FuncAttr : NORETURN { $$ = ParamAttr::NoReturn; } | NOUNWIND { $$ = ParamAttr::NoUnwind; } - | ParamAttr + | ZEROEXT { $$ = ParamAttr::ZExt; } + | SIGNEXT { $$ = ParamAttr::SExt; } ; OptFuncAttrs : /* empty */ { $$ = ParamAttr::None; } diff --git a/lib/VMCore/Function.cpp b/lib/VMCore/Function.cpp index ab12ae8bfe2..dd781964a91 100644 --- a/lib/VMCore/Function.cpp +++ b/lib/VMCore/Function.cpp @@ -90,9 +90,9 @@ std::string ParamAttrsList::getParamAttrsText(uint16_t Attrs) { std::string Result; if (Attrs & ParamAttr::ZExt) - Result += "zext "; + Result += "zeroext "; if (Attrs & ParamAttr::SExt) - Result += "sext "; + Result += "signext "; if (Attrs & ParamAttr::NoReturn) Result += "noreturn "; if (Attrs & ParamAttr::NoUnwind) diff --git a/test/Assembler/2007-07-19-ParamAttrAmbiguity.ll b/test/Assembler/2007-07-19-ParamAttrAmbiguity.ll new file mode 100644 index 00000000000..9c7daa841ab --- /dev/null +++ b/test/Assembler/2007-07-19-ParamAttrAmbiguity.ll @@ -0,0 +1,9 @@ +; PR1553 +; RUN: llvm-as < %s > /dev/null +define void @bar() { + %t = call i8 @foo( i8 10 ) + zext i8 %t to i32 + ret void +} + +declare i8 @foo(i8) diff --git a/test/CFrontend/2007-06-18-SextAttrAggregate.c b/test/CFrontend/2007-06-18-SextAttrAggregate.c index 2ba61fff76f..2eabd4fcca4 100644 --- a/test/CFrontend/2007-06-18-SextAttrAggregate.c +++ b/test/CFrontend/2007-06-18-SextAttrAggregate.c @@ -1,4 +1,4 @@ -// RUN: %llvmgcc %s -o - -S -emit-llvm -O3 | grep {i8 sext} +// RUN: %llvmgcc %s -o - -S -emit-llvm -O3 | grep {i8 signext} // PR1513 struct s{ diff --git a/test/CodeGen/ARM/2007-03-06-AddR7.ll b/test/CodeGen/ARM/2007-03-06-AddR7.ll index 5e136ddb8d8..ad3e195a0dd 100644 --- a/test/CodeGen/ARM/2007-03-06-AddR7.ll +++ b/test/CodeGen/ARM/2007-03-06-AddR7.ll @@ -9,7 +9,7 @@ %struct.__fooString = type opaque %struct.__fooV = type opaque %struct.fooXBase = type { i32, [4 x i8] } - %struct.fooXClass = type { i32, i8*, void (i8*)*, i8* (%struct.__fooAllocator*, i8*)*, void (i8*)*, i8 (i8*, i8*) zext *, i32 (i8*)*, %struct.__fooString* (i8*, %struct.__fooZ*)*, %struct.__fooString* (i8*)* } + %struct.fooXClass = type { i32, i8*, void (i8*)*, i8* (%struct.__fooAllocator*, i8*)*, void (i8*)*, i8 (i8*, i8*) zeroext *, i32 (i8*)*, %struct.__fooString* (i8*, %struct.__fooZ*)*, %struct.__fooString* (i8*)* } %struct.aa_cache = type { i32, i32, [1 x %struct.aa_method*] } %struct.aa_class = type { %struct.aa_class*, %struct.aa_class*, i8*, i32, i32, i32, %struct.aa_ivar_list*, %struct.aa_method_list**, %struct.aa_cache*, %struct.aa_protocol_list* } %struct.aa_ivar = type { i8*, i8*, i32 } @@ -27,7 +27,7 @@ @str15 = external constant [24 x i8] ; <[24 x i8]*> [#uses=1] -define i8 @test(%struct.__fooY* %calendar, double* %atp, i8* %componentDesc, ...) zext { +define i8 @test(%struct.__fooY* %calendar, double* %atp, i8* %componentDesc, ...) zeroext { entry: %args = alloca i8*, align 4 ; [#uses=5] %args4 = bitcast i8** %args to i8* ; [#uses=2] @@ -75,12 +75,12 @@ cond_true60: ; preds = %cond_true58 %tmp63 = call %struct.aa_ss* @sel_registerName( i8* getelementptr ([24 x i8]* @str15, i32 0, i32 0) ) ; <%struct.aa_ss*> [#uses=2] store %struct.aa_ss* %tmp63, %struct.aa_ss** @s.10319 %tmp66137 = volatile load i8** %args ; [#uses=1] - %tmp73138 = call i8 (i8*, %struct.aa_ss*, ...) zext * bitcast (%struct.aa_object* (%struct.aa_object*, %struct.aa_ss*, ...)* @aa_mm to i8 (i8*, %struct.aa_ss*, ...) zext *)( i8* %tmp6869, %struct.aa_ss* %tmp63, double* %atp, i8* %componentDesc, i8* %tmp66137 ) zext ; [#uses=1] + %tmp73138 = call i8 (i8*, %struct.aa_ss*, ...) zeroext * bitcast (%struct.aa_object* (%struct.aa_object*, %struct.aa_ss*, ...)* @aa_mm to i8 (i8*, %struct.aa_ss*, ...) zeroext *)( i8* %tmp6869, %struct.aa_ss* %tmp63, double* %atp, i8* %componentDesc, i8* %tmp66137) zeroext ; [#uses=1] ret i8 %tmp73138 cond_next64: ; preds = %cond_true58 %tmp66 = volatile load i8** %args ; [#uses=1] - %tmp73 = call i8 (i8*, %struct.aa_ss*, ...) zext * bitcast (%struct.aa_object* (%struct.aa_object*, %struct.aa_ss*, ...)* @aa_mm to i8 (i8*, %struct.aa_ss*, ...) zext *)( i8* %tmp6869, %struct.aa_ss* %tmp59, double* %atp, i8* %componentDesc, i8* %tmp66 ) zext ; [#uses=1] + %tmp73 = call i8 (i8*, %struct.aa_ss*, ...) zeroext * bitcast (%struct.aa_object* (%struct.aa_object*, %struct.aa_ss*, ...)* @aa_mm to i8 (i8*, %struct.aa_ss*, ...) zeroext *)( i8* %tmp6869, %struct.aa_ss* %tmp59, double* %atp, i8* %componentDesc, i8* %tmp66 ) zeroext ; [#uses=1] ret i8 %tmp73 cond_true111: ; preds = %cond_true111, %bb48 @@ -98,13 +98,13 @@ cond_true111: ; preds = %cond_true111, %bb48 bb114: ; preds = %cond_true111, %bb48 call void @llvm.va_end( i8* %args4 ) - %tmp122 = call i8 @_fooYCCV( %struct.__fooY* %calendar, double* %atp, i8* %componentDesc, i32* %tmp92, i32 %tmp78 ) zext ; [#uses=1] + %tmp122 = call i8 @_fooYCCV( %struct.__fooY* %calendar, double* %atp, i8* %componentDesc, i32* %tmp92, i32 %tmp78 ) zeroext ; [#uses=1] ret i8 %tmp122 } declare i32 @_fooXRegisterClass(%struct.fooXClass*) -declare i8 @_fooYCCV(%struct.__fooY*, double*, i8*, i32*, i32) zext +declare i8 @_fooYCCV(%struct.__fooY*, double*, i8*, i32*, i32) zeroext declare %struct.aa_object* @aa_mm(%struct.aa_object*, %struct.aa_ss*, ...) diff --git a/test/CodeGen/ARM/2007-03-26-RegScavengerAssert.ll b/test/CodeGen/ARM/2007-03-26-RegScavengerAssert.ll index 5a62401fe18..6d3f6404af8 100644 --- a/test/CodeGen/ARM/2007-03-26-RegScavengerAssert.ll +++ b/test/CodeGen/ARM/2007-03-26-RegScavengerAssert.ll @@ -47,12 +47,12 @@ target triple = "arm-linux-gnueabi" %struct.htab = type { i32 (i8*)*, i32 (i8*, i8*)*, void (i8*)*, i8**, i32, i32, i32, i32, i32, i8* (i32, i32)*, void (i8*)*, i8*, i8* (i8*, i32, i32)*, void (i8*, i8*)*, i32 } %struct.initial_value_struct = type opaque %struct.lang_decl = type opaque - %struct.lang_hooks = type { i8*, i32, i32 (i32)*, i32 (i32, i8**)*, void (%struct.diagnostic_context*)*, i32 (i32, i8*, i32)*, i8 (i8*, i32) zext *, i8 (i8**) zext *, i8 () zext *, void ()*, void ()*, void (i32)*, void ()*, i64 (%struct.tree_node*)*, %struct.tree_node* (%struct.tree_node*)*, %struct.rtx_def* (%struct.tree_node*, %struct.rtx_def*, i32, i32, %struct.rtx_def**)*, i32 (%struct.tree_node*)*, %struct.tree_node* (%struct.tree_node*)*, i32 (%struct.rtx_def*, %struct.tree_node*)*, void (%struct.tree_node*)*, i8 (%struct.tree_node*) zext *, %struct.tree_node* (%struct.tree_node*)*, void (%struct.tree_node*)*, void (%struct.tree_node*)*, i8 () zext *, i8, i8, void ()*, void (%struct.FILE*, %struct.tree_node*, i32)*, void (%struct.FILE*, %struct.tree_node*, i32)*, void (%struct.FILE*, %struct.tree_node*, i32)*, void (%struct.FILE*, %struct.tree_node*, i32)*, i8* (%struct.tree_node*, i32)*, i32 (%struct.tree_node*, %struct.tree_node*)*, %struct.tree_node* (%struct.tree_node*)*, void (%struct.diagnostic_context*, i8*)*, %struct.tree_node* (%struct.tree_node*)*, i64 (i64)*, %struct.attribute_spec*, %struct.attribute_spec*, %struct.attribute_spec*, i32 (%struct.tree_node*)*, %struct.lang_hooks_for_functions, %struct.lang_hooks_for_tree_inlining, %struct.lang_hooks_for_callgraph, %struct.lang_hooks_for_tree_dump, %struct.lang_hooks_for_decls, %struct.lang_hooks_for_types, i32 (%struct.tree_node**, %struct.tree_node**, %struct.tree_node**)*, %struct.tree_node* (%struct.tree_node*, %struct.tree_node*)*, %struct.tree_node* (i8*, %struct.tree_node*, i32, i32, i8*, %struct.tree_node*)* } + %struct.lang_hooks = type { i8*, i32, i32 (i32)*, i32 (i32, i8**)*, void (%struct.diagnostic_context*)*, i32 (i32, i8*, i32)*, i8 (i8*, i32) zeroext *, i8 (i8**) zeroext *, i8 () zeroext *, void ()*, void ()*, void (i32)*, void ()*, i64 (%struct.tree_node*)*, %struct.tree_node* (%struct.tree_node*)*, %struct.rtx_def* (%struct.tree_node*, %struct.rtx_def*, i32, i32, %struct.rtx_def**)*, i32 (%struct.tree_node*)*, %struct.tree_node* (%struct.tree_node*)*, i32 (%struct.rtx_def*, %struct.tree_node*)*, void (%struct.tree_node*)*, i8 (%struct.tree_node*) zeroext *, %struct.tree_node* (%struct.tree_node*)*, void (%struct.tree_node*)*, void (%struct.tree_node*)*, i8 () zeroext *, i8, i8, void ()*, void (%struct.FILE*, %struct.tree_node*, i32)*, void (%struct.FILE*, %struct.tree_node*, i32)*, void (%struct.FILE*, %struct.tree_node*, i32)*, void (%struct.FILE*, %struct.tree_node*, i32)*, i8* (%struct.tree_node*, i32)*, i32 (%struct.tree_node*, %struct.tree_node*)*, %struct.tree_node* (%struct.tree_node*)*, void (%struct.diagnostic_context*, i8*)*, %struct.tree_node* (%struct.tree_node*)*, i64 (i64)*, %struct.attribute_spec*, %struct.attribute_spec*, %struct.attribute_spec*, i32 (%struct.tree_node*)*, %struct.lang_hooks_for_functions, %struct.lang_hooks_for_tree_inlining, %struct.lang_hooks_for_callgraph, %struct.lang_hooks_for_tree_dump, %struct.lang_hooks_for_decls, %struct.lang_hooks_for_types, i32 (%struct.tree_node**, %struct.tree_node**, %struct.tree_node**)*, %struct.tree_node* (%struct.tree_node*, %struct.tree_node*)*, %struct.tree_node* (i8*, %struct.tree_node*, i32, i32, i8*, %struct.tree_node*)* } %struct.lang_hooks_for_callgraph = type { %struct.tree_node* (%struct.tree_node**, i32*, %struct.tree_node*)*, void (%struct.tree_node*)* } - %struct.lang_hooks_for_decls = type { i32 ()*, void (%struct.tree_node*)*, %struct.tree_node* (%struct.tree_node*)*, %struct.tree_node* ()*, i8 (%struct.tree_node*) zext *, void ()*, void (%struct.tree_node*)*, i8 (%struct.tree_node*) zext *, i8* (%struct.tree_node*)* } - %struct.lang_hooks_for_functions = type { void (%struct.function*)*, void (%struct.function*)*, void (%struct.function*)*, void (%struct.function*)*, i8 (%struct.tree_node*) zext * } - %struct.lang_hooks_for_tree_dump = type { i8 (i8*, %struct.tree_node*) zext *, i32 (%struct.tree_node*)* } - %struct.lang_hooks_for_tree_inlining = type { %struct.tree_node* (%struct.tree_node**, i32*, %struct.tree_node* (%struct.tree_node**, i32*, i8*)*, i8*, %struct.pointer_set_t*)*, i32 (%struct.tree_node**)*, i32 (%struct.tree_node*)*, %struct.tree_node* (i8*, %struct.tree_node*)*, i32 (%struct.tree_node*, %struct.tree_node*)*, i32 (%struct.tree_node*)*, i8 (%struct.tree_node*, %struct.tree_node*) zext *, i32 (%struct.tree_node*)*, void (%struct.tree_node*)*, %struct.tree_node* (%struct.tree_node*, %struct.tree_node*, %struct.tree_node*, i32)* } + %struct.lang_hooks_for_decls = type { i32 ()*, void (%struct.tree_node*)*, %struct.tree_node* (%struct.tree_node*)*, %struct.tree_node* ()*, i8 (%struct.tree_node*) zeroext *, void ()*, void (%struct.tree_node*)*, i8 (%struct.tree_node*) zeroext *, i8* (%struct.tree_node*)* } + %struct.lang_hooks_for_functions = type { void (%struct.function*)*, void (%struct.function*)*, void (%struct.function*)*, void (%struct.function*)*, i8 (%struct.tree_node*) zeroext * } + %struct.lang_hooks_for_tree_dump = type { i8 (i8*, %struct.tree_node*) zeroext *, i32 (%struct.tree_node*)* } + %struct.lang_hooks_for_tree_inlining = type { %struct.tree_node* (%struct.tree_node**, i32*, %struct.tree_node* (%struct.tree_node**, i32*, i8*)*, i8*, %struct.pointer_set_t*)*, i32 (%struct.tree_node**)*, i32 (%struct.tree_node*)*, %struct.tree_node* (i8*, %struct.tree_node*)*, i32 (%struct.tree_node*, %struct.tree_node*)*, i32 (%struct.tree_node*)*, i8 (%struct.tree_node*, %struct.tree_node*) zeroext *, i32 (%struct.tree_node*)*, void (%struct.tree_node*)*, %struct.tree_node* (%struct.tree_node*, %struct.tree_node*, %struct.tree_node*, i32)* } %struct.lang_hooks_for_types = type { %struct.tree_node* (i32)*, %struct.tree_node* (i32, i32)*, %struct.tree_node* (i32, i32)*, %struct.tree_node* (%struct.tree_node*)*, %struct.tree_node* (%struct.tree_node*)*, %struct.tree_node* (i32, %struct.tree_node*)*, %struct.tree_node* (%struct.tree_node*)*, void (%struct.tree_node*, i8*)*, void (%struct.tree_node*, %struct.tree_node*)*, %struct.tree_node* (%struct.tree_node*)*, i8 } %struct.lang_type = type opaque %struct.language_function = type opaque @@ -64,7 +64,7 @@ target triple = "arm-linux-gnueabi" %struct.output_buffer = type { %struct.obstack, %struct.FILE*, i32, [128 x i8] } %struct.phi_arg_d = type { %struct.tree_node*, i8 } %struct.pointer_set_t = type opaque - %struct.pretty_printer = type { %struct.output_buffer*, i8*, i32, i32, i32, i32, i32, i8 (%struct.pretty_printer*, %struct.text_info*) zext *, i8, i8 } + %struct.pretty_printer = type { %struct.output_buffer*, i8*, i32, i32, i32, i32, i32, i8 (%struct.pretty_printer*, %struct.text_info*) zeroext *, i8, i8 } %struct.ptr_info_def = type { i8, %struct.bitmap_head_def*, %struct.tree_node* } %struct.real_value = type { i8, [3 x i8], [5 x i32] } %struct.reg_attrs = type { %struct.tree_node*, i64 } @@ -354,7 +354,7 @@ declare i64 @get_alias_set(%struct.tree_node*) declare i32 @alias_sets_conflict_p(i64, i64) -declare fastcc i8 @cpt_same_type(%struct.tree_node*, %struct.tree_node*) zext +declare fastcc i8 @cpt_same_type(%struct.tree_node*, %struct.tree_node*) zeroext declare %struct.tree_node* @check_pointer_types_r(%struct.tree_node**, i32*, i8*) @@ -380,7 +380,7 @@ declare fastcc %struct.tree_node* @shortcut_cond_expr(%struct.tree_node*) declare %struct.tree_node* @expr_last(%struct.tree_node*) -declare i8 @block_may_fallthru(%struct.tree_node*) zext +declare i8 @block_may_fallthru(%struct.tree_node*) zeroext declare fastcc void @gimple_pop_condition(%struct.tree_node**) @@ -388,9 +388,9 @@ declare %struct.tree_node* @gimple_build_eh_filter(%struct.tree_node*, %struct.t declare void @annotate_all_with_locus(%struct.tree_node**, i32, i32) -declare fastcc %struct.tree_node* @internal_get_tmp_var(%struct.tree_node*, %struct.tree_node**, %struct.tree_node**, i8 zext ) +declare fastcc %struct.tree_node* @internal_get_tmp_var(%struct.tree_node*, %struct.tree_node**, %struct.tree_node**, i8 zeroext ) -define i32 @gimplify_expr(%struct.tree_node** %expr_p, %struct.tree_node** %pre_p, %struct.tree_node** %post_p, i8 (%struct.tree_node*) zext * %gimple_test_f, i32 %fallback) { +define i32 @gimplify_expr(%struct.tree_node** %expr_p, %struct.tree_node** %pre_p, %struct.tree_node** %post_p, i8 (%struct.tree_node*) zeroext * %gimple_test_f, i32 %fallback) { entry: %internal_post = alloca %struct.tree_node*, align 4 ; <%struct.tree_node**> [#uses=2] %pre_p_addr.0 = select i1 false, %struct.tree_node** null, %struct.tree_node** %pre_p ; <%struct.tree_node**> [#uses=7] @@ -598,7 +598,7 @@ cond_next3113: ; preds = %cond_next3074 ret i32 0 bb3351: ; preds = %cond_next3074 - %tmp3354 = call i8 @tree_ssa_useless_type_conversion( %struct.tree_node* %tmp2554 ) zext ; [#uses=1] + %tmp3354 = call i8 @tree_ssa_useless_type_conversion( %struct.tree_node* %tmp2554 ) zeroext ; [#uses=1] icmp eq i8 %tmp3354, 0 ; :7 [#uses=1] %tmp3424 = load i32* null ; [#uses=1] br i1 %7, label %cond_next3417, label %cond_true3356 @@ -640,7 +640,7 @@ cond_true4315: ; preds = %cond_next4300 unreachable cond_next4327: ; preds = %cond_next4300 - %tmp4336 = call i32 @gimplify_expr( %struct.tree_node** null, %struct.tree_node** %pre_p_addr.0, %struct.tree_node** %post_p_addr.0, i8 (%struct.tree_node*) zext * @is_gimple_val, i32 1 ) ; [#uses=0] + %tmp4336 = call i32 @gimplify_expr( %struct.tree_node** null, %struct.tree_node** %pre_p_addr.0, %struct.tree_node** %post_p_addr.0, i8 (%struct.tree_node*) zeroext * @is_gimple_val, i32 1 ) ; [#uses=0] ret i32 0 bb4339: ; preds = %cond_next298 @@ -714,8 +714,8 @@ bb6296: ; preds = %cond_next298 cond_next6474: ; preds = %cond_next298 icmp eq %struct.tree_node** %internal_post, %post_p_addr.0 ; :11 [#uses=1] %iftmp.381.0 = select i1 %11, %struct.tree_node** null, %struct.tree_node** %post_p_addr.0 ; <%struct.tree_node**> [#uses=1] - %tmp6490 = call i32 @gimplify_expr( %struct.tree_node** null, %struct.tree_node** %pre_p_addr.0, %struct.tree_node** %iftmp.381.0, i8 (%struct.tree_node*) zext * %gimple_test_f, i32 %fallback ) ; [#uses=0] - %tmp6551 = call i32 @gimplify_expr( %struct.tree_node** null, %struct.tree_node** %pre_p_addr.0, %struct.tree_node** %post_p_addr.0, i8 (%struct.tree_node*) zext * @is_gimple_val, i32 1 ) ; [#uses=0] + %tmp6490 = call i32 @gimplify_expr( %struct.tree_node** null, %struct.tree_node** %pre_p_addr.0, %struct.tree_node** %iftmp.381.0, i8 (%struct.tree_node*) zeroext * %gimple_test_f, i32 %fallback ) ; [#uses=0] + %tmp6551 = call i32 @gimplify_expr( %struct.tree_node** null, %struct.tree_node** %pre_p_addr.0, %struct.tree_node** %post_p_addr.0, i8 (%struct.tree_node*) zeroext * @is_gimple_val, i32 1 ) ; [#uses=0] ret i32 0 bb7444: ; preds = %cond_next298 @@ -728,7 +728,7 @@ bb7478: ; preds = %bb277 ret i32 0 } -declare i8 @is_gimple_formal_tmp_rhs(%struct.tree_node*) zext +declare i8 @is_gimple_formal_tmp_rhs(%struct.tree_node*) zeroext declare void @gimplify_and_add(%struct.tree_node*, %struct.tree_node**) @@ -738,17 +738,17 @@ declare %struct.tree_node* @get_formal_tmp_var(%struct.tree_node*, %struct.tree_ declare fastcc void @gimplify_init_ctor_preeval(%struct.tree_node**, %struct.tree_node**, %struct.tree_node**, %struct.gimplify_init_ctor_preeval_data*) -declare i8 @type_contains_placeholder_p(%struct.tree_node*) zext +declare i8 @type_contains_placeholder_p(%struct.tree_node*) zeroext -declare i8 @is_gimple_mem_rhs(%struct.tree_node*) zext +declare i8 @is_gimple_mem_rhs(%struct.tree_node*) zeroext -declare fastcc i32 @gimplify_modify_expr_rhs(%struct.tree_node**, %struct.tree_node**, %struct.tree_node**, %struct.tree_node**, %struct.tree_node**, i8 zext ) +declare fastcc i32 @gimplify_modify_expr_rhs(%struct.tree_node**, %struct.tree_node**, %struct.tree_node**, %struct.tree_node**, %struct.tree_node**, i8 zeroext ) declare %struct.tree_node* @fold_indirect_ref(%struct.tree_node*) -declare fastcc i32 @gimplify_compound_expr(%struct.tree_node**, %struct.tree_node**, i8 zext ) +declare fastcc i32 @gimplify_compound_expr(%struct.tree_node**, %struct.tree_node**, i8 zeroext ) -declare i8 @is_gimple_lvalue(%struct.tree_node*) zext +declare i8 @is_gimple_lvalue(%struct.tree_node*) zeroext declare void @categorize_ctor_elements(%struct.tree_node*, i64*, i64*, i64*, i8*) @@ -764,21 +764,21 @@ declare void @gimplify_stmt(%struct.tree_node**) declare %struct.tree_node* @get_base_address(%struct.tree_node*) -declare fastcc void @gimplify_init_ctor_eval(%struct.tree_node*, %struct.tree_node*, %struct.tree_node**, i8 zext ) +declare fastcc void @gimplify_init_ctor_eval(%struct.tree_node*, %struct.tree_node*, %struct.tree_node**, i8 zeroext ) declare %struct.tree_node* @build_complex(%struct.tree_node*, %struct.tree_node*, %struct.tree_node*) -declare i8 (%struct.tree_node*) zext * @rhs_predicate_for(%struct.tree_node*) +declare i8 (%struct.tree_node*) zeroext * @rhs_predicate_for(%struct.tree_node*) declare %struct.tree_node* @build_vector(%struct.tree_node*, %struct.tree_node*) -declare i8 @is_gimple_val(%struct.tree_node*) zext +declare i8 @is_gimple_val(%struct.tree_node*) zeroext -declare i8 @is_gimple_reg_type(%struct.tree_node*) zext +declare i8 @is_gimple_reg_type(%struct.tree_node*) zeroext declare fastcc i32 @gimplify_cond_expr(%struct.tree_node**, %struct.tree_node**, %struct.tree_node**, %struct.tree_node*, i32) -declare fastcc i32 @gimplify_modify_expr(%struct.tree_node**, %struct.tree_node**, %struct.tree_node**, i8 zext ) +declare fastcc i32 @gimplify_modify_expr(%struct.tree_node**, %struct.tree_node**, %struct.tree_node**, i8 zeroext ) declare %struct.tree_node* @tree_cons_stat(%struct.tree_node*, %struct.tree_node*, %struct.tree_node*) @@ -786,31 +786,31 @@ declare %struct.tree_node* @build_fold_addr_expr(%struct.tree_node*) declare %struct.tree_node* @build_function_call_expr(%struct.tree_node*, %struct.tree_node*) -declare i8 @is_gimple_addressable(%struct.tree_node*) zext +declare i8 @is_gimple_addressable(%struct.tree_node*) zeroext -declare i8 @is_gimple_reg(%struct.tree_node*) zext +declare i8 @is_gimple_reg(%struct.tree_node*) zeroext declare %struct.tree_node* @make_ssa_name(%struct.tree_node*, %struct.tree_node*) -declare i8 @tree_ssa_useless_type_conversion(%struct.tree_node*) zext +declare i8 @tree_ssa_useless_type_conversion(%struct.tree_node*) zeroext -declare fastcc i32 @gimplify_self_mod_expr(%struct.tree_node**, %struct.tree_node**, %struct.tree_node**, i8 zext ) +declare fastcc i32 @gimplify_self_mod_expr(%struct.tree_node**, %struct.tree_node**, %struct.tree_node**, i8 zeroext ) declare fastcc i32 @gimplify_compound_lval(%struct.tree_node**, %struct.tree_node**, %struct.tree_node**, i32) declare %struct.tree_node* @get_callee_fndecl(%struct.tree_node*) -declare %struct.tree_node* @fold_builtin(%struct.tree_node*, i8 zext ) +declare %struct.tree_node* @fold_builtin(%struct.tree_node*, i8 zeroext ) declare void @error(i8*, ...) declare %struct.tree_node* @build_empty_stmt() -declare i8 @fold_builtin_next_arg(%struct.tree_node*) zext +declare i8 @fold_builtin_next_arg(%struct.tree_node*) zeroext declare fastcc i32 @gimplify_arg(%struct.tree_node**, %struct.tree_node**) -declare i8 @is_gimple_call_addr(%struct.tree_node*) zext +declare i8 @is_gimple_call_addr(%struct.tree_node*) zeroext declare i32 @call_expr_flags(%struct.tree_node*) @@ -862,7 +862,7 @@ declare void @tsi_delink(%struct.tree_stmt_iterator*) declare void @tsi_link_before(%struct.tree_stmt_iterator*, %struct.tree_node*, i32) -declare i8 @is_gimple_stmt(%struct.tree_node*) zext +declare i8 @is_gimple_stmt(%struct.tree_node*) zeroext declare void @print_generic_expr(%struct.FILE*, %struct.tree_node*, i32) @@ -870,13 +870,13 @@ declare void @debug_tree(%struct.tree_node*) declare void @internal_error(i8*, ...) -declare %struct.tree_node* @force_gimple_operand(%struct.tree_node*, %struct.tree_node**, i8 zext , %struct.tree_node*) +declare %struct.tree_node* @force_gimple_operand(%struct.tree_node*, %struct.tree_node**, i8 zeroext , %struct.tree_node*) -declare i8 @is_gimple_reg_rhs(%struct.tree_node*) zext +declare i8 @is_gimple_reg_rhs(%struct.tree_node*) zeroext declare void @add_referenced_tmp_var(%struct.tree_node*) -declare i8 @contains_placeholder_p(%struct.tree_node*) zext +declare i8 @contains_placeholder_p(%struct.tree_node*) zeroext declare %struct.varray_head_tag* @varray_init(i32, i32, i8*) @@ -886,21 +886,21 @@ declare void @varray_check_failed(%struct.varray_head_tag*, i32, i8*, i32, i8*) declare %struct.tree_node* @array_ref_low_bound(%struct.tree_node*) -declare i8 @is_gimple_min_invariant(%struct.tree_node*) zext +declare i8 @is_gimple_min_invariant(%struct.tree_node*) zeroext -declare i8 @is_gimple_formal_tmp_reg(%struct.tree_node*) zext +declare i8 @is_gimple_formal_tmp_reg(%struct.tree_node*) zeroext declare %struct.tree_node* @array_ref_element_size(%struct.tree_node*) declare %struct.tree_node* @component_ref_field_offset(%struct.tree_node*) -declare i8 @is_gimple_min_lval(%struct.tree_node*) zext +declare i8 @is_gimple_min_lval(%struct.tree_node*) zeroext declare void @varray_underflow(%struct.varray_head_tag*, i8*, i32, i8*) declare i32 @list_length(%struct.tree_node*) -declare i8 @parse_output_constraint(i8**, i32, i32, i32, i8*, i8*, i8*) zext +declare i8 @parse_output_constraint(i8**, i32, i32, i32, i8*, i8*, i8*) zeroext declare i8* @xstrdup(i8*) @@ -912,11 +912,11 @@ declare %struct.tree_node* @build_tree_list_stat(%struct.tree_node*, %struct.tre declare %struct.tree_node* @chainon(%struct.tree_node*, %struct.tree_node*) -declare i8 @parse_input_constraint(i8**, i32, i32, i32, i32, i8**, i8*, i8*) zext +declare i8 @parse_input_constraint(i8**, i32, i32, i32, i32, i8**, i8*, i8*) zeroext -declare i8 @is_gimple_asm_val(%struct.tree_node*) zext +declare i8 @is_gimple_asm_val(%struct.tree_node*) zeroext -declare void @gimplify_body(%struct.tree_node**, %struct.tree_node*, i8 zext ) +declare void @gimplify_body(%struct.tree_node**, %struct.tree_node*, i8 zeroext ) declare void @timevar_push_1(i32) @@ -934,11 +934,11 @@ declare %struct.tree_node* @make_tree_vec_stat(i32) declare %struct.tree_node* @tsi_split_statement_list_after(%struct.tree_stmt_iterator*) -declare i8 @is_gimple_condexpr(%struct.tree_node*) zext +declare i8 @is_gimple_condexpr(%struct.tree_node*) zeroext declare %struct.tree_node* @invert_truthvalue(%struct.tree_node*) -declare i8 @initializer_zerop(%struct.tree_node*) zext +declare i8 @initializer_zerop(%struct.tree_node*) zeroext declare i32 @simple_cst_equal(%struct.tree_node*, %struct.tree_node*) diff --git a/test/CodeGen/ARM/2007-05-03-BadPostIndexedLd.ll b/test/CodeGen/ARM/2007-05-03-BadPostIndexedLd.ll index b850728ba3e..f3f82bc4846 100644 --- a/test/CodeGen/ARM/2007-05-03-BadPostIndexedLd.ll +++ b/test/CodeGen/ARM/2007-05-03-BadPostIndexedLd.ll @@ -2,7 +2,7 @@ %struct.Connection = type { i32, [10 x i8], i32 } %struct.IntChunk = type { %struct.cppobjtype, i32, i32*, i32 } - %struct.Point = type { i8*, %struct.cppobjtype, i16 (%struct.Point*) sext *, i16 (%struct.Point*) sext *, double (%struct.Point*)*, double (%struct.Point*)* } + %struct.Point = type { i8*, %struct.cppobjtype, i16 (%struct.Point*) signext *, i16 (%struct.Point*) signext *, double (%struct.Point*)*, double (%struct.Point*)* } %struct.RefPoint = type { %struct.Point*, %struct.cppobjtype } %struct.ShortArray = type { %struct.cppobjtype, i32, i16* } %struct.TestObj = type { i8*, %struct.cppobjtype, i8, [32 x i8], i8*, i8**, i16, i16, i32, i32, i32, i32, float, double, %struct.cppobjtype, i32, i16*, i16**, i8**, i32, %struct.XyPoint, [3 x %struct.Connection], %struct.Point*, %struct.XyPoint*, i32, i8*, i8*, i16*, %struct.ShortArray, %struct.IntChunk, %struct.cppobjtype, %struct.cppobjtype, %struct.RefPoint, i32, %struct.cppobjtype, %struct.cppobjtype } diff --git a/test/CodeGen/ARM/ifcvt8.ll b/test/CodeGen/ARM/ifcvt8.ll index c401e682605..811aa57fdbb 100644 --- a/test/CodeGen/ARM/ifcvt8.ll +++ b/test/CodeGen/ARM/ifcvt8.ll @@ -8,7 +8,7 @@ declare void @abort() -define fastcc void @t(%struct.SString* %word, i8 sext %c) { +define fastcc void @t(%struct.SString* %word, i8 signext %c) { entry: %tmp1 = icmp eq %struct.SString* %word, null ; [#uses=1] br i1 %tmp1, label %cond_true, label %cond_false diff --git a/test/CodeGen/ARM/sxt_rot.ll b/test/CodeGen/ARM/sxt_rot.ll index bf62d08066b..fde671f034f 100644 --- a/test/CodeGen/ARM/sxt_rot.ll +++ b/test/CodeGen/ARM/sxt_rot.ll @@ -3,7 +3,7 @@ ; RUN: llvm-as < %s | llc -march=arm -mattr=+v6 | \ ; RUN: grep sxtab | wc -l | grep 1 -define i8 @test1(i32 %A) sext { +define i8 @test1(i32 %A) signext { %B = lshr i32 %A, 8 %C = shl i32 %A, 24 %D = or i32 %B, %C @@ -11,7 +11,7 @@ define i8 @test1(i32 %A) sext { ret i8 %E } -define i32 @test2(i32 %A, i32 %X) sext { +define i32 @test2(i32 %A, i32 %X) signext { %B = lshr i32 %A, 8 %C = shl i32 %A, 24 %D = or i32 %B, %C diff --git a/test/CodeGen/ARM/uxt_rot.ll b/test/CodeGen/ARM/uxt_rot.ll index d15c6503c78..66275eae0ed 100644 --- a/test/CodeGen/ARM/uxt_rot.ll +++ b/test/CodeGen/ARM/uxt_rot.ll @@ -2,19 +2,19 @@ ; RUN: llvm-as < %s | llc -march=arm -mattr=+v6 | grep uxtab | wc -l | grep 1 ; RUN: llvm-as < %s | llc -march=arm -mattr=+v6 | grep uxth | wc -l | grep 1 -define i8 @test1(i32 %A.u) zext { +define i8 @test1(i32 %A.u) zeroext { %B.u = trunc i32 %A.u to i8 ret i8 %B.u } -define i32 @test2(i32 %A.u, i32 %B.u) zext { +define i32 @test2(i32 %A.u, i32 %B.u) zeroext { %C.u = trunc i32 %B.u to i8 %D.u = zext i8 %C.u to i32 %E.u = add i32 %A.u, %D.u ret i32 %E.u } -define i32 @test3(i32 %A.u) zext { +define i32 @test3(i32 %A.u) zeroext { %B.u = lshr i32 %A.u, 8 %C.u = shl i32 %A.u, 24 %D.u = or i32 %B.u, %C.u diff --git a/test/CodeGen/Alpha/add.ll b/test/CodeGen/Alpha/add.ll index 16ce2b0ab85..add5e0c67af 100644 --- a/test/CodeGen/Alpha/add.ll +++ b/test/CodeGen/Alpha/add.ll @@ -18,19 +18,19 @@ ; RUN: grep {s8subq} %t.s | wc -l | grep 2 -define i32 @al(i32 sext %x.s, i32 sext %y.s) sext { +define i32 @al(i32 signext %x.s, i32 signext %y.s) signext { entry: %tmp.3.s = add i32 %y.s, %x.s ; [#uses=1] ret i32 %tmp.3.s } -define i32 @ali(i32 sext %x.s) sext { +define i32 @ali(i32 signext %x.s) signext { entry: %tmp.3.s = add i32 100, %x.s ; [#uses=1] ret i32 %tmp.3.s } -define i64 @aq(i64 sext %x.s, i64 sext %y.s) sext { +define i64 @aq(i64 signext %x.s, i64 signext %y.s) signext { entry: %tmp.3.s = add i64 %y.s, %x.s ; [#uses=1] ret i64 %tmp.3.s @@ -42,13 +42,13 @@ entry: ret i64 %tmp.3.s } -define i32 @sl(i32 sext %x.s, i32 sext %y.s) sext { +define i32 @sl(i32 signext %x.s, i32 signext %y.s) signext { entry: %tmp.3.s = sub i32 %y.s, %x.s ; [#uses=1] ret i32 %tmp.3.s } -define i32 @sli(i32 sext %x.s) sext { +define i32 @sli(i32 signext %x.s) signext { entry: %tmp.3.s = sub i32 %x.s, 100 ; [#uses=1] ret i32 %tmp.3.s @@ -66,14 +66,14 @@ entry: ret i64 %tmp.3.s } -define i32 @a4l(i32 sext %x.s, i32 sext %y.s) sext { +define i32 @a4l(i32 signext %x.s, i32 signext %y.s) signext { entry: %tmp.1.s = shl i32 %y.s, 2 ; [#uses=1] %tmp.3.s = add i32 %tmp.1.s, %x.s ; [#uses=1] ret i32 %tmp.3.s } -define i32 @a8l(i32 sext %x.s, i32 sext %y.s) sext { +define i32 @a8l(i32 signext %x.s, i32 signext %y.s) signext { entry: %tmp.1.s = shl i32 %y.s, 3 ; [#uses=1] %tmp.3.s = add i32 %tmp.1.s, %x.s ; [#uses=1] @@ -94,14 +94,14 @@ entry: ret i64 %tmp.3.s } -define i32 @a4li(i32 sext %y.s) sext { +define i32 @a4li(i32 signext %y.s) signext { entry: %tmp.1.s = shl i32 %y.s, 2 ; [#uses=1] %tmp.3.s = add i32 100, %tmp.1.s ; [#uses=1] ret i32 %tmp.3.s } -define i32 @a8li(i32 sext %y.s) sext { +define i32 @a8li(i32 signext %y.s) signext { entry: %tmp.1.s = shl i32 %y.s, 3 ; [#uses=1] %tmp.3.s = add i32 100, %tmp.1.s ; [#uses=1] @@ -122,14 +122,14 @@ entry: ret i64 %tmp.3.s } -define i32 @s4l(i32 sext %x.s, i32 sext %y.s) sext { +define i32 @s4l(i32 signext %x.s, i32 signext %y.s) signext { entry: %tmp.1.s = shl i32 %y.s, 2 ; [#uses=1] %tmp.3.s = sub i32 %tmp.1.s, %x.s ; [#uses=1] ret i32 %tmp.3.s } -define i32 @s8l(i32 sext %x.s, i32 sext %y.s) sext { +define i32 @s8l(i32 signext %x.s, i32 signext %y.s) signext { entry: %tmp.1.s = shl i32 %y.s, 3 ; [#uses=1] %tmp.3.s = sub i32 %tmp.1.s, %x.s ; [#uses=1] @@ -150,14 +150,14 @@ entry: ret i64 %tmp.3.s } -define i32 @s4li(i32 sext %y.s) sext { +define i32 @s4li(i32 signext %y.s) signext { entry: %tmp.1.s = shl i32 %y.s, 2 ; [#uses=1] %tmp.3.s = sub i32 %tmp.1.s, 100 ; [#uses=1] ret i32 %tmp.3.s } -define i32 @s8li(i32 sext %y.s) sext { +define i32 @s8li(i32 signext %y.s) signext { entry: %tmp.1.s = shl i32 %y.s, 3 ; [#uses=1] %tmp.3.s = sub i32 %tmp.1.s, 100 ; [#uses=1] diff --git a/test/CodeGen/Alpha/i32_sub_1.ll b/test/CodeGen/Alpha/i32_sub_1.ll index ae254f2e9e1..7af81345407 100644 --- a/test/CodeGen/Alpha/i32_sub_1.ll +++ b/test/CodeGen/Alpha/i32_sub_1.ll @@ -2,7 +2,7 @@ ; RUN: llvm-as < %s | llc -march=alpha | grep -i {subl \$16,1,\$0} -define i32 @foo(i32 sext %x) sext { +define i32 @foo(i32 signext %x) signext { entry: %tmp.1 = add i32 %x, -1 ; [#uses=1] ret i32 %tmp.1 diff --git a/test/CodeGen/Alpha/zapnot.ll b/test/CodeGen/Alpha/zapnot.ll index 05e90ece31b..7fec19bdf3f 100644 --- a/test/CodeGen/Alpha/zapnot.ll +++ b/test/CodeGen/Alpha/zapnot.ll @@ -2,7 +2,7 @@ ; RUN: llvm-as < %s | llc -march=alpha | grep zapnot -define i16 @foo(i64 %y) zext { +define i16 @foo(i64 %y) zeroext { entry: %tmp.1 = trunc i64 %y to i16 ; [#uses=1] ret i16 %tmp.1 diff --git a/test/CodeGen/PowerPC/2007-05-30-dagcombine-miscomp.ll b/test/CodeGen/PowerPC/2007-05-30-dagcombine-miscomp.ll index 0ea76c76338..ae853f67e20 100644 --- a/test/CodeGen/PowerPC/2007-05-30-dagcombine-miscomp.ll +++ b/test/CodeGen/PowerPC/2007-05-30-dagcombine-miscomp.ll @@ -4,7 +4,7 @@ target triple = "powerpc-apple-darwin8.8.0" ; RUN: llvm-as < %s | llc -march=ppc32 | grep {rlwinm r3, r3, 23, 30, 30} ; PR1473 -define i8 @foo(i16 zext %a) zext { +define i8 @foo(i16 zeroext %a) zeroext { %tmp2 = lshr i16 %a, 10 ; [#uses=1] %tmp23 = trunc i16 %tmp2 to i8 ; [#uses=1] %tmp4 = shl i8 %tmp23, 1 ; [#uses=1] diff --git a/test/CodeGen/PowerPC/and-elim.ll b/test/CodeGen/PowerPC/and-elim.ll index f85b3d82b71..eef8f51f7a1 100644 --- a/test/CodeGen/PowerPC/and-elim.ll +++ b/test/CodeGen/PowerPC/and-elim.ll @@ -9,7 +9,7 @@ define void @test(i8* %P) { ret void } -define i16 @test2(i16 zext %crc) zext { +define i16 @test2(i16 zeroext %crc) zeroext { ; No and's should be needed for the i16s here. %tmp.1 = lshr i16 %crc, 1 %tmp.7 = xor i16 %tmp.1, 40961 diff --git a/test/CodeGen/PowerPC/and_sext.ll b/test/CodeGen/PowerPC/and_sext.ll index ac277980bd4..e0e498def05 100644 --- a/test/CodeGen/PowerPC/and_sext.ll +++ b/test/CodeGen/PowerPC/and_sext.ll @@ -9,7 +9,7 @@ define i32 @test1(i32 %mode.0.i.0) { ret i32 %tmp.81 } -define i16 @test2(i16 sext %X, i16 sext %x) sext { +define i16 @test2(i16 signext %X, i16 signext %x) signext { %tmp = sext i16 %X to i32 %tmp1 = sext i16 %x to i32 %tmp2 = add i32 %tmp, %tmp1 @@ -20,7 +20,7 @@ define i16 @test2(i16 sext %X, i16 sext %x) sext { ret i16 %retval } -define i16 @test3(i32 zext %X) sext { +define i16 @test3(i32 zeroext %X) signext { %tmp1 = lshr i32 %X, 16 %tmp2 = trunc i32 %tmp1 to i16 ret i16 %tmp2 diff --git a/test/CodeGen/PowerPC/small-arguments.ll b/test/CodeGen/PowerPC/small-arguments.ll index e5120473a2f..e211e86875a 100644 --- a/test/CodeGen/PowerPC/small-arguments.ll +++ b/test/CodeGen/PowerPC/small-arguments.ll @@ -1,25 +1,25 @@ ; RUN: llvm-as < %s | llc -march=ppc32 | not grep {extsh\\|rlwinm} -declare i16 @foo() sext +declare i16 @foo() signext -define i32 @test1(i16 sext %X) { +define i32 @test1(i16 signext %X) { %Y = sext i16 %X to i32 ;; dead ret i32 %Y } -define i32 @test2(i16 zext %X) { +define i32 @test2(i16 zeroext %X) { %Y = sext i16 %X to i32 %Z = and i32 %Y, 65535 ;; dead ret i32 %Z } define void @test3() { - %tmp.0 = call i16 @foo() sext ;; no extsh! + %tmp.0 = call i16 @foo() signext ;; no extsh! %tmp.1 = icmp slt i16 %tmp.0, 1234 br i1 %tmp.1, label %then, label %UnifiedReturnBlock then: - call i32 @test1(i16 0 sext) + call i32 @test1(i16 0 signext) ret void UnifiedReturnBlock: ret void @@ -46,7 +46,7 @@ define i32 @test6(i32* %P) { ret i32 %tmp.2 } -define i16 @test7(float %a) zext { +define i16 @test7(float %a) zeroext { %tmp.1 = fptoui float %a to i16 ret i16 %tmp.1 } diff --git a/test/CodeGen/X86/2007-05-14-LiveIntervalAssert.ll b/test/CodeGen/X86/2007-05-14-LiveIntervalAssert.ll index f89ef71d47f..61f8b2ce58f 100644 --- a/test/CodeGen/X86/2007-05-14-LiveIntervalAssert.ll +++ b/test/CodeGen/X86/2007-05-14-LiveIntervalAssert.ll @@ -3,7 +3,7 @@ %struct.XDesc = type <{ i32, %struct.OpaqueXDataStorageType** }> %struct.OpaqueXDataStorageType = type opaque -declare i16 @GetParamDesc(%struct.XDesc*, i32, i32, %struct.XDesc*) sext +declare i16 @GetParamDesc(%struct.XDesc*, i32, i32, %struct.XDesc*) signext declare void @r_raise(i64, i8*, ...) @@ -18,7 +18,7 @@ cond_true109: ; preds = %entry br i1 false, label %cond_next164, label %cond_true239 cond_next164: ; preds = %cond_true109 - %tmp176 = call i16 @GetParamDesc( %struct.XDesc* null, i32 1701999219, i32 1413830740, %struct.XDesc* null ) sext ; [#uses=0] + %tmp176 = call i16 @GetParamDesc( %struct.XDesc* null, i32 1701999219, i32 1413830740, %struct.XDesc* null ) signext ; [#uses=0] call void (i64, i8*, ...)* @r_raise( i64 0, i8* null ) unreachable diff --git a/test/CodeGen/X86/2007-06-04-tailmerge4.ll b/test/CodeGen/X86/2007-06-04-tailmerge4.ll index a052ad8e036..497a83aa34a 100644 --- a/test/CodeGen/X86/2007-06-04-tailmerge4.ll +++ b/test/CodeGen/X86/2007-06-04-tailmerge4.ll @@ -431,9 +431,9 @@ declare i32 @report__ident_int(i32 %x) declare i8 @report__equal(i32 %x, i32 %y) -declare i8 @report__ident_char(i8 zext %x) +declare i8 @report__ident_char(i8 zeroext %x) -declare i16 @report__ident_wide_char(i16 zext %x) +declare i16 @report__ident_wide_char(i16 zeroext %x) declare i8 @report__ident_bool(i8 %x) @@ -451,4 +451,4 @@ declare void @report__legal_file_name(%struct.string___XUP* sret %agg.result, i declare void @__gnat_rcheck_06(i8*, i32) -declare void @system__string_ops__str_concat_cs(%struct.string___XUP* sret , i8 zext , i64) +declare void @system__string_ops__str_concat_cs(%struct.string___XUP* sret , i8 zeroext , i64) diff --git a/test/CodeGen/X86/trunc-to-bool.ll b/test/CodeGen/X86/trunc-to-bool.ll index bf5382510c2..69f37c0696a 100644 --- a/test/CodeGen/X86/trunc-to-bool.ll +++ b/test/CodeGen/X86/trunc-to-bool.ll @@ -4,7 +4,7 @@ ; RUN: llvm-as < %s | llc -march=x86 | grep {\\(and\\)\\|\\(test.*\\\$1\\)} | \ ; RUN: wc -l | grep 6 -define i1 @test1(i32 %X) zext { +define i1 @test1(i32 %X) zeroext { %Y = trunc i32 %X to i1 ret i1 %Y } diff --git a/test/CodeGen/X86/x86-64-arg.ll b/test/CodeGen/X86/x86-64-arg.ll index f4fe2f4a482..b6aa9a193e2 100644 --- a/test/CodeGen/X86/x86-64-arg.ll +++ b/test/CodeGen/X86/x86-64-arg.ll @@ -7,7 +7,7 @@ target datalayout = "e-p:64:64" target triple = "x86_64-apple-darwin8" -define i32 @test(i16 sext %X) { +define i32 @test(i16 signext %X) { entry: %tmp12 = sext i16 %X to i32 ; [#uses=1] ret i32 %tmp12 diff --git a/test/CodeGen/X86/x86-64-shortint.ll b/test/CodeGen/X86/x86-64-shortint.ll index d1364508d11..369527fd29c 100644 --- a/test/CodeGen/X86/x86-64-shortint.ll +++ b/test/CodeGen/X86/x86-64-shortint.ll @@ -4,9 +4,9 @@ target datalayout = "e-p:64:64" target triple = "x86_64-apple-darwin8" -define void @bar(i16 zext %A) { - tail call void @foo( i16 %A sext ) +define void @bar(i16 zeroext %A) { + tail call void @foo( i16 %A signext ) ret void } -declare void @foo(i16 sext ) +declare void @foo(i16 signext ) diff --git a/test/Feature/paramattrs.ll b/test/Feature/paramattrs.ll index 01dc2fa93a8..24c46dc22c1 100644 --- a/test/Feature/paramattrs.ll +++ b/test/Feature/paramattrs.ll @@ -2,21 +2,21 @@ ; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll ; RUN: diff %t1.ll %t2.ll -%ZFunTy = type i32(i8 zext) -%SFunTy = type i32(i8 sext) +%ZFunTy = type i32(i8 zeroext) +%SFunTy = type i32(i8 signext) -declare i16 @"test"(i16 sext %arg) sext -declare i8 @"test2" (i16 zext %a2) zext +declare i16 @"test"(i16 signext %arg) signext +declare i8 @"test2" (i16 zeroext %a2) zeroext declare i32 @"test3"(i32* noalias %p) declare void @exit(i32) noreturn nounwind -define i32 @main(i32 %argc, i8 **%argv) nounwind inreg { +define i32 @main(i32 inreg %argc, i8 ** inreg %argv) nounwind { %val = trunc i32 %argc to i16 - %res1 = call i16 (i16 sext) sext *@test(i16 %val) + %res1 = call i16 (i16 signext) signext *@test(i16 %val) %two = add i16 %res1, %res1 - %res2 = call i8 @test2(i16 %two zext) zext + %res2 = call i8 @test2(i16 %two zeroext) zeroext %retVal = sext i16 %two to i32 ret i32 %retVal } diff --git a/test/Integer/paramattrs_bt.ll b/test/Integer/paramattrs_bt.ll index 7959fa0fe59..e5b6a3e65b5 100644 --- a/test/Integer/paramattrs_bt.ll +++ b/test/Integer/paramattrs_bt.ll @@ -2,18 +2,18 @@ ; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll ; RUN: diff %t1.ll %t2.ll -%ZFunTy = type i33(i8 zext) -%SFunTy = type i33(i8 sext) +%ZFunTy = type i33(i8 zeroext) +%SFunTy = type i33(i8 signext) -declare i16 @"test"(i16 sext %arg) sext -declare i8 @"test2" (i16 zext %a2) zext +declare i16 @"test"(i16 signext %arg) signext +declare i8 @"test2" (i16 zeroext %a2) zeroext define i33 @main(i33 %argc, i8 **%argv) { %val = trunc i33 %argc to i16 - %res = call i16 (i16 sext) sext *@test(i16 %val) + %res = call i16 (i16 signext) signext *@test(i16 %val) %two = add i16 %res, %res - %res2 = call i8 @test2(i16 %two zext) zext + %res2 = call i8 @test2(i16 %two zeroext) zeroext %retVal = sext i16 %two to i33 ret i33 %retVal } diff --git a/test/Transforms/GVNPRE/2007-06-15-InvokeInst.ll b/test/Transforms/GVNPRE/2007-06-15-InvokeInst.ll index 1d8f3b56345..86187b291b8 100644 --- a/test/Transforms/GVNPRE/2007-06-15-InvokeInst.ll +++ b/test/Transforms/GVNPRE/2007-06-15-InvokeInst.ll @@ -11,7 +11,7 @@ cond_true: ; preds = %entry ret i32 0 cond_next: ; preds = %entry - %tmp10 = invoke i16 @_ZN12token_stream4openEPKc( i8* null, i8* null ) sext + %tmp10 = invoke i16 @_ZN12token_stream4openEPKc( i8* null, i8* null ) signext to label %invcont unwind label %cleanup690 ; [#uses=0] invcont: ; preds = %cond_next @@ -63,7 +63,7 @@ cleanup690: ; preds = %cond_next ret i32 0 } -declare i16 @_ZN12token_stream4openEPKc(i8*, i8*) sext +declare i16 @_ZN12token_stream4openEPKc(i8*, i8*) signext declare i32 @printf(i8*, ...) diff --git a/test/Transforms/GlobalOpt/2007-04-05-Crash.ll b/test/Transforms/GlobalOpt/2007-04-05-Crash.ll index bf957b439cb..1991d90b8fa 100644 --- a/test/Transforms/GlobalOpt/2007-04-05-Crash.ll +++ b/test/Transforms/GlobalOpt/2007-04-05-Crash.ll @@ -6,7 +6,7 @@ target triple = "thumb-apple-darwin8" @"L_OBJC_IMAGE_INFO" = internal global [2 x i32] zeroinitializer ; <[2 x i32]*> [#uses=1] @llvm.used = appending global [1 x i8*] [ i8* bitcast ([2 x i32]* @"L_OBJC_IMAGE_INFO" to i8*) ] ; <[1 x i8*]*> [#uses=0] -define i16 @__NSCharToUnicharCFWrapper(i8 zext %ch) zext { +define i16 @__NSCharToUnicharCFWrapper(i8 zeroext %ch) zeroext { entry: %iftmp.0.0.in.in = select i1 false, i16* @replacementUnichar, i16* null ; [#uses=1] %iftmp.0.0.in = load i16* %iftmp.0.0.in.in ; [#uses=1] diff --git a/test/Transforms/IndVarsSimplify/iterationCount_zext_or_trunc.ll b/test/Transforms/IndVarsSimplify/iterationCount_zext_or_trunc.ll index 0331f23f285..747c781e993 100644 --- a/test/Transforms/IndVarsSimplify/iterationCount_zext_or_trunc.ll +++ b/test/Transforms/IndVarsSimplify/iterationCount_zext_or_trunc.ll @@ -4,7 +4,7 @@ target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64" target triple = "i686-pc-linux-gnu" -define i32 @testcase(i5 zext %k) { +define i32 @testcase(i5 zeroext %k) { entry: br label %bb2