12233c95bSzrjGCC_NO_LIBS= yes 22233c95bSzrjLOCAL_CONFIG= yes 32233c95bSzrj.include "../Makefile.inc" 42233c95bSzrj.PATH: $(srcdir)/config/i386 52233c95bSzrj 62233c95bSzrjCFLAGS+= -DTARGET_NAME=\"${target_machine}\" 72233c95bSzrj# needed to compile hsa/brig bits 82233c95bSzrjCXXFLAGS+= ${NOEXCEPTION_FLAGS} 92233c95bSzrj 102233c95bSzrjLIB= backend 112233c95bSzrjINTERNALLIB= YES 122233c95bSzrj 132233c95bSzrj# almost verbatim from Makefile, objects from cc files have been pulled out 142233c95bSzrj# because the .o=.c is wrong for them 152233c95bSzrjhost_hook_obj=host-default.o 162233c95bSzrjout_object_file=i386.o 172233c95bSzrjEXTRA_OBJS= x86-tune-sched.o x86-tune-sched-bd.o \ 182233c95bSzrj x86-tune-sched-atom.o x86-tune-sched-core.o 192233c95bSzrjBACKEND_OBJS= \ 202233c95bSzrj gimple-match.o \ 212233c95bSzrj generic-match.o \ 222233c95bSzrj insn-attrtab.o \ 232233c95bSzrj insn-automata.o \ 242233c95bSzrj insn-dfatab.o \ 252233c95bSzrj insn-emit.o \ 262233c95bSzrj insn-extract.o \ 272233c95bSzrj insn-latencytab.o \ 282233c95bSzrj insn-modes.o \ 292233c95bSzrj insn-opinit.o \ 302233c95bSzrj insn-output.o \ 312233c95bSzrj insn-peep.o \ 322233c95bSzrj insn-preds.o \ 332233c95bSzrj insn-recog.o \ 342233c95bSzrj insn-enums.o \ 352233c95bSzrj ggc-page.o \ 362233c95bSzrj alias.o \ 372233c95bSzrj alloc-pool.o \ 382233c95bSzrj auto-inc-dec.o \ 392233c95bSzrj auto-profile.o \ 402233c95bSzrj bb-reorder.o \ 412233c95bSzrj bitmap.o \ 422233c95bSzrj bt-load.o \ 432233c95bSzrj builtins.o \ 442233c95bSzrj caller-save.o \ 452233c95bSzrj calls.o \ 462233c95bSzrj ccmp.o \ 472233c95bSzrj cfg.o \ 482233c95bSzrj cfganal.o \ 492233c95bSzrj cfgbuild.o \ 502233c95bSzrj cfgcleanup.o \ 512233c95bSzrj cfgexpand.o \ 522233c95bSzrj cfghooks.o \ 532233c95bSzrj cfgloop.o \ 542233c95bSzrj cfgloopanal.o \ 552233c95bSzrj cfgloopmanip.o \ 562233c95bSzrj cfgrtl.o \ 572233c95bSzrj symtab.o \ 582233c95bSzrj cgraph.o \ 592233c95bSzrj cgraphbuild.o \ 602233c95bSzrj cgraphunit.o \ 612233c95bSzrj cgraphclones.o \ 622233c95bSzrj combine.o \ 632233c95bSzrj combine-stack-adj.o \ 642233c95bSzrj compare-elim.o \ 652233c95bSzrj context.o \ 662233c95bSzrj convert.o \ 672233c95bSzrj coverage.o \ 682233c95bSzrj cppbuiltin.o \ 692233c95bSzrj cppdefault.o \ 702233c95bSzrj cprop.o \ 712233c95bSzrj cse.o \ 722233c95bSzrj cselib.o \ 732233c95bSzrj data-streamer.o \ 742233c95bSzrj data-streamer-in.o \ 752233c95bSzrj data-streamer-out.o \ 762233c95bSzrj dbxout.o \ 772233c95bSzrj dbgcnt.o \ 782233c95bSzrj dce.o \ 792233c95bSzrj ddg.o \ 802233c95bSzrj debug.o \ 812233c95bSzrj df-core.o \ 822233c95bSzrj df-problems.o \ 832233c95bSzrj df-scan.o \ 842233c95bSzrj dfp.o \ 852233c95bSzrj dojump.o \ 862233c95bSzrj dominance.o \ 872233c95bSzrj domwalk.o \ 882233c95bSzrj double-int.o \ 892233c95bSzrj dse.o \ 902233c95bSzrj dumpfile.o \ 912233c95bSzrj dwarf2asm.o \ 922233c95bSzrj dwarf2cfi.o \ 932233c95bSzrj dwarf2out.o \ 942233c95bSzrj early-remat.o \ 952233c95bSzrj emit-rtl.o \ 962233c95bSzrj et-forest.o \ 972233c95bSzrj except.o \ 982233c95bSzrj explow.o \ 992233c95bSzrj expmed.o \ 1002233c95bSzrj expr.o \ 1012233c95bSzrj file-prefix-map.o \ 1022233c95bSzrj final.o \ 1032233c95bSzrj fixed-value.o \ 1042233c95bSzrj fold-const.o \ 1052233c95bSzrj fold-const-call.o \ 1062233c95bSzrj function.o \ 1072233c95bSzrj fwprop.o \ 1082233c95bSzrj gcc-rich-location.o \ 1092233c95bSzrj gcse.o \ 1102233c95bSzrj gcse-common.o \ 1112233c95bSzrj ggc-common.o \ 1122233c95bSzrj ggc-tests.o \ 1132233c95bSzrj gimple.o \ 1142233c95bSzrj gimple-builder.o \ 1152233c95bSzrj gimple-expr.o \ 1162233c95bSzrj gimple-iterator.o \ 1172233c95bSzrj gimple-fold.o \ 1182233c95bSzrj gimple-laddress.o \ 1192233c95bSzrj gimple-loop-jam.o \ 1202233c95bSzrj gimple-low.o \ 1212233c95bSzrj gimple-pretty-print.o \ 1222233c95bSzrj gimple-ssa-backprop.o \ 1232233c95bSzrj gimple-ssa-evrp.o \ 1242233c95bSzrj gimple-ssa-evrp-analyze.o \ 1252233c95bSzrj gimple-ssa-isolate-paths.o \ 1262233c95bSzrj gimple-ssa-nonnull-compare.o \ 1272233c95bSzrj gimple-ssa-split-paths.o \ 1282233c95bSzrj gimple-ssa-store-merging.o \ 1292233c95bSzrj gimple-ssa-strength-reduction.o \ 1302233c95bSzrj gimple-ssa-sprintf.o \ 1312233c95bSzrj gimple-ssa-warn-alloca.o \ 1322233c95bSzrj gimple-ssa-warn-restrict.o \ 1332233c95bSzrj gimple-streamer-in.o \ 1342233c95bSzrj gimple-streamer-out.o \ 1352233c95bSzrj gimple-walk.o \ 1362233c95bSzrj gimplify.o \ 1372233c95bSzrj gimplify-me.o \ 1382233c95bSzrj godump.o \ 1392233c95bSzrj graph.o \ 1402233c95bSzrj graphds.o \ 1412233c95bSzrj graphite.o \ 1422233c95bSzrj gtype-desc.o \ 1432233c95bSzrj haifa-sched.o \ 1442233c95bSzrj hsa-common.o \ 1452233c95bSzrj hsa-gen.o \ 1462233c95bSzrj hsa-regalloc.o \ 1472233c95bSzrj hsa-brig.o \ 1482233c95bSzrj hsa-dump.o \ 1492233c95bSzrj hw-doloop.o \ 1502233c95bSzrj hwint.o \ 1512233c95bSzrj ifcvt.o \ 1522233c95bSzrj ree.o \ 1532233c95bSzrj inchash.o \ 1542233c95bSzrj incpath.o \ 1552233c95bSzrj init-regs.o \ 1562233c95bSzrj internal-fn.o \ 1572233c95bSzrj ipa-chkp.o \ 1582233c95bSzrj ipa-cp.o \ 1592233c95bSzrj ipa-devirt.o \ 1602233c95bSzrj ipa-fnsummary.o \ 1612233c95bSzrj ipa-polymorphic-call.o \ 1622233c95bSzrj ipa-split.o \ 1632233c95bSzrj ipa-inline.o \ 1642233c95bSzrj ipa-comdats.o \ 1652233c95bSzrj ipa-visibility.o \ 1662233c95bSzrj ipa-inline-analysis.o \ 1672233c95bSzrj ipa-inline-transform.o \ 1682233c95bSzrj ipa-predicate.o \ 1692233c95bSzrj ipa-profile.o \ 1702233c95bSzrj ipa-prop.o \ 1712233c95bSzrj ipa-param-manipulation.o \ 1722233c95bSzrj ipa-pure-const.o \ 1732233c95bSzrj ipa-icf.o \ 1742233c95bSzrj ipa-icf-gimple.o \ 1752233c95bSzrj ipa-reference.o \ 1762233c95bSzrj ipa-hsa.o \ 1772233c95bSzrj ipa-ref.o \ 1782233c95bSzrj ipa-utils.o \ 1792233c95bSzrj ipa.o \ 1802233c95bSzrj ira.o \ 1812233c95bSzrj ira-build.o \ 1822233c95bSzrj ira-costs.o \ 1832233c95bSzrj ira-conflicts.o \ 1842233c95bSzrj ira-color.o \ 1852233c95bSzrj ira-emit.o \ 1862233c95bSzrj ira-lives.o \ 1872233c95bSzrj jump.o \ 1882233c95bSzrj langhooks.o \ 1892233c95bSzrj lcm.o \ 1902233c95bSzrj lists.o \ 1912233c95bSzrj loop-doloop.o \ 1922233c95bSzrj loop-init.o \ 1932233c95bSzrj loop-invariant.o \ 1942233c95bSzrj loop-iv.o \ 1952233c95bSzrj loop-unroll.o \ 1962233c95bSzrj lower-subreg.o \ 1972233c95bSzrj lra.o \ 1982233c95bSzrj lra-assigns.o \ 1992233c95bSzrj lra-coalesce.o \ 2002233c95bSzrj lra-constraints.o \ 2012233c95bSzrj lra-eliminations.o \ 2022233c95bSzrj lra-lives.o \ 2032233c95bSzrj lra-remat.o \ 2042233c95bSzrj lra-spills.o \ 2052233c95bSzrj lto-cgraph.o \ 2062233c95bSzrj lto-streamer.o \ 2072233c95bSzrj lto-streamer-in.o \ 2082233c95bSzrj lto-streamer-out.o \ 2092233c95bSzrj lto-section-in.o \ 2102233c95bSzrj lto-section-out.o \ 2112233c95bSzrj lto-opts.o \ 2122233c95bSzrj lto-compress.o \ 2132233c95bSzrj mcf.o \ 2142233c95bSzrj mode-switching.o \ 2152233c95bSzrj modulo-sched.o \ 2162233c95bSzrj multiple_target.o \ 2172233c95bSzrj omp-offload.o \ 2182233c95bSzrj omp-expand.o \ 2192233c95bSzrj omp-general.o \ 2202233c95bSzrj omp-grid.o \ 2212233c95bSzrj omp-low.o \ 2222233c95bSzrj omp-simd-clone.o \ 2232233c95bSzrj optabs.o \ 2242233c95bSzrj optabs-libfuncs.o \ 2252233c95bSzrj optabs-query.o \ 2262233c95bSzrj optabs-tree.o \ 2272233c95bSzrj options-save.o \ 2282233c95bSzrj opts-global.o \ 2292233c95bSzrj passes.o \ 2302233c95bSzrj plugin.o \ 2312233c95bSzrj postreload-gcse.o \ 2322233c95bSzrj postreload.o \ 2332233c95bSzrj predict.o \ 2342233c95bSzrj print-rtl.o \ 2352233c95bSzrj print-rtl-function.o \ 2362233c95bSzrj print-tree.o \ 2372233c95bSzrj profile.o \ 2382233c95bSzrj profile-count.o \ 2392233c95bSzrj read-md.o \ 2402233c95bSzrj read-rtl.o \ 2412233c95bSzrj read-rtl-function.o \ 2422233c95bSzrj real.o \ 2432233c95bSzrj realmpfr.o \ 2442233c95bSzrj recog.o \ 2452233c95bSzrj reg-stack.o \ 2462233c95bSzrj regcprop.o \ 2472233c95bSzrj reginfo.o \ 2482233c95bSzrj regrename.o \ 2492233c95bSzrj regstat.o \ 2502233c95bSzrj reload.o \ 2512233c95bSzrj reload1.o \ 2522233c95bSzrj reorg.o \ 2532233c95bSzrj resource.o \ 2542233c95bSzrj rtl-chkp.o \ 2552233c95bSzrj rtl-error.o \ 2562233c95bSzrj rtl.o \ 2572233c95bSzrj rtlhash.o \ 2582233c95bSzrj rtlanal.o \ 2592233c95bSzrj rtlhooks.o \ 2602233c95bSzrj rtx-vector-builder.o \ 2612233c95bSzrj run-rtl-passes.o \ 2622233c95bSzrj sched-deps.o \ 2632233c95bSzrj sched-ebb.o \ 2642233c95bSzrj sched-rgn.o \ 2652233c95bSzrj sel-sched-ir.o \ 2662233c95bSzrj sel-sched-dump.o \ 2672233c95bSzrj sel-sched.o \ 2682233c95bSzrj sese.o \ 2692233c95bSzrj shrink-wrap.o \ 2702233c95bSzrj simplify-rtx.o \ 2712233c95bSzrj sparseset.o \ 2722233c95bSzrj spellcheck.o \ 2732233c95bSzrj spellcheck-tree.o \ 2742233c95bSzrj sreal.o \ 2752233c95bSzrj stack-ptr-mod.o \ 2762233c95bSzrj statistics.o \ 2772233c95bSzrj stmt.o \ 2782233c95bSzrj stor-layout.o \ 2792233c95bSzrj store-motion.o \ 2802233c95bSzrj streamer-hooks.o \ 2812233c95bSzrj stringpool.o \ 2822233c95bSzrj substring-locations.o \ 2832233c95bSzrj target-globals.o \ 2842233c95bSzrj targhooks.o \ 2852233c95bSzrj timevar.o \ 2862233c95bSzrj toplev.o \ 2872233c95bSzrj tracer.o \ 2882233c95bSzrj trans-mem.o \ 2892233c95bSzrj tree-affine.o \ 2902233c95bSzrj asan.o \ 2912233c95bSzrj tsan.o \ 2922233c95bSzrj ubsan.o \ 2932233c95bSzrj sanopt.o \ 2942233c95bSzrj sancov.o \ 2952233c95bSzrj tree-call-cdce.o \ 2962233c95bSzrj tree-cfg.o \ 2972233c95bSzrj tree-cfgcleanup.o \ 2982233c95bSzrj tree-chrec.o \ 2992233c95bSzrj tree-complex.o \ 3002233c95bSzrj tree-data-ref.o \ 3012233c95bSzrj tree-dfa.o \ 3022233c95bSzrj tree-diagnostic.o \ 3032233c95bSzrj tree-dump.o \ 3042233c95bSzrj tree-eh.o \ 3052233c95bSzrj tree-emutls.o \ 3062233c95bSzrj tree-if-conv.o \ 3072233c95bSzrj tree-inline.o \ 3082233c95bSzrj tree-into-ssa.o \ 3092233c95bSzrj tree-iterator.o \ 3102233c95bSzrj tree-loop-distribution.o \ 3112233c95bSzrj tree-nested.o \ 3122233c95bSzrj tree-nrv.o \ 3132233c95bSzrj tree-object-size.o \ 3142233c95bSzrj tree-outof-ssa.o \ 3152233c95bSzrj tree-parloops.o \ 3162233c95bSzrj tree-phinodes.o \ 3172233c95bSzrj tree-chkp.o \ 3182233c95bSzrj tree-chkp-opt.o \ 3192233c95bSzrj tree-predcom.o \ 3202233c95bSzrj tree-pretty-print.o \ 3212233c95bSzrj tree-profile.o \ 3222233c95bSzrj tree-scalar-evolution.o \ 3232233c95bSzrj tree-sra.o \ 3242233c95bSzrj tree-switch-conversion.o \ 3252233c95bSzrj tree-ssa-address.o \ 3262233c95bSzrj tree-ssa-alias.o \ 3272233c95bSzrj tree-ssa-ccp.o \ 3282233c95bSzrj tree-ssa-coalesce.o \ 3292233c95bSzrj tree-ssa-copy.o \ 3302233c95bSzrj tree-ssa-dce.o \ 3312233c95bSzrj tree-ssa-dom.o \ 3322233c95bSzrj tree-ssa-dse.o \ 3332233c95bSzrj tree-ssa-forwprop.o \ 3342233c95bSzrj tree-ssa-ifcombine.o \ 3352233c95bSzrj tree-ssa-live.o \ 3362233c95bSzrj tree-ssa-loop-ch.o \ 3372233c95bSzrj tree-ssa-loop-im.o \ 3382233c95bSzrj tree-ssa-loop-ivcanon.o \ 3392233c95bSzrj tree-ssa-loop-ivopts.o \ 3402233c95bSzrj tree-ssa-loop-manip.o \ 3412233c95bSzrj tree-ssa-loop-niter.o \ 3422233c95bSzrj tree-ssa-loop-prefetch.o \ 3432233c95bSzrj tree-ssa-loop-split.o \ 3442233c95bSzrj tree-ssa-loop-unswitch.o \ 3452233c95bSzrj tree-ssa-loop.o \ 3462233c95bSzrj tree-ssa-math-opts.o \ 3472233c95bSzrj tree-ssa-operands.o \ 3482233c95bSzrj tree-ssa-phionlycprop.o \ 3492233c95bSzrj tree-ssa-phiopt.o \ 3502233c95bSzrj tree-ssa-phiprop.o \ 3512233c95bSzrj tree-ssa-pre.o \ 3522233c95bSzrj tree-ssa-propagate.o \ 3532233c95bSzrj tree-ssa-reassoc.o \ 3542233c95bSzrj tree-ssa-sccvn.o \ 3552233c95bSzrj tree-ssa-scopedtables.o \ 3562233c95bSzrj tree-ssa-sink.o \ 3572233c95bSzrj tree-ssa-strlen.o \ 3582233c95bSzrj tree-ssa-structalias.o \ 3592233c95bSzrj tree-ssa-tail-merge.o \ 3602233c95bSzrj tree-ssa-ter.o \ 3612233c95bSzrj tree-ssa-threadbackward.o \ 3622233c95bSzrj tree-ssa-threadedge.o \ 3632233c95bSzrj tree-ssa-threadupdate.o \ 3642233c95bSzrj tree-ssa-uncprop.o \ 3652233c95bSzrj tree-ssa-uninit.o \ 3662233c95bSzrj tree-ssa.o \ 3672233c95bSzrj tree-ssanames.o \ 3682233c95bSzrj tree-stdarg.o \ 3692233c95bSzrj tree-streamer.o \ 3702233c95bSzrj tree-streamer-in.o \ 3712233c95bSzrj tree-streamer-out.o \ 3722233c95bSzrj tree-tailcall.o \ 3732233c95bSzrj tree-vect-generic.o \ 3742233c95bSzrj tree-vect-patterns.o \ 3752233c95bSzrj tree-vect-data-refs.o \ 3762233c95bSzrj tree-vect-stmts.o \ 3772233c95bSzrj tree-vect-loop.o \ 3782233c95bSzrj tree-vect-loop-manip.o \ 3792233c95bSzrj tree-vect-slp.o \ 3802233c95bSzrj tree-vectorizer.o \ 3812233c95bSzrj tree-vector-builder.o \ 3822233c95bSzrj tree-vrp.o \ 3832233c95bSzrj tree.o \ 3842233c95bSzrj valtrack.o \ 3852233c95bSzrj value-prof.o \ 3862233c95bSzrj var-tracking.o \ 3872233c95bSzrj varasm.o \ 3882233c95bSzrj varpool.o \ 3892233c95bSzrj vec-perm-indices.o \ 3902233c95bSzrj vr-values.o \ 3912233c95bSzrj vtable-verify.o \ 3922233c95bSzrj web.o \ 3932233c95bSzrj $(out_object_file) \ 3942233c95bSzrj $(EXTRA_OBJS) \ 3952233c95bSzrj $(host_hook_obj) 3962233c95bSzrj 39749138b3bSzrj.if ${CFLAGS:M-DTOOLCHAIN_CHECKING} 39849138b3bSzrjBACKEND_OBJS+= fibonacci_heap.o function-tests.o \ 39949138b3bSzrj hash-map-tests.o hash-set-tests.o \ 40049138b3bSzrj rtl-tests.o selftest-rtl.o \ 40149138b3bSzrj selftest-run-tests.o typed-splay-tree.o 40249138b3bSzrj.endif 40349138b3bSzrj 404de2610f5Szrj# only when HAVE_isl 4052233c95bSzrj#BACKEND_OBJS+= \ 4062233c95bSzrj graphite-isl-ast-to-gimple.o \ 4072233c95bSzrj graphite-dependences.o \ 4082233c95bSzrj graphite-optimize-isl.o \ 4092233c95bSzrj graphite-poly.o \ 4102233c95bSzrj graphite-scop-detection.o \ 4112233c95bSzrj graphite-sese-to-poly.o 4122233c95bSzrj 4132233c95bSzrj# only when VMS_DEBUGGING_INFO 4142233c95bSzrj#BACKEND_OBJS+= \ 4152233c95bSzrj vmsdbgout.o 4162233c95bSzrj 4172233c95bSzrj# only when XCOFF_DEBUGGING_INFO 4182233c95bSzrj#BACKEND_OBJS+= \ 4192233c95bSzrj xcoffout.o 4202233c95bSzrj 4212233c95bSzrjOBJS= ${BACKEND_OBJS} 42249138b3bSzrjSRCS= gimple-loop-interchange.cc wide-int.cc wide-int-print.cc 42349138b3bSzrj 42449138b3bSzrj.if ${CFLAGS:M-DTOOLCHAIN_CHECKING} 42549138b3bSzrjSRCS+= unique-ptr-tests.cc 42649138b3bSzrj.endif 4272233c95bSzrj 4285db9d41bSzrj# for gimple-ssa-sprintf.c 4295db9d41bSzrj.if ${CCVER:Mgcc47} 4305db9d41bSzrjCXXFLAGS+= -Wno-pragmas 4315db9d41bSzrj.endif 4325db9d41bSzrj 4335db9d41bSzrj# for tree-ssa-structalias.c, tree-vect-stmts.c 4345db9d41bSzrj.if ${CCVER:Mgcc80} 4355db9d41bSzrjCXXFLAGS+= -Wno-narrowing 436*1fbcaeeaSSascha Wildner.elif ${CCVER:Mclang*} 437*1fbcaeeaSSascha WildnerCXXFLAGS+= -Wno-c++11-narrowing 4385db9d41bSzrj.endif 4395db9d41bSzrj 4402233c95bSzrj# hack to force c++ compiler to compile *.c files to create library 4412233c95bSzrj.for cfile in ${BACKEND_OBJS} 4422233c95bSzrj${cfile}: ${cfile:.o=.c} 4432233c95bSzrj ${CXX} ${STATIC_CXXFLAGS} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET} 4442233c95bSzrj.endfor 4452233c95bSzrj 4462233c95bSzrjdfp.o: gstdint.h 4472233c95bSzrj 4482233c95bSzrjgstdint.h: 4492233c95bSzrj echo "#include <stdint.h>" > ${.TARGET} 4502233c95bSzrj 4512233c95bSzrjCLEANFILES= gstdint.h 4522233c95bSzrj 4532233c95bSzrj.include <bsd.lib.mk> 454