Mirror of the LuaJIT git repository
Go to file
Hao Sun 12ee94ffad DynASM/arm64: Partially support 'movi' instruction
In the development of PHP JIT/AArch64, `movi d0, #0` is needed to zero
FP registers.

In this patch, we partially support the 64-bit scalar variant of 'movi'
instruction [1].

In this variant, 64-bit immediate value is acceptable with the condition
that each byte is either all zeros or all ones.

Note that the action to handle variables for this 64-bit immediate is
not implemented yet.

Example:
```
  |  movi d0, #0xffff00ffff
  |  movi Rd(reg-ZREG_V0), #0
```

Disassembly:
```
  movi    d0, #0xffff00ffff
  movi    d0, #0x0
```

[1]
https://developer.arm.com/documentation/ddi0602/2020-12/SIMD-FP-Instructions/MOVI--Move-Immediate--vector--?lang=en

Change-Id: I61701fc25b778393b4d1ae1798cd9541f115a351
2021-06-10 01:43:53 +00:00
doc Merge branch 'master' into v2.1 2021-06-07 12:06:02 +02:00
dynasm DynASM/arm64: Partially support 'movi' instruction 2021-06-10 01:43:53 +00:00
etc Merge branch 'master' into v2.1 2021-01-02 21:56:07 +01:00
src String buffers, part 2e: add serialization string dictionary. 2021-06-07 12:03:22 +02:00
.gitignore RELEASE LuaJIT-2.0.0-beta1 2009-12-08 19:46:35 +01:00
COPYRIGHT Bump copyright date. 2021-01-02 21:49:41 +01:00
Makefile Merge branch 'master' into v2.1 2021-01-02 21:56:07 +01:00
README Merge branch 'master' into v2.1 2021-01-02 21:56:07 +01:00

README for LuaJIT 2.1.0-beta3
-----------------------------

LuaJIT is a Just-In-Time (JIT) compiler for the Lua programming language.

Project Homepage: https://luajit.org/

LuaJIT is Copyright (C) 2005-2021 Mike Pall.
LuaJIT is free software, released under the MIT license.
See full Copyright Notice in the COPYRIGHT file or in luajit.h.

Documentation for LuaJIT is available in HTML format.
Please point your favorite browser to:

 doc/luajit.html