History log of /external/vixl/test/test-code-generation-scopes.cc
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
1bce007699e07bd855b7d194ca93fa5504a73eda 06-Jun-2017 Pierre Langlois <pierre.langlois@arm.com> Use clang-format 3.8 to format VIXL

Additionally, this version of clang-format orders include directives
alphabetically which showed that the "non-const-visitor.h" header was missing
two of them.

Change-Id: Ib03407dd2046a0bb7175370685e09fb3aebe583f
/external/vixl/test/test-code-generation-scopes.cc
8b57c86886020cf0a5331823be4789ee558764e2 02-Mar-2017 Georgia Kouveli <georgia.kouveli@arm.com> [pool-manager] Integration with aarch32.

Key points of this patch:
- renames LabelBase to LocationBase
- makes the Location class derive from LoctionBase
- moves the code for Location, Label and RawLiteral/Literal to a shared file
- moves ReferenceInfo out of Assembler
- removes all the old veneer pool and literal pool code
- updates the macro assembler to use the new pool manager
- updates existing tests that expect a certain behaviour from the pool manager
- adds new tests for corner cases that came up during integration
- adds tests for issues that the new pool manager addresses (literal_and_veneer_interaction_*)

Change-Id: Ied81401d40f88cb988ff95e85fe832851f171f77
/external/vixl/test/test-code-generation-scopes.cc
45262d6ba1f736aaebfa6f7ef50a3e83cd4e5e70 12-Jan-2017 Pierre Langlois <pierre.langlois@arm.com> Make ExactAssemblyScope::Close() not call its parent

`ExactAssemblyScope` was missing its own `Close` method, meaning that
the parent was called. And as a result, manually closing the scope was
not working.

Change-Id: I8375b1f17fffafb8bc8cb9f1598fa746cbb54b24
/external/vixl/test/test-code-generation-scopes.cc
bde2e4b5ce376456d50a972b6f3aaee3475f8786 24-Jan-2017 Pierre Langlois <pierre.langlois@arm.com> Enable clang-format in the tests

Extend the clang_format.py script to format everything by trace files in
the `test/` directory. Also, we have to add "on/off" marker in
`test-simualtor-inputs-aarch64.h` as clang-format is getting confused
there.

Change-Id: I1159498072bda1bfd049082aeccb347ec55e7825
/external/vixl/test/test-code-generation-scopes.cc
fb37b5d8438252728469290fa35a779817faea00 18-Jan-2017 Pierre Langlois <pierre.langlois@arm.com> Add tests for pool blocking in nested ExactAssemblyScope

On top of adding tests, this patch adds a new top-level
MacroAssembler::ArePoolsBlocked() API method. This is useful for testing
that the pools are actually blocked or not, and that nesting does not
accidentally unblock them.

Change-Id: If3845c6686ef45ddf1d28b8876ffd349731cdd9d
/external/vixl/test/test-code-generation-scopes.cc
9a9331faeba996d6c85e6e2a6355ccfc22c6cab6 09-Dec-2016 Rodolph Perfetta <rodolph.perfetta@arm.com> Allow conditional inclusion of A32, T32 and A64.

The 'target_arch' option has been replace by 'target' which can be any
combination of aarch32, aarch64, a32, t32, a64.

Change-Id: Id5cd052276747cd718551f562b74f79443b91869
/external/vixl/test/test-code-generation-scopes.cc
0cc43be9ba1881f608a25467b1387927af3b4caa 22-Dec-2016 Pierre Langlois <pierre.langlois@arm.com> Revert "[aarch32] Dot not abort when one uses unpredictable or strongly discouraged instructions"

This reverts commit d836966fcbe0ec3136486ec36de6bd2572d451eb.

Change-Id: I3e8b0ea9bc43594ab3ad569e54f78e00593dfea8
/external/vixl/test/test-code-generation-scopes.cc
d836966fcbe0ec3136486ec36de6bd2572d451eb 19-Dec-2016 Pierre Langlois <pierre.langlois@arm.com> [aarch32] Dot not abort when one uses unpredictable or strongly discouraged instructions

Calling VIXL_ABORT when a MacroAssembler object would call
AllowUnpredictable or AllowStronglyDiscouraged would prevent us from
handling those cases in delegates. It should be up to a delegate to
decide whether to give the user an error or generate an alternative code
sequence.

Additionally, the user is able (but that's not recommended of course) to
lift the UNPREDICTABLE or STRONGLY DISCOURAGED limitation using
scopes. Since the AllowUnpredictable() and AllowStronglyDiscouraged()
methods were virtual and overriden by the macro-assembler to
abort. There was no way to write the following code:

```c++
MacroAssembler masm(T32);
{
ExactAssemblyScope scope(&masm, ...);
AllowUnpredictableScope allow_unpredictable(&masm);
// Here be dragons!
}
```

This patch fixes this by turning AllowUnpredictable() and
AllowStronglyDiscouraged() into non-virtual methods.

Finally, the related scopes were inside the `aarch32::Assembler::`
namespace, which is inconsistent with other scopes. Move it to
`aarch32`.

Change-Id: I42e5b772e850a8c23521385cf399aaae77b5eab6
/external/vixl/test/test-code-generation-scopes.cc
1661f51a172e7c3dcce6caca55b6fe6d10ebd416 31-Oct-2016 Alexandre Rames <alexandre.rames@linaro.org> AArch32: Use the shared code generation scope `ExactAssemblyScope`.

This patch finishes the transition to shared code generation scopes
for the AArch32 backend.

Change-Id: Iccbdb5de48b41803408410a01307afabe30a7fee
/external/vixl/test/test-code-generation-scopes.cc
8d191abf32edf41421f68f35585e4fce8da4d50c 29-Nov-2016 Alexandre Rames <alexandre.rames@linaro.org> AArch32: Use the shared scopes `CodeBufferCheckScope` and `EmissionCheckScope`.

This patch continues toward the goal of unifying code-generation scopes for all
backends.

The new scopes differ from the existing AArch32 mechanisms, so a few tests for
literal and veneer pools needed to be updated.

The patch also adds AArch32 tests for the new scopes.

Change-Id: Ia6a93e6e860b47e703b6c9034fefa405810c18a0
/external/vixl/test/test-code-generation-scopes.cc
07d1aa5b941ace15deb01e5df2c79e677039c4ae 25-Oct-2016 Alexandre Rames <alexandre.rames@linaro.org> AArch64: follow the design guidelines for `ExactAssemblyScope`.

Change-Id: I5b942e033681c69f5e6cac3a669b3b3ebacbf1f8
/external/vixl/test/test-code-generation-scopes.cc
586c6b98fb8159e0a77d0c3d425551eaddc7adcd 24-Oct-2016 Alexandre Rames <alexandre.rames@linaro.org> Fix compilation of the tests for scopes when targetting aarch32 only.

Change-Id: Ia62f3529e62aae31452087df734ba051ed86dace
/external/vixl/test/test-code-generation-scopes.cc
c0b25f28106fbbbf8880e0b259de1a639ea1e73f 19-Oct-2016 Alexandre Rames <alexandre.rames@linaro.org> Follow the design guidelines for the AArch64 `EmissionCheckScope`.

It uses a newly defined `MacroAssemblerInterface` class.

Change-Id: I10ba663ec047d1ea320610bc2d5565de24d9686b
/external/vixl/test/test-code-generation-scopes.cc
9dd6fa37dbb79f62177aebd04d7e945ce1dc3108 12-Oct-2016 Alexandre Rames <alexandre.rames@linaro.org> Follow the design guidelines for the AArch64 `CodeBufferCheckScope`.

The implementation of the scopes relies only on the `AssemblerBase` interface.
The AArch32 scopes will be updated in a separate commit.

Change-Id: Ibe0eab35f60da39fe0bcbd60a16bdc65b12e0dd5
/external/vixl/test/test-code-generation-scopes.cc