mirror of
https://git.musl-libc.org/git/musl
synced 2025-01-08 07:42:09 +03:00
fix misinterpretation of indexed memory operand in i386 CFI generation
a register used as an index in the memory destination of a mov instruction was wrongly interpreted as the destination of the mov.
This commit is contained in:
parent
fef9c801fe
commit
8cfdfa9c8f
@ -184,7 +184,7 @@ function trashed(register) {
|
|||||||
}
|
}
|
||||||
# this does NOT exhaustively check for all possible instructions which could
|
# this does NOT exhaustively check for all possible instructions which could
|
||||||
# overwrite a register value inherited from the caller (just the common ones)
|
# overwrite a register value inherited from the caller (just the common ones)
|
||||||
/mov.*,%e(ax|bx|cx|dx|si|di|bp)/ { trashed(get_reg2()) }
|
/mov.*,%e(ax|bx|cx|dx|si|di|bp)$/ { trashed(get_reg2()) }
|
||||||
/(add|addl|sub|subl|and|or|xor|lea|sal|sar|shl|shr).*,%e(ax|bx|cx|dx|si|di|bp)$/ {
|
/(add|addl|sub|subl|and|or|xor|lea|sal|sar|shl|shr).*,%e(ax|bx|cx|dx|si|di|bp)$/ {
|
||||||
trashed(get_reg2())
|
trashed(get_reg2())
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user