<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bwlp/qemu.git/tcg/arm, branch master</title>
<subtitle>Experimental fork of QEMU with video encoding patches</subtitle>
<id>https://git.openslx.org/bwlp/qemu.git/atom/tcg/arm?h=master</id>
<link rel='self' href='https://git.openslx.org/bwlp/qemu.git/atom/tcg/arm?h=master'/>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/'/>
<updated>2022-04-06T08:50:37+00:00</updated>
<entry>
<title>Replace config-time define HOST_WORDS_BIGENDIAN</title>
<updated>2022-04-06T08:50:37+00:00</updated>
<author>
<name>Marc-André Lureau</name>
</author>
<published>2022-03-23T15:57:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=e03b56863d2bca3e649e81531c1b0299524481ae'/>
<id>urn:sha1:e03b56863d2bca3e649e81531c1b0299524481ae</id>
<content type='text'>
Replace a config-time define with a compile time condition
define (compatible with clang and gcc) that must be declared prior to
its usage. This avoids having a global configure time define, but also
prevents from bad usage, if the config header wasn't included before.

This can help to make some code independent from qemu too.

gcc supports __BYTE_ORDER__ from about 4.6 and clang from 3.2.

Signed-off-by: Marc-André Lureau &lt;marcandre.lureau@redhat.com&gt;
[ For the s390x parts I'm involved in ]
Acked-by: Halil Pasic &lt;pasic@linux.ibm.com&gt;
Reviewed-by: Philippe Mathieu-Daudé &lt;f4bug@amsat.org&gt;
Reviewed-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
Message-Id: &lt;20220323155743.1585078-7-marcandre.lureau@redhat.com&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>tcg/arm: Don't emit UNPREDICTABLE LDRD with Rm == Rt or Rt+1</title>
<updated>2022-03-14T17:31:51+00:00</updated>
<author>
<name>Richard Henderson</name>
</author>
<published>2022-03-11T07:38:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=76cff100beeae8d3676bb658cccd45ef5ced8aa9'/>
<id>urn:sha1:76cff100beeae8d3676bb658cccd45ef5ced8aa9</id>
<content type='text'>
The LDRD (register) instruction is UNPREDICTABLE if the Rm register
is the same as either Rt or Rt+1 (the two registers being loaded to).
We weren't making sure we avoided this, with the result that on some
host CPUs like the Cortex-A7 we would get a SIGILL because the CPU
chooses to UNDEF for this particular UNPREDICTABLE case.

Since we've already checked that datalo is aligned, we can simplify
the test vs the Rm operand by aligning it before comparison.  Check
for the two orderings before falling back to two ldr instructions.

We don't bother to do anything similar for tcg_out_ldrd_rwb(),
because it is only used in tcg_out_tlb_read() with a fixed set of
registers which don't overlap.

There is no equivalent UNPREDICTABLE case for STRD.

Reviewed-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/896
Signed-off-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
</content>
</entry>
<entry>
<title>tcg: Add opcodes for vector nand, nor, eqv</title>
<updated>2022-03-04T18:50:41+00:00</updated>
<author>
<name>Richard Henderson</name>
</author>
<published>2021-12-16T19:17:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=ed5234735af0c9ddc120ba2297e47714c5126abd'/>
<id>urn:sha1:ed5234735af0c9ddc120ba2297e47714c5126abd</id>
<content type='text'>
We've had placeholders for these opcodes for a while,
and should have support on ppc, s390x and avx512 hosts.

Tested-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Reviewed-by: Alex Bennée &lt;alex.bennee@linaro.org&gt;
Reviewed-by: Philippe Mathieu-Daudé &lt;f4bug@amsat.org&gt;
Signed-off-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
</content>
</entry>
<entry>
<title>tcg/arm: Support raising sigbus for user-only</title>
<updated>2022-02-08T21:55:02+00:00</updated>
<author>
<name>Richard Henderson</name>
</author>
<published>2021-08-10T05:18:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=0c90fa5dce29243c06841d7b07ff2bd97c27c1f4'/>
<id>urn:sha1:0c90fa5dce29243c06841d7b07ff2bd97c27c1f4</id>
<content type='text'>
Reviewed-by: Peter Maydell &lt;peter.maydell@linaro.org&gt;
Signed-off-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
</content>
</entry>
<entry>
<title>tcg/arm: Reserve a register for guest_base</title>
<updated>2022-02-08T21:55:02+00:00</updated>
<author>
<name>Richard Henderson</name>
</author>
<published>2021-08-10T03:44:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=4bb802073f212b5a7e7cffcd4456484932911b91'/>
<id>urn:sha1:4bb802073f212b5a7e7cffcd4456484932911b91</id>
<content type='text'>
Reserve a register for the guest_base using aarch64 for reference.
By doing so, we do not have to recompute it for every memory load.

Reviewed-by: Peter Maydell &lt;peter.maydell@linaro.org&gt;
Signed-off-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
</content>
</entry>
<entry>
<title>tcg/arm: Support unaligned access for softmmu</title>
<updated>2022-02-08T21:55:02+00:00</updated>
<author>
<name>Richard Henderson</name>
</author>
<published>2021-08-08T04:19:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=8821ec2323dd8793d840fd455c5e20e144bddc9b'/>
<id>urn:sha1:8821ec2323dd8793d840fd455c5e20e144bddc9b</id>
<content type='text'>
From armv6, the architecture supports unaligned accesses.
All we need to do is perform the correct alignment check
in tcg_out_tlb_read.

Reviewed-by: Peter Maydell &lt;peter.maydell@linaro.org&gt;
Signed-off-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
</content>
</entry>
<entry>
<title>tcg/arm: Check alignment for ldrd and strd</title>
<updated>2022-02-08T21:55:02+00:00</updated>
<author>
<name>Richard Henderson</name>
</author>
<published>2022-01-03T05:26:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=367d43d85b8a0f6262125ccbad8720d02416265e'/>
<id>urn:sha1:367d43d85b8a0f6262125ccbad8720d02416265e</id>
<content type='text'>
We will shortly allow the use of unaligned memory accesses,
and these require proper alignment.  Use get_alignment_bits
to verify and remove USING_SOFTMMU.

Reviewed-by: Peter Maydell &lt;peter.maydell@linaro.org&gt;
Signed-off-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
</content>
</entry>
<entry>
<title>tcg/arm: Remove use_armv6_instructions</title>
<updated>2022-02-08T21:55:02+00:00</updated>
<author>
<name>Richard Henderson</name>
</author>
<published>2022-01-03T04:54:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=bde2cdb59bcd3b0965a80597e72c835fcf5ef7f4'/>
<id>urn:sha1:bde2cdb59bcd3b0965a80597e72c835fcf5ef7f4</id>
<content type='text'>
This is now always true, since we require armv6.

Reviewed-by: Peter Maydell &lt;peter.maydell@linaro.org&gt;
Signed-off-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
</content>
</entry>
<entry>
<title>tcg/arm: Remove use_armv5t_instructions</title>
<updated>2022-02-08T21:55:02+00:00</updated>
<author>
<name>Richard Henderson</name>
</author>
<published>2022-01-03T02:30:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=6cef13940cc57124bdef9dffbf03f25784f7a51c'/>
<id>urn:sha1:6cef13940cc57124bdef9dffbf03f25784f7a51c</id>
<content type='text'>
This is now always true, since we require armv6.

Reviewed-by: Peter Maydell &lt;peter.maydell@linaro.org&gt;
Signed-off-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
</content>
</entry>
<entry>
<title>tcg/arm: Drop support for armv4 and armv5 hosts</title>
<updated>2022-02-08T21:55:02+00:00</updated>
<author>
<name>Richard Henderson</name>
</author>
<published>2022-01-03T01:42:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=01dfc0ed7f2c5f8dbab65f31228a2888c7b85a07'/>
<id>urn:sha1:01dfc0ed7f2c5f8dbab65f31228a2888c7b85a07</id>
<content type='text'>
Support for unaligned accesses is difficult for pre-v6 hosts.
While debian still builds for armv4, we cannot use a compile
time test, so test the architecture at runtime and error out.

Reviewed-by: Peter Maydell &lt;peter.maydell@linaro.org&gt;
Signed-off-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
</content>
</entry>
</feed>
