diff options
| author | Mike Pall <mike> | 2025-12-06 08:42:18 +0100 |
|---|---|---|
| committer | Mike Pall <mike> | 2025-12-06 08:42:18 +0100 |
| commit | c7c74ea505ab9103bd0df8e84da56a895ae60e82 (patch) | |
| tree | 547001e6607e441a6b6f57d73d219252edc848ad /src | |
| parent | b1cd2f83b5d085bb71368b87c91a461be77d4364 (diff) | |
| download | luajit-c7c74ea505ab9103bd0df8e84da56a895ae60e82.tar.gz luajit-c7c74ea505ab9103bd0df8e84da56a895ae60e82.tar.bz2 luajit-c7c74ea505ab9103bd0df8e84da56a895ae60e82.zip | |
ARM64: More fixes for ARM BTI.
Reported by Yuichiro Naito. #1415
Diffstat (limited to 'src')
| -rw-r--r-- | src/vm_arm64.dasc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/vm_arm64.dasc b/src/vm_arm64.dasc index eb6d0c2f..08ecb72c 100644 --- a/src/vm_arm64.dasc +++ b/src/vm_arm64.dasc | |||
| @@ -1696,6 +1696,7 @@ static void build_subroutines(BuildCtx *ctx) | |||
| 1696 | | adr lr, >1 | 1696 | | adr lr, >1 |
| 1697 | | checkint CARG1, ->vm_tobit_fb | 1697 | | checkint CARG1, ->vm_tobit_fb |
| 1698 | |1: | 1698 | |1: |
| 1699 | | bti_jump | ||
| 1699 | |.endmacro | 1700 | |.endmacro |
| 1700 | | | 1701 | | |
| 1701 | |.macro .ffunc_bit_op, name, ins | 1702 | |.macro .ffunc_bit_op, name, ins |
| @@ -1710,6 +1711,7 @@ static void build_subroutines(BuildCtx *ctx) | |||
| 1710 | | bge >9 | 1711 | | bge >9 |
| 1711 | | checkint CARG1, ->vm_tobit_fb | 1712 | | checkint CARG1, ->vm_tobit_fb |
| 1712 | |2: | 1713 | |2: |
| 1714 | | bti_jump | ||
| 1713 | | ins TMP0w, TMP0w, CARG1w | 1715 | | ins TMP0w, TMP0w, CARG1w |
| 1714 | | b <1 | 1716 | | b <1 |
| 1715 | |.endmacro | 1717 | |.endmacro |
| @@ -1742,6 +1744,7 @@ static void build_subroutines(BuildCtx *ctx) | |||
| 1742 | | adr lr, >1 | 1744 | | adr lr, >1 |
| 1743 | | checkint CARG1, ->vm_tobit_fb | 1745 | | checkint CARG1, ->vm_tobit_fb |
| 1744 | |1: | 1746 | |1: |
| 1747 | | bti_jump | ||
| 1745 | |.if shmod == 0 | 1748 | |.if shmod == 0 |
| 1746 | | mov TMP1, CARG1 | 1749 | | mov TMP1, CARG1 |
| 1747 | |.else | 1750 | |.else |
| @@ -1751,6 +1754,7 @@ static void build_subroutines(BuildCtx *ctx) | |||
| 1751 | | adr lr, >2 | 1754 | | adr lr, >2 |
| 1752 | | checkint CARG1, ->vm_tobit_fb | 1755 | | checkint CARG1, ->vm_tobit_fb |
| 1753 | |2: | 1756 | |2: |
| 1757 | | bti_jump | ||
| 1754 | | ins TMP0w, CARG1w, TMP1w | 1758 | | ins TMP0w, CARG1w, TMP1w |
| 1755 | | add_TISNUM CARG1, TMP0 | 1759 | | add_TISNUM CARG1, TMP0 |
| 1756 | | b ->fff_restv | 1760 | | b ->fff_restv |
