Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -21,23 +21,19 @@ import org.jacodb.api.common.CommonMethod
interface CommonInst {
val location: CommonInstLocation

// TODO: replace with extension property
val method: CommonMethod
get() = location.method
}

interface CommonInstLocation {
val method: CommonMethod
// val index: Int
// val lineNumber: Int
}

interface CommonAssignInst : CommonInst {
val lhv: CommonValue
val rhv: CommonExpr
}

// TODO: add 'callExpr: CoreExpr' property
interface CommonCallInst : CommonInst

interface CommonReturnInst : CommonInst {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ interface CommonThis : CommonValue
interface CommonArgument : CommonValue

interface CommonFieldRef : CommonValue {
val instance: CommonValue? // null for static fields
// val classField: CommonField
val instance: CommonValue?
}

interface CommonArrayAccess : CommonValue {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,8 +109,8 @@
(block.start.index..block.end.index).map { jcGraph.instructions[it] }

override fun block(inst: JcInst): JcBasicBlock {
assert(inst.location.method == jcGraph.method) {
"required method of instruction ${jcGraph.method} but got ${inst.location.method}"
assert(inst.method == jcGraph.method) {
"required method of instruction ${jcGraph.method} but got ${inst.method}"

Check warning on line 113 in jacodb-core/src/main/kotlin/org/jacodb/impl/cfg/JcBlockGraphImpl.kt

View check run for this annotation

Codecov / codecov/patch

jacodb-core/src/main/kotlin/org/jacodb/impl/cfg/JcBlockGraphImpl.kt#L113

Added line #L113 was not covered by tests
}
for (basicBlock in entries) {
if (basicBlock.contains(inst)) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,8 @@
package org.jacodb.impl.cfg.graphs

import org.jacodb.api.common.cfg.BytecodeGraph
import org.jacodb.api.jvm.cfg.JcBasicBlock
import org.jacodb.api.jvm.cfg.JcBlockGraph
import org.jacodb.api.jvm.cfg.JcCatchInst
import org.jacodb.api.jvm.cfg.JcGraph
import org.jacodb.api.jvm.cfg.JcInst
import java.util.*

import java.util.BitSet

/**
* Calculate dominators for basic blocks.
Expand Down Expand Up @@ -159,14 +154,6 @@ open class GraphDominators<NODE>(val graph: BytecodeGraph<NODE>) {
}
}

fun JcGraph.findDominators(): GraphDominators<JcInst> {
return GraphDominators(this).also {
it.find()
}
}

fun JcBlockGraph.findDominators(): GraphDominators<JcBasicBlock> {
return GraphDominators(this).also {
it.find()
}
fun <NODE> BytecodeGraph<NODE>.findDominators(): GraphDominators<NODE> {
return GraphDominators(this).also { it.find() }
}
2 changes: 1 addition & 1 deletion jacodb-ets/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@ plugins {

dependencies {
api(project(":jacodb-api-common"))
api(project(":jacodb-core"))

implementation(Libs.kotlin_logging)
implementation(Libs.slf4j_simple)
implementation(Libs.kotlinx_serialization_json)
implementation(Libs.kotlinx_coroutines_core)
implementation(Libs.jdot)

testImplementation(kotlin("test"))
Expand Down
83 changes: 0 additions & 83 deletions jacodb-ets/src/main/kotlin/org/jacodb/ets/base/Position.kt

This file was deleted.

64 changes: 0 additions & 64 deletions jacodb-ets/src/main/kotlin/org/jacodb/ets/base/StmtPositionInfo.kt

This file was deleted.

2 changes: 1 addition & 1 deletion jacodb-ets/src/main/kotlin/org/jacodb/ets/dsl/BlockCfg.kt
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ data class Block(

data class BlockCfg(
val blocks: List<Block>,
val successors: Map<Int, List<Int>>,
val successors: Map<Int, List<Int>>, // for IF stmt, successors are (true, false) branches
)

fun Program.toBlockCfg(): BlockCfg {
Expand Down
Loading