diff options
author | H. Peter Anvin <hpa@zytor.com> | 2008-08-24 18:09:04 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2008-08-24 18:09:04 -0700 |
commit | 19f15a50f611bada1fc2445e4453283fa5acc47d (patch) | |
tree | 879a38c3434d9c0a6b67be97248e28a04d1f5d71 /assemble.c | |
parent | 83b2e4f82c78c2464e76dfd09a30f8286830c45e (diff) | |
download | nasm-19f15a50f611bada1fc2445e4453283fa5acc47d.tar.gz nasm-19f15a50f611bada1fc2445e4453283fa5acc47d.tar.bz2 nasm-19f15a50f611bada1fc2445e4453283fa5acc47d.zip |
BR 2067837: remove double add of VEX instruction length
We added the length of VEX prefixes twice in calcsize(); this resulted
in the wrong symbol addresses when compiling without the optimizer.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'assemble.c')
-rw-r--r-- | assemble.c | 2 |
1 files changed, 0 insertions, 2 deletions
@@ -975,14 +975,12 @@ static int64_t calcsize(int32_t segment, int64_t offset, int bits, case 0261: case 0262: case 0263: - length += 2; ins->rex |= REX_V; ins->drexdst = regval(opx); ins->vex_m = *codes++; ins->vex_wlp = *codes++; break; case 0270: - length += 2; ins->rex |= REX_V; ins->drexdst = 0; ins->vex_m = *codes++; |