All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.joern.ghidra2cpg.processors.ArmProcessor.scala Maven / Gradle / Ivy

The newest version!
package io.joern.ghidra2cpg.processors

import scala.collection.mutable

object ArmProcessor extends Processor {
  override val getInstructions: mutable.HashMap[String, String] = mutable.HashMap(
    "add"     -> ".incBy",
    "adr"     -> ".assignment",
    "adrp"    -> "TODO",
    "asr"     -> "TODO",
    "b"       -> ".goto",
    "b.eq"    -> ".goto",
    "b.ne"    -> ".goto",
    "bne"     -> ".goto",
    "bl"      -> "CALL",
    "blr"     -> ".goto",
    "br"      -> ".goto",
    "bti"     -> ".goto",
    "bx"      -> ".goto",
    "blx"     -> ".goto",
    "bxeq"    -> ".goto",
    "cbnz"    -> ".goto",
    "cbz"     -> ".goto",
    "cmp"     -> ".compare",
    "cpy"     -> ".assignment",
    "ldp"     -> ".addressOf",
    "ldr"     -> ".addressOf",
    "ldrb"    -> ".addressOf",
    "ldmia"   -> ".addressOf",
    "ldmiaeq" -> ".addressOf",
    "ldmiane" -> ".addressOf",
    "lsl"     -> ".addressOf",
    "lsr"     -> ".addressOf",
    "mov"     -> ".assignment",
    "movk"    -> ".assignment",
    "movs"    -> ".assignment",
    "nop"     -> ".NOP",
    "ret"     -> "RET",
    "stmdb"   -> ".assignment",
    "stp"     -> ".assignment",
    "str"     -> ".addition",
    "strb"    -> ".assignment",
    "sub"     -> ".subtraction"
  )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy