diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2012-08-24 22:46:53 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2012-08-24 22:46:53 +0000 |
commit | 4ad27eda29413d45a98912877ab2706efbc1e86e (patch) | |
tree | 00cdc3e1b2b10a39826eb59f63bfd08462fb5a35 /test/CodeGen/Hexagon | |
parent | 7778ee1ed9f9e8a3aa4911ff4adcf15e46588e03 (diff) |
Infer instruction properties from single-instruction patterns.
Previously, instructions without a primary patterns wouldn't get their
properties inferred. Now, we use all single-instruction patterns for
inference, including 'def : Pat<>' instances.
This causes a lot of instruction flags to change.
- Many instructions no longer have the UnmodeledSideEffects flag because
their flags are now inferred from a pattern.
- Instructions with intrinsics will get a mayStore flag if they already
have UnmodeledSideEffects and a mayLoad flag if they already have
mayStore. This is because intrinsics properties are linear.
- Instructions with atomic_load patterns get a mayStore flag because
atomic loads can't be reordered. The correct workaround is to create
pseudo-instructions instead of using normal loads. PR13693.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162614 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/Hexagon')
-rw-r--r-- | test/CodeGen/Hexagon/newvaluejump.ll | 3 | ||||
-rw-r--r-- | test/CodeGen/Hexagon/newvaluestore.ll | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/test/CodeGen/Hexagon/newvaluejump.ll b/test/CodeGen/Hexagon/newvaluejump.ll index 9c7ca55cb8..03d36de295 100644 --- a/test/CodeGen/Hexagon/newvaluejump.ll +++ b/test/CodeGen/Hexagon/newvaluejump.ll @@ -1,4 +1,7 @@ ; RUN: llc -march=hexagon -mcpu=hexagonv4 < %s | FileCheck %s +; XFAIL: * +; This is xfailed into we have atomic load pseudos. PR13693. + ; Check that we generate new value jump. @i = global i32 0, align 4 diff --git a/test/CodeGen/Hexagon/newvaluestore.ll b/test/CodeGen/Hexagon/newvaluestore.ll index ab69b22df5..a876a94967 100644 --- a/test/CodeGen/Hexagon/newvaluestore.ll +++ b/test/CodeGen/Hexagon/newvaluestore.ll @@ -1,4 +1,7 @@ ; RUN: llc -march=hexagon -mcpu=hexagonv4 < %s | FileCheck %s +; XFAIL: * +; This is xfailed into we have atomic load pseudos. PR13693. + ; Check that we generate new value store packet in V4 @i = global i32 0, align 4 |