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
4 changes: 2 additions & 2 deletions CodeHawk/CHB/bchlib/bCHVersion.ml
Original file line number Diff line number Diff line change
Expand Up @@ -95,8 +95,8 @@ end


let version = new version_info_t
~version:"0.6.0_20250903"
~date:"2025-09-03"
~version:"0.6.0_20251012"
~date:"2025-10-12"
~licensee: None
~maxfilesize: None
()
2 changes: 1 addition & 1 deletion CodeHawk/CHB/bchlibarm32/bCHARMInstructionAggregate.ml
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ object (self)

method is_pseudo_ldrsb =
match self#kind with
| PseudoLDRSH _ -> true
| PseudoLDRSB _ -> true
| _ -> false

method is_predicate_assign =
Expand Down
21 changes: 10 additions & 11 deletions CodeHawk/CHB/bchlibarm32/bCHFnARMDictionary.ml
Original file line number Diff line number Diff line change
Expand Up @@ -1762,7 +1762,11 @@ object (self)
~useshigh
() in
let (tags, args) = add_optional_instr_condition tagstring args c in
let tags = add_optional_subsumption tags in
let tags =
match instr#is_in_aggregate with
| Some dw when (get_aggregate dw)#is_pseudo_ldrsb ->
add_subsumption_dependents (get_aggregate dw) tags
| _ -> add_optional_subsumption tags in
let (tags, args) =
if mem#is_offset_address_writeback then
let vrn_r = rn#to_variable floc in
Expand All @@ -1779,11 +1783,6 @@ object (self)
(mem#to_updated_offset_address floc)
else
(tags, args) in
let tags =
match instr#is_in_aggregate with
| Some dw when (get_aggregate dw)#is_pseudo_ldrsb ->
add_subsumption_dependents (get_aggregate dw) tags
| _ -> tags in
(tags, args)

| LoadRegisterDual (c, rt, rt2, rn, rm, mem, mem2) ->
Expand Down Expand Up @@ -1948,6 +1947,11 @@ object (self)
~useshigh
() in
let (tags, args) = add_optional_instr_condition tagstring args c in
let tags =
match instr#is_in_aggregate with
| Some dw when (get_aggregate dw)#is_pseudo_ldrsh ->
add_subsumption_dependents (get_aggregate dw) tags
| _ -> add_optional_subsumption tags in
let (tags, args) =
if mem#is_offset_address_writeback then
let vrn_r = rn#to_variable floc in
Expand All @@ -1962,11 +1966,6 @@ object (self)
(mem#to_updated_offset_address floc)
else
(tags, args) in
let tags =
match instr#is_in_aggregate with
| Some dw when (get_aggregate dw)#is_pseudo_ldrsh ->
add_subsumption_dependents (get_aggregate dw) tags
| _ -> tags in
(tags, args)

| LoadRegisterSignedByte (c, rt, rn, rm, mem, _) ->
Expand Down