Package edu.umd.cs.findbugs.ba.vna

Examples of edu.umd.cs.findbugs.ba.vna.MergeTree


    }

    public @CheckForNull
    PointerUsageRequiringNonNullValue get(Location loc, ValueNumber vn, ValueNumberDataflow vnaDataflow) {
        // PointerUsageRequiringNonNullValue secondBest = null;
        MergeTree mergeTree = vnaDataflow.getAnalysis().getMergeTree();
        for (Pair p : map.get(loc.getHandle().getPosition())) {
            if (p.vn.equals(vn)) {
                return p.pu;
            }
            if (!p.vn.hasFlag(ValueNumber.PHI_NODE)) {
                continue;
            }
            BitSet inputs = mergeTree.getTransitiveInputSet(p.vn);
            if (inputs.get(vn.getNumber())) {
                return p.pu;
            }
        }
        return null;
View Full Code Here


        DepthFirstSearch dfs = getDepthFirstSearch(analysisCache, descriptor);
        LoadedFieldSet loadedFieldSet = getLoadedFieldSet(analysisCache, descriptor);
        ValueNumberAnalysis analysis = new ValueNumberAnalysis(methodGen, dfs, loadedFieldSet, AnalysisContext
                .currentAnalysisContext().getLookupFailureCallback());
        analysis.setMergeTree(new MergeTree(analysis.getFactory()));
        CFG cfg = getCFG(analysisCache, descriptor);

        ValueNumberDataflow vnaDataflow = new ValueNumberDataflow(cfg, analysis);
        vnaDataflow.execute();
        if (ClassContext.DUMP_DATAFLOW_ANALYSIS) {
View Full Code Here

TOP

Related Classes of edu.umd.cs.findbugs.ba.vna.MergeTree

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.