JavaFrontend.JTrans
type translation =
| Skip
| Instr of IR.Procdesc.Node.t
| Prune of IR.Procdesc.Node.t * IR.Procdesc.Node.t
| Loop of IR.Procdesc.Node.t * IR.Procdesc.Node.t * IR.Procdesc.Node.t
Data structure for storing the results of the translation of an instruction.
val create_callee_attributes :
IR.Tenv.t ->
JProgramDesc.t ->
Javalib_pack.JBasics.class_name ->
Javalib_pack.JBasics.method_signature ->
IR.Procname.t ->
IR.ProcAttributes.t option
val create_am_procdesc :
IBase.SourceFile.t ->
JProgramDesc.t ->
JContext.icfg ->
Javalib_pack.Javalib.abstract_method ->
IR.Procname.t ->
IR.Procdesc.t
Create the procedure description for an abstract method
val create_native_procdesc :
IBase.SourceFile.t ->
JProgramDesc.t ->
JContext.icfg ->
Javalib_pack.JCode.jcode Javalib_pack.Javalib.concrete_method ->
IR.Procname.t ->
IR.Procdesc.t
Create the procedure description for a concrete method
val create_empty_procdesc :
IBase.SourceFile.t ->
JProgramDesc.t ->
JContext.icfg ->
Javalib_pack.JCode.jcode Javalib_pack.Javalib.concrete_method ->
IR.Procname.t ->
IR.Procdesc.t
val create_cm_procdesc :
IBase.SourceFile.t ->
JProgramDesc.t ->
JContext.icfg ->
Javalib_pack.JCode.jcode Javalib_pack.Javalib.concrete_method ->
IR.Procname.t ->
(IR.Procdesc.t
* IR.Procdesc.Node.t
* IR.Procdesc.Node.t
* IR.Procdesc.Node.t
* Sawja_pack.JBir.t)
option
create_procdesc source_file program linereader icfg cm proc_name
creates a procedure description for the concrete method cm and adds it to cfg
val instruction : JContext.t -> int -> Sawja_pack.JBir.instr -> translation
translates an instruction into a statement node or prune nodes in the cfg