@@ -441,6 +441,13 @@ impl MemoryBuilderMethods<'tcx> for Builder<'a, 'll, 'tcx> {
441441 }
442442 }
443443
444+ fn set_invariant_load ( & mut self , load : & ' ll Value ) {
445+ unsafe {
446+ llvm:: LLVMSetMetadata ( load, llvm:: MD_invariant_load as c_uint ,
447+ llvm:: LLVMMDNodeInContext ( self . cx . llcx , ptr:: null ( ) , 0 ) ) ;
448+ }
449+ }
450+
444451 fn memcpy ( & mut self , dst : & ' ll Value , dst_align : Align ,
445452 src : & ' ll Value , src_align : Align ,
446453 size : & ' ll Value , flags : MemFlags ) {
@@ -999,6 +1006,17 @@ impl NumBuilderMethods<'tcx> for Builder<'a, 'll, 'tcx> {
9991006 llvm:: LLVMBuildFCmp ( self . llbuilder , op as c_uint , lhs, rhs, noname ( ) )
10001007 }
10011008 }
1009+
1010+ fn select (
1011+ & mut self , cond : & ' ll Value ,
1012+ then_val : & ' ll Value ,
1013+ else_val : & ' ll Value ,
1014+ ) -> & ' ll Value {
1015+ self . count_insn ( "select" ) ;
1016+ unsafe {
1017+ llvm:: LLVMBuildSelect ( self . llbuilder , cond, then_val, else_val, noname ( ) )
1018+ }
1019+ }
10021020}
10031021
10041022impl UnwindBuilderMethods < ' tcx > for Builder < ' a , ' ll , ' tcx > {
@@ -1125,17 +1143,6 @@ impl UnwindBuilderMethods<'tcx> for Builder<'a, 'll, 'tcx> {
11251143
11261144impl BuilderMethods < ' a , ' tcx > for Builder < ' a , ' ll , ' tcx > {
11271145 /* Miscellaneous instructions */
1128- fn select (
1129- & mut self , cond : & ' ll Value ,
1130- then_val : & ' ll Value ,
1131- else_val : & ' ll Value ,
1132- ) -> & ' ll Value {
1133- self . count_insn ( "select" ) ;
1134- unsafe {
1135- llvm:: LLVMBuildSelect ( self . llbuilder , cond, then_val, else_val, noname ( ) )
1136- }
1137- }
1138-
11391146 fn extract_element ( & mut self , vec : & ' ll Value , idx : & ' ll Value ) -> & ' ll Value {
11401147 self . count_insn ( "extractelement" ) ;
11411148 unsafe {
@@ -1171,13 +1178,6 @@ impl BuilderMethods<'a, 'tcx> for Builder<'a, 'll, 'tcx> {
11711178 }
11721179 }
11731180
1174- fn set_invariant_load ( & mut self , load : & ' ll Value ) {
1175- unsafe {
1176- llvm:: LLVMSetMetadata ( load, llvm:: MD_invariant_load as c_uint ,
1177- llvm:: LLVMMDNodeInContext ( self . cx . llcx , ptr:: null ( ) , 0 ) ) ;
1178- }
1179- }
1180-
11811181 fn lifetime_start ( & mut self , ptr : & ' ll Value , size : Size ) {
11821182 self . call_lifetime_intrinsic ( "llvm.lifetime.start" , ptr, size) ;
11831183 }
0 commit comments