brintos

brintos / llvm-project-archived public Read only

0
0
Text · 16.2 KiB · 10bb1e0 Raw
383 lines · plain
1; RUN: llc < %s -mtriple=x86_64-linux2 3target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128"4	%"struct.DataOutBase::GmvFlags" = type { i32 }5	%"struct.FE_DGPNonparametric<3>" = type { [1156 x i8], i32, %"struct.PolynomialSpace<1>" }6	%"struct.FiniteElementData<1>" = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 }7	%struct.Line = type { [2 x i32] }8	%"struct.PolynomialSpace<1>" = type { %"struct.std::vector<Polynomials::Polynomial<double>,std::allocator<Polynomials::Polynomial<double> > >", i32, %"struct.std::vector<int,std::allocator<int> >", %"struct.std::vector<int,std::allocator<int> >" }9	%"struct.Polynomials::Polynomial<double>" = type { %struct.Subscriptor, %"struct.std::vector<double,std::allocator<double> >" }10	%struct.Subscriptor = type { ptr, i32, ptr }11	%"struct.TableBase<2,double>" = type { %struct.Subscriptor, ptr, i32, %"struct.TableIndices<2>" }12	%"struct.TableIndices<2>" = type { %struct.Line }13	%"struct.std::_Bit_const_iterator" = type { %"struct.std::_Bit_iterator_base" }14	%"struct.std::_Bit_iterator_base" = type { ptr, i32 }15	%"struct.std::_Bvector_base<std::allocator<bool> >" = type { %"struct.std::_Bvector_base<std::allocator<bool> >::_Bvector_impl" }16	%"struct.std::_Bvector_base<std::allocator<bool> >::_Bvector_impl" = type { %"struct.std::_Bit_const_iterator", %"struct.std::_Bit_const_iterator", ptr }17	%"struct.std::_Vector_base<Polynomials::Polynomial<double>,std::allocator<Polynomials::Polynomial<double> > >" = type { %"struct.std::_Vector_base<Polynomials::Polynomial<double>,std::allocator<Polynomials::Polynomial<double> > >::_Vector_impl" }18	%"struct.std::_Vector_base<Polynomials::Polynomial<double>,std::allocator<Polynomials::Polynomial<double> > >::_Vector_impl" = type { ptr, ptr, ptr }19	%"struct.std::_Vector_base<double,std::allocator<double> >" = type { %"struct.std::_Vector_base<double,std::allocator<double> >::_Vector_impl" }20	%"struct.std::_Vector_base<double,std::allocator<double> >::_Vector_impl" = type { ptr, ptr, ptr }21	%"struct.std::_Vector_base<int,std::allocator<int> >" = type { %"struct.std::_Vector_base<int,std::allocator<int> >::_Vector_impl" }22	%"struct.std::_Vector_base<int,std::allocator<int> >::_Vector_impl" = type { ptr, ptr, ptr }23	%"struct.std::_Vector_base<std::vector<bool, std::allocator<bool> >,std::allocator<std::vector<bool, std::allocator<bool> > > >" = type { %"struct.std::_Vector_base<std::vector<bool, std::allocator<bool> >,std::allocator<std::vector<bool, std::allocator<bool> > > >::_Vector_impl" }24	%"struct.std::_Vector_base<std::vector<bool, std::allocator<bool> >,std::allocator<std::vector<bool, std::allocator<bool> > > >::_Vector_impl" = type { ptr, ptr, ptr }25	%"struct.std::type_info" = type { ptr, ptr }26	%"struct.std::vector<Polynomials::Polynomial<double>,std::allocator<Polynomials::Polynomial<double> > >" = type { %"struct.std::_Vector_base<Polynomials::Polynomial<double>,std::allocator<Polynomials::Polynomial<double> > >" }27	%"struct.std::vector<bool,std::allocator<bool> >" = type { %"struct.std::_Bvector_base<std::allocator<bool> >" }28	%"struct.std::vector<double,std::allocator<double> >" = type { %"struct.std::_Vector_base<double,std::allocator<double> >" }29	%"struct.std::vector<int,std::allocator<int> >" = type { %"struct.std::_Vector_base<int,std::allocator<int> >" }30	%"struct.std::vector<std::vector<bool, std::allocator<bool> >,std::allocator<std::vector<bool, std::allocator<bool> > > >" = type { %"struct.std::_Vector_base<std::vector<bool, std::allocator<bool> >,std::allocator<std::vector<bool, std::allocator<bool> > > >" }31 32declare void @_Unwind_Resume(ptr)33 34declare ptr @_Znwm(i64)35 36declare fastcc void @_ZNSt6vectorIjSaIjEEaSERKS1_(ptr, ptr)37 38declare fastcc void @_ZN9TableBaseILi2EdE6reinitERK12TableIndicesILi2EE(ptr nocapture, i32, i32)39 40declare fastcc void @_ZNSt6vectorIbSaIbEEC1EmRKbRKS0_(ptr nocapture, i64, ptr nocapture)41 42declare fastcc void @_ZNSt6vectorIS_IbSaIbEESaIS1_EEC2EmRKS1_RKS2_(ptr nocapture, i64, ptr nocapture)43 44declare fastcc void @_ZNSt6vectorIN11Polynomials10PolynomialIdEESaIS2_EED1Ev(ptr nocapture)45 46declare fastcc void @_ZN24TensorProductPolynomialsILi3EEC2IN11Polynomials10PolynomialIdEEEERKSt6vectorIT_SaIS6_EE(ptr nocapture, ptr nocapture)47 48declare fastcc void @_ZN7FE_PolyI24TensorProductPolynomialsILi3EELi3EEC2EjRKS1_RK17FiniteElementDataILi3EERKSt6vectorIbSaIbEERKS9_ISB_SaISB_EE(ptr, i32, ptr nocapture, ptr nocapture, ptr nocapture, ptr nocapture)49 50declare fastcc void @_ZN11FE_Q_Helper12_GLOBAL__N_116invert_numberingERKSt6vectorIjSaIjEE(ptr noalias nocapture sret(%"struct.std::vector<int,std::allocator<int> >"), ptr nocapture)51 52declare fastcc void @_ZN4FE_QILi3EE14get_dpo_vectorEj(ptr noalias nocapture sret(%"struct.std::vector<int,std::allocator<int> >"), i32)53 54define fastcc void @_ZN4FE_QILi3EEC1Ej(i32 %degree) personality ptr @__gxx_personality_v0 {55entry:56	invoke fastcc void @_ZNSt6vectorIbSaIbEEC1EmRKbRKS0_(ptr undef, i64 1, ptr undef)57			to label %invcont.i unwind label %lpad.i58 59invcont.i:		; preds = %entry60	invoke fastcc void @_ZN4FE_QILi3EE14get_dpo_vectorEj(ptr noalias sret(%"struct.std::vector<int,std::allocator<int> >") undef, i32 %degree)61			to label %invcont1.i unwind label %lpad120.i62 63invcont1.i:		; preds = %invcont.i64	invoke fastcc void @_ZNSt6vectorIS_IbSaIbEESaIS1_EEC2EmRKS1_RKS2_(ptr undef, i64 undef, ptr undef)65			to label %invcont3.i unwind label %lpad124.i66 67invcont3.i:		; preds = %invcont1.i68	invoke fastcc void @_ZN4FE_QILi3EE14get_dpo_vectorEj(ptr noalias sret(%"struct.std::vector<int,std::allocator<int> >") undef, i32 %degree)69			to label %invcont4.i unwind label %lpad128.i70 71invcont4.i:		; preds = %invcont3.i72	invoke fastcc void @_ZNSt6vectorIbSaIbEEC1EmRKbRKS0_(ptr undef, i64 undef, ptr undef)73			to label %invcont6.i unwind label %lpad132.i74 75invcont6.i:		; preds = %invcont4.i76	invoke fastcc void @_ZN4FE_QILi3EE14get_dpo_vectorEj(ptr noalias sret(%"struct.std::vector<int,std::allocator<int> >") undef, i32 %degree)77			to label %invcont7.i unwind label %lpad136.i78 79invcont7.i:		; preds = %invcont6.i80	invoke fastcc void @_ZN11Polynomials19LagrangeEquidistant23generate_complete_basisEj(ptr noalias sret(%"struct.std::vector<Polynomials::Polynomial<double>,std::allocator<Polynomials::Polynomial<double> > >") undef, i32 %degree)81			to label %invcont9.i unwind label %lpad140.i82 83invcont9.i:		; preds = %invcont7.i84	invoke fastcc void @_ZN24TensorProductPolynomialsILi3EEC2IN11Polynomials10PolynomialIdEEEERKSt6vectorIT_SaIS6_EE(ptr undef, ptr undef)85			to label %invcont10.i unwind label %lpad144.i86 87invcont10.i:		; preds = %invcont9.i88	invoke fastcc void @_ZN7FE_PolyI24TensorProductPolynomialsILi3EELi3EEC2EjRKS1_RK17FiniteElementDataILi3EERKSt6vectorIbSaIbEERKS9_ISB_SaISB_EE(ptr undef, i32 %degree, ptr undef, ptr undef, ptr undef, ptr undef)89			to label %bb14.i unwind label %lpad148.i90 91bb14.i:		; preds = %invcont10.i92	br i1 false, label %bb3.i164.i, label %bb.i.i.i.i160.i93 94bb.i.i.i.i160.i:		; preds = %bb14.i95	unreachable96 97bb3.i164.i:		; preds = %bb14.i98	br i1 undef, label %bb10.i168.i, label %bb.i.i.i20.i166.i99 100bb.i.i.i20.i166.i:		; preds = %bb3.i164.i101	unreachable102 103bb10.i168.i:		; preds = %bb3.i164.i104	invoke fastcc void @_ZNSt6vectorIN11Polynomials10PolynomialIdEESaIS2_EED1Ev(ptr undef)105			to label %bb21.i unwind label %lpad144.i106 107bb21.i:		; preds = %bb10.i168.i108	invoke fastcc void @_ZNSt6vectorIN11Polynomials10PolynomialIdEESaIS2_EED1Ev(ptr undef)109			to label %bb28.i unwind label %lpad140.i110 111bb28.i:		; preds = %bb21.i112	br i1 undef, label %bb35.i, label %bb.i.i.i175.i113 114bb.i.i.i175.i:		; preds = %bb28.i115	br label %bb35.i116 117bb35.i:		; preds = %bb.i.i.i175.i, %bb28.i118	br i1 undef, label %bb42.i, label %bb.i.i.i205.i119 120bb.i.i.i205.i:		; preds = %bb35.i121	unreachable122 123bb42.i:		; preds = %bb35.i124	br i1 undef, label %bb47.i, label %bb.i.i.i213.i125 126bb.i.i.i213.i:		; preds = %bb42.i127	unreachable128 129bb47.i:		; preds = %bb42.i130	br i1 undef, label %bb59.i, label %bb.i.i.i247.i131 132bb.i.i.i247.i:		; preds = %bb47.i133	unreachable134 135bb59.i:		; preds = %bb47.i136	br i1 undef, label %bb66.i, label %bb.i.i.i255.i137 138bb.i.i.i255.i:		; preds = %bb59.i139	unreachable140 141bb66.i:		; preds = %bb59.i142	br i1 undef, label %bb71.i, label %bb.i.i.i262.i143 144bb.i.i.i262.i:		; preds = %bb66.i145	br label %bb71.i146 147bb71.i:		; preds = %bb.i.i.i262.i, %bb66.i148	%tmp11.i.i29.i.i.i.i.i.i = invoke ptr @_Znwm(i64 12)149			to label %_ZNSt12_Vector_baseIjSaIjEEC2EmRKS0_.exit.i.i.i.i.i unwind label %lpad.i.i.i.i.i.i		; <ptr> [#uses=0]150 151lpad.i.i.i.i.i.i:		; preds = %bb71.i152        %exn.i.i.i.i.i.i = landingpad {ptr, i32}153                 cleanup154	unreachable155 156_ZNSt12_Vector_baseIjSaIjEEC2EmRKS0_.exit.i.i.i.i.i:		; preds = %bb71.i157	br i1 undef, label %_ZNSt6vectorIjSaIjEED1Ev.exit.i.i, label %bb.i.i.i.i94.i158 159bb.i.i.i.i94.i:		; preds = %_ZNSt12_Vector_baseIjSaIjEEC2EmRKS0_.exit.i.i.i.i.i160	unreachable161 162_ZNSt6vectorIjSaIjEED1Ev.exit.i.i:		; preds = %_ZNSt12_Vector_baseIjSaIjEEC2EmRKS0_.exit.i.i.i.i.i163	%tmp11.i.i29.i.i.i.i5.i.i = invoke ptr @_Znwm(i64 undef)164			to label %_ZNSt12_Vector_baseIjSaIjEEC2EmRKS0_.exit.i.i.i12.i.i unwind label %lpad.i.i.i.i8.i.i		; <ptr> [#uses=0]165 166lpad.i.i.i.i8.i.i:		; preds = %_ZNSt6vectorIjSaIjEED1Ev.exit.i.i167        %exn.i.i.i.i8.i.i = landingpad {ptr, i32}168                 cleanup169	invoke void @_Unwind_Resume(ptr undef)170			to label %.noexc.i9.i.i unwind label %lpad.i19.i.i171 172.noexc.i9.i.i:		; preds = %lpad.i.i.i.i8.i.i173	unreachable174 175_ZNSt12_Vector_baseIjSaIjEEC2EmRKS0_.exit.i.i.i12.i.i:		; preds = %_ZNSt6vectorIjSaIjEED1Ev.exit.i.i176	br i1 undef, label %bb50.i.i.i, label %bb.i.i.i.i.i.i.i.i.i.i177 178bb.i.i.i.i.i.i.i.i.i.i:		; preds = %bb.i.i.i.i.i.i.i.i.i.i, %_ZNSt12_Vector_baseIjSaIjEEC2EmRKS0_.exit.i.i.i12.i.i179	br i1 undef, label %bb50.i.i.i, label %bb.i.i.i.i.i.i.i.i.i.i180 181bb50.i.i.i:		; preds = %bb.i.i.i.i.i.i.i.i.i.i, %_ZNSt12_Vector_baseIjSaIjEEC2EmRKS0_.exit.i.i.i12.i.i182	invoke fastcc void @_ZN11FE_Q_Helper12_GLOBAL__N_116invert_numberingERKSt6vectorIjSaIjEE(ptr noalias sret(%"struct.std::vector<int,std::allocator<int> >") undef, ptr undef)183			to label %bb83.i unwind label %lpad188.i184 185lpad.i19.i.i:		; preds = %lpad.i.i.i.i8.i.i186        %exn.i19.i.i = landingpad {ptr, i32}187                 cleanup188	unreachable189 190bb83.i:		; preds = %bb50.i.i.i191	br i1 undef, label %invcont84.i, label %bb.i.i.i221.i192 193bb.i.i.i221.i:		; preds = %bb83.i194	unreachable195 196invcont84.i:		; preds = %bb83.i197	%tmp11.i.i29.i.i.i.i.i = invoke ptr @_Znwm(i64 undef)198			to label %_ZNSt12_Vector_baseIjSaIjEEC2EmRKS0_.exit.i.i.i.i unwind label %lpad.i.i.i.i315.i		; <ptr> [#uses=0]199 200lpad.i.i.i.i315.i:		; preds = %invcont84.i201        %exn.i.i.i.i315.i = landingpad {ptr, i32}202                 cleanup203	invoke void @_Unwind_Resume(ptr undef)204			to label %.noexc.i316.i unwind label %lpad.i352.i205 206.noexc.i316.i:		; preds = %lpad.i.i.i.i315.i207	unreachable208 209_ZNSt12_Vector_baseIjSaIjEEC2EmRKS0_.exit.i.i.i.i:		; preds = %invcont84.i210	br i1 undef, label %bb50.i.i, label %bb.i.i.i.i.i.i.i.i320.i211 212bb.i.i.i.i.i.i.i.i320.i:		; preds = %bb.i.i.i.i.i.i.i.i320.i, %_ZNSt12_Vector_baseIjSaIjEEC2EmRKS0_.exit.i.i.i.i213	br i1 undef, label %bb50.i.i, label %bb.i.i.i.i.i.i.i.i320.i214 215bb50.i.i:		; preds = %bb.i.i.i.i.i.i.i.i320.i, %_ZNSt12_Vector_baseIjSaIjEEC2EmRKS0_.exit.i.i.i.i216	invoke fastcc void @_ZN11FE_Q_Helper12_GLOBAL__N_116invert_numberingERKSt6vectorIjSaIjEE(ptr noalias sret(%"struct.std::vector<int,std::allocator<int> >") undef, ptr undef)217			to label %invcont86.i unwind label %lpad200.i218 219lpad.i352.i:		; preds = %lpad.i.i.i.i315.i220        %exn.i352.i = landingpad {ptr, i32}221                 cleanup222	unreachable223 224invcont86.i:		; preds = %bb50.i.i225	invoke fastcc void @_ZNSt6vectorIjSaIjEEaSERKS1_(ptr undef, ptr undef)226			to label %.noexc380.i unwind label %lpad204.i227 228.noexc380.i:		; preds = %invcont86.i229	br i1 undef, label %bb100.i, label %bb.i.i.i198.i230 231bb.i.i.i198.i:		; preds = %.noexc380.i232	unreachable233 234bb100.i:		; preds = %.noexc380.i235	br i1 undef, label %invcont101.i, label %bb.i.i.i190.i236 237bb.i.i.i190.i:		; preds = %bb100.i238	unreachable239 240invcont101.i:		; preds = %bb100.i241	invoke fastcc void @_ZN9TableBaseILi2EdE6reinitERK12TableIndicesILi2EE(ptr undef, i32 undef, i32 undef)242			to label %_ZN10FullMatrixIdEC1Ejj.exit.i.i unwind label %lpad.i.i.i.i.i243 244lpad.i.i.i.i.i:		; preds = %invcont101.i245        %exn.i.i.i.i.i = landingpad {ptr, i32}246                 cleanup247	unreachable248 249_ZN10FullMatrixIdEC1Ejj.exit.i.i:		; preds = %invcont101.i250	invoke fastcc void @_ZN9TableBaseILi2EdE6reinitERK12TableIndicesILi2EE(ptr undef, i32 undef, i32 undef)251			to label %_ZN10FullMatrixIdEC1Ejj.exit28.i.i unwind label %lpad.i.i.i27.i.i252 253lpad.i.i.i27.i.i:		; preds = %_ZN10FullMatrixIdEC1Ejj.exit.i.i254        %exn.i.i.i27.i.i = landingpad {ptr, i32}255                 cleanup256	invoke void @_Unwind_Resume(ptr undef)257			to label %.noexc.i.i unwind label %lpad.i.i258 259.noexc.i.i:		; preds = %lpad.i.i.i27.i.i260	unreachable261 262_ZN10FullMatrixIdEC1Ejj.exit28.i.i:		; preds = %_ZN10FullMatrixIdEC1Ejj.exit.i.i263	br i1 undef, label %bb58.i.i, label %bb.i.i.i304.i.i264 265bb.i.i.i304.i.i:		; preds = %_ZN10FullMatrixIdEC1Ejj.exit28.i.i266	unreachable267 268bb58.i.i:		; preds = %_ZN10FullMatrixIdEC1Ejj.exit28.i.i269	br i1 false, label %bb.i191.i, label %bb.i.i.i297.i.i270 271bb.i.i.i297.i.i:		; preds = %bb58.i.i272	unreachable273 274lpad.i.i:		; preds = %lpad.i.i.i27.i.i275        %exn.i.i = landingpad {ptr, i32}276                 cleanup277	unreachable278 279bb.i191.i:		; preds = %.noexc232.i, %bb58.i.i280	invoke fastcc void @_ZN9TableBaseILi2EdE6reinitERK12TableIndicesILi2EE(ptr undef, i32 undef, i32 undef)281			to label %.noexc232.i unwind label %lpad196.i282 283.noexc232.i:		; preds = %bb.i191.i284	br i1 undef, label %bb29.loopexit.i.i, label %bb.i191.i285 286bb7.i215.i:		; preds = %bb9.i216.i287	br i1 undef, label %bb16.preheader.i.i, label %bb8.i.i288 289bb8.i.i:		; preds = %bb7.i215.i290	%tmp60.i.i = add i32 %0, 1		; <i32> [#uses=1]291	br label %bb9.i216.i292 293bb9.i216.i:		; preds = %bb29.loopexit.i.i, %bb8.i.i294	%0 = phi i32 [ 0, %bb29.loopexit.i.i ], [ %tmp60.i.i, %bb8.i.i ]		; <i32> [#uses=2]295	br i1 undef, label %bb7.i215.i, label %bb16.preheader.i.i296 297bb15.i.i:		; preds = %bb16.preheader.i.i, %bb15.i.i298	%j1.0212.i.i = phi i32 [ %1, %bb15.i.i ], [ 0, %bb16.preheader.i.i ]		; <i32> [#uses=2]299	%tmp6.i.i195.i.i = load i32, ptr undef, align 4		; <i32> [#uses=1]300	%tmp231.i.i = mul i32 %0, %tmp6.i.i195.i.i		; <i32> [#uses=1]301	%tmp13.i197.i.i = add i32 %j1.0212.i.i, %tmp231.i.i		; <i32> [#uses=0]302	%1 = add i32 %j1.0212.i.i, 1		; <i32> [#uses=1]303	br i1 undef, label %bb15.i.i, label %bb17.i.i304 305bb17.i.i:		; preds = %bb16.preheader.i.i, %bb15.i.i306	br label %bb16.preheader.i.i307 308bb16.preheader.i.i:		; preds = %bb17.i.i, %bb9.i216.i, %bb7.i215.i309	br i1 undef, label %bb17.i.i, label %bb15.i.i310 311bb29.loopexit.i.i:		; preds = %.noexc232.i312	br label %bb9.i216.i313 314lpad.i:		; preds = %entry315        %exn.i = landingpad {ptr, i32}316                 cleanup317	unreachable318 319lpad120.i:		; preds = %invcont.i320        %exn120.i = landingpad {ptr, i32}321                 cleanup322	unreachable323 324lpad124.i:		; preds = %invcont1.i325        %exn124.i = landingpad {ptr, i32}326                 cleanup327	unreachable328 329lpad128.i:		; preds = %invcont3.i330        %exn128.i = landingpad {ptr, i32}331                 cleanup332	unreachable333 334lpad132.i:		; preds = %invcont4.i335        %exn132.i = landingpad {ptr, i32}336                 cleanup337	unreachable338 339lpad136.i:		; preds = %invcont6.i340        %exn136.i = landingpad {ptr, i32}341                 cleanup342	unreachable343 344lpad140.i:		; preds = %bb21.i, %invcont7.i345        %exn140.i = landingpad {ptr, i32}346                 cleanup347	unreachable348 349lpad144.i:		; preds = %bb10.i168.i, %invcont9.i350        %exn144.i = landingpad {ptr, i32}351                 cleanup352	unreachable353 354lpad148.i:		; preds = %invcont10.i355        %exn148.i = landingpad {ptr, i32}356                 cleanup357	unreachable358 359lpad188.i:		; preds = %bb50.i.i.i360        %exn188.i = landingpad {ptr, i32}361                 cleanup362	unreachable363 364lpad196.i:		; preds = %bb.i191.i365        %exn196 = landingpad {ptr, i32}366                 cleanup367	unreachable368 369lpad200.i:		; preds = %bb50.i.i370        %exn200.i = landingpad {ptr, i32}371                 cleanup372	unreachable373 374lpad204.i:		; preds = %invcont86.i375        %exn204.i = landingpad {ptr, i32}376                 cleanup377	unreachable378}379 380declare fastcc void @_ZN11Polynomials19LagrangeEquidistant23generate_complete_basisEj(ptr noalias nocapture sret(%"struct.std::vector<Polynomials::Polynomial<double>,std::allocator<Polynomials::Polynomial<double> > >"), i32)381 382declare i32 @__gxx_personality_v0(...)383