diff options
author | Ulf Hermann <ulf.hermann@qt.io> | 2021-06-16 13:49:17 +0200 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@qt.io> | 2021-06-17 09:02:08 +0200 |
commit | 636481a31110f1819efaf6500b25fbc395854311 (patch) | |
tree | 439fbb3790833c90629d78db80e9157f2d9ad4c8 /src/3rdparty | |
parent | 733bb4366e6a59dcfd7be0b33e1ac885eb76e13c (diff) |
Avoid undefined behavior in the JIT
We need to add an entry to all the RegisterID enums, so that we can mark
a RegisterID as invalid.
Pick-to: 6.2
Task-number: QTBUG-94068
Change-Id: I5c13b271eade50fd63327612514ba7ebe33a5c39
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Diffstat (limited to 'src/3rdparty')
-rw-r--r-- | src/3rdparty/masm/assembler/ARM64Assembler.h | 1 | ||||
-rw-r--r-- | src/3rdparty/masm/assembler/ARMv7Assembler.h | 1 | ||||
-rw-r--r-- | src/3rdparty/masm/assembler/MIPSAssembler.h | 3 | ||||
-rw-r--r-- | src/3rdparty/masm/assembler/X86Assembler.h | 1 |
4 files changed, 5 insertions, 1 deletions
diff --git a/src/3rdparty/masm/assembler/ARM64Assembler.h b/src/3rdparty/masm/assembler/ARM64Assembler.h index a856196fe6..1431df50c8 100644 --- a/src/3rdparty/masm/assembler/ARM64Assembler.h +++ b/src/3rdparty/masm/assembler/ARM64Assembler.h @@ -517,6 +517,7 @@ typedef enum { x29 = fp, x30 = lr, zr = 0x3f, + none = 0xff, } RegisterID; typedef enum { diff --git a/src/3rdparty/masm/assembler/ARMv7Assembler.h b/src/3rdparty/masm/assembler/ARMv7Assembler.h index 03cb9f42f8..330b6c3629 100644 --- a/src/3rdparty/masm/assembler/ARMv7Assembler.h +++ b/src/3rdparty/masm/assembler/ARMv7Assembler.h @@ -64,6 +64,7 @@ namespace ARMRegisters { r13, sp = r13, r14, lr = r14, r15, pc = r15, + none = 0xff, } RegisterID; typedef enum { diff --git a/src/3rdparty/masm/assembler/MIPSAssembler.h b/src/3rdparty/masm/assembler/MIPSAssembler.h index 7f553bb9a1..0419ea0504 100644 --- a/src/3rdparty/masm/assembler/MIPSAssembler.h +++ b/src/3rdparty/masm/assembler/MIPSAssembler.h @@ -105,7 +105,8 @@ typedef enum { gp = r28, sp = r29, fp = r30, - ra = r31 + ra = r31, + none = 0xff, } RegisterID; typedef enum { diff --git a/src/3rdparty/masm/assembler/X86Assembler.h b/src/3rdparty/masm/assembler/X86Assembler.h index e8ae687036..1061021227 100644 --- a/src/3rdparty/masm/assembler/X86Assembler.h +++ b/src/3rdparty/masm/assembler/X86Assembler.h @@ -62,6 +62,7 @@ namespace X86Registers { r14, r15, #endif + none = 0xff, } RegisterID; typedef enum { |