Skip to content

Generalize cmovs and partial loads via MIPSInstr::mask #397

Merged
merged 1 commit into from
Apr 17, 2018

Conversation

pavelkryukov
Copy link
Member

Add traps on aligned addresses for lw, lwu, lh, lhu instructions

Add traps on aligned addresses for lw, lwu, lh, lhu instructions
Copy link
Contributor

@AndreiZoltan AndreiZoltan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

0x402494: or $v1, $zero, $zero [ $v1 = 0x0 ]
0x402498: lwl $v1, 0x1($v0) [ $v1 = 0x4030201]
$v1 = 4000000
0x40249c: lui $at, 0x100 [ $at = 0x1000000 ]
0x4024a0: bne $v1, $at, 285

Tests do not pass. For example, in this test $v1 = 0x4000000 instead of 0x1000000

@pavelkryukov
Copy link
Member Author

OK. I'll merge that code as it does not break LWR and other instructions, and you will fix LWR afterwards.

@pavelkryukov pavelkryukov merged commit a4a8106 into master Apr 17, 2018
@pavelkryukov pavelkryukov deleted the all_ones branch April 17, 2018 18:22
@pavelkryukov
Copy link
Member Author

My intuition is that we have to add or subtract 3 to during LWL address calculation.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants