Skip to content

Arm64: Lift Load-Exclusive/Store-Exclusive instructions (LDXP/STXP, etc.) #6244

@galenbwill

Description

@galenbwill

The following was posted as a comment on another issue, but I'm splitting it out because this case can be lifted more directly (and may or may not involve adding an intrinsic to indicate the "Exclusive" aspect of these instructions). It will also require more thought and effort to implement.

version: 4.2.6325-dev Personal (c3d1ad94)

system: Linux version 6.10.13-3-MANJARO (builduser@fv-az1246-770) (gcc (GCC) 14.2.1 20240910, GNU ld (GNU Binutils) 2.43.0) #1 SMP PREEMPT_DYNAMIC Tue Oct 8 03:24:49 UTC 2024


ffffff93d1868b00                    do

ffffff93d1868b00                    {

🚫ffffff93d1868ae8                        /*   unimplemented  {ldxp x11, x26, [x10]} */

ffffff93d1868aec                        x11 ^= result;

ffffff93d1868af4                        arg4 = x11 | (arg4 ^ x8_6);

ffffff93d1868af4                        

ffffff93d1868af8                        if (arg4)

ffffff93d1868af8                            break;

ffffff93d1868af8                        

🚫ffffff93d1868afc                        /*   unimplemented  {stxp w11, x9, x12, [x10]} */

ffffff93d1868b00                    } while (x11);

also the unimplemented code

Originally posted by @bb33bb in #6062

Metadata

Metadata

Assignees

Labels

Arch: ARM64Issues with the AArch64 architecture pluginComponent: ArchitectureIssue needs changes to an architecture pluginEffort: LowIssue should take < 1 weekImpact: HighIssue adds or blocks important functionalityLiftingissues related to LLIL lifting

Type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions