aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorLasse Collin <lasse.collin@tukaani.org>2022-12-11 21:16:09 +0200
committerLasse Collin <lasse.collin@tukaani.org>2022-12-11 21:16:09 +0200
commitb42908c42a4cc091db45a7e5ba0e0ecceaa3f6da (patch)
treef1f09eff30afbd5bc1035ea9854b02ed7380e4a8 /doc
parentxz: Rename --experimental-arm64 to --arm64. (diff)
downloadxz-b42908c42a4cc091db45a7e5ba0e0ecceaa3f6da.tar.xz
Docs: Update xz-file-format.txt to 1.1.0 for ARM64 filter.
Diffstat (limited to 'doc')
-rw-r--r--doc/xz-file-format.txt29
1 files changed, 22 insertions, 7 deletions
diff --git a/doc/xz-file-format.txt b/doc/xz-file-format.txt
index 4ed66506..09c83e0c 100644
--- a/doc/xz-file-format.txt
+++ b/doc/xz-file-format.txt
@@ -2,7 +2,7 @@
The .xz File Format
===================
-Version 1.0.4 (2009-08-27)
+Version 1.1.0 (2022-12-11)
0. Preface
@@ -93,6 +93,10 @@ Version 1.0.4 (2009-08-27)
Version Date Description
+ 1.1.0 2022-12-11 Added ARM64 filter and clarified 32-bit
+ ARM endianness in Section 5.3.2,
+ language improvements in Section 5.4
+
1.0.4 2009-08-27 Language improvements in Sections 1.2,
2.1.1.2, 3.1.1, 3.1.2, and 5.3.1
@@ -915,9 +919,20 @@ Version 1.0.4 (2009-08-27)
0x04 1 byte x86 filter (BCJ)
0x05 4 bytes PowerPC (big endian) filter
0x06 16 bytes IA64 filter
- 0x07 4 bytes ARM (little endian) filter
- 0x08 2 bytes ARM Thumb (little endian) filter
+ 0x07 4 bytes ARM filter [1]
+ 0x08 2 bytes ARM Thumb filter [1]
0x09 4 bytes SPARC filter
+ 0x0A 4 bytes ARM64 filter [2]
+
+ [1] These are for little endian instruction encoding.
+ This must not be confused with data endianness.
+ A processor configured for big endian data access
+ may still use little endian instruction encoding.
+ The filters don't care about the data endianness.
+
+ [2] 4096-byte alignment gives the best results
+ because the address in the ADRP instruction
+ is a multiple of 4096 bytes.
If the size of Filter Properties is four bytes, the Filter
Properties field contains the start offset used for address
@@ -987,12 +1002,12 @@ Version 1.0.4 (2009-08-27)
5.4. Custom Filter IDs
- If a developer wants to use custom Filter IDs, he has two
+ If a developer wants to use custom Filter IDs, there are two
choices. The first choice is to contact Lasse Collin and ask
him to allocate a range of IDs for the developer.
- The second choice is to generate a 40-bit random integer,
- which the developer can use as his personal Developer ID.
+ The second choice is to generate a 40-bit random integer
+ which the developer can use as a personal Developer ID.
To minimize the risk of collisions, Developer ID has to be
a randomly generated integer, not manually selected "hex word".
The following command, which works on many free operating
@@ -1000,7 +1015,7 @@ Version 1.0.4 (2009-08-27)
dd if=/dev/urandom bs=5 count=1 | hexdump
- The developer can then use his Developer ID to create unique
+ The developer can then use the Developer ID to create unique
(well, hopefully unique) Filter IDs.
Bits Mask Description