From eb760e4cd4dcef7e6ea32c16e720a4c1985e68cc Mon Sep 17 00:00:00 2001 From: Denis Drakhnia Date: Mon, 25 Dec 2023 19:31:20 +0200 Subject: [PATCH] plu: add andp/landp difference tests --- tests/asm/meson.build | 4 ++++ tests/asm/plu/andp-10.S | 21 +++++++++++++++++++++ tests/asm/plu/andp-9.S | 21 +++++++++++++++++++++ 3 files changed, 46 insertions(+) create mode 100644 tests/asm/plu/andp-10.S create mode 100644 tests/asm/plu/andp-9.S diff --git a/tests/asm/meson.build b/tests/asm/meson.build index d48d10a..bc73689 100644 --- a/tests/asm/meson.build +++ b/tests/asm/meson.build @@ -97,6 +97,8 @@ asm_tests = { 'andp-6': { 'should_fail': true }, 'andp-7': { 'should_fail': true }, 'andp-8': { 'should_fail': true }, + 'andp-9': { 'should_fail': true }, + 'andp-10': { 'should_fail': true }, 'landp-1': { 'src': 'andp-1' }, 'landp-2': { 'src': 'andp-2', 'c_args': ['-DOP=landp'] }, 'landp-3': { 'src': 'andp-3', 'c_args': ['-DOP=landp'], 'should_fail': true }, @@ -105,6 +107,8 @@ asm_tests = { 'landp-6': { 'src': 'andp-6', 'c_args': ['-DOP=landp'], 'should_fail': true }, 'landp-7': { 'src': 'andp-7', 'c_args': ['-DOP=landp'], 'should_fail': true }, 'landp-8': { 'src': 'andp-8', 'c_args': ['-DOP=landp'], 'should_fail': true }, + 'landp-9': { 'src': 'andp-9', 'c_args': ['-DOP=landp'] }, + 'landp-10': { 'src': 'andp-10', 'c_args': ['-DOP=landp'], 'should_fail': true }, 'movep-1': {}, 'cascading-1': {}, 'cascading-2': {}, diff --git a/tests/asm/plu/andp-10.S b/tests/asm/plu/andp-10.S new file mode 100644 index 0000000..cfaa582 --- /dev/null +++ b/tests/asm/plu/andp-10.S @@ -0,0 +1,21 @@ +#include "test_start.S" + +#ifndef OP +# define OP andp +#endif + + invalid64 %g16 + { + cmpesb,0,sm %g16, %g16, %pred0 + cmpesb,1 0, 1, %pred1 + cmpesb,3 0, 1, %pred2 + } + { + pass %pred0, @p0 + pass %pred1, @p1 + OP @p0, @p1, @p4 + pass @p4, %pred2 + } + addd,0 0, 0, %empty ? %pred2 + +#include "test_end.S" diff --git a/tests/asm/plu/andp-9.S b/tests/asm/plu/andp-9.S new file mode 100644 index 0000000..7ce7a50 --- /dev/null +++ b/tests/asm/plu/andp-9.S @@ -0,0 +1,21 @@ +#include "test_start.S" + +#ifndef OP +# define OP andp +#endif + + invalid64 %g16 + { + cmpesb,0 0, 1, %pred0 + cmpesb,1,sm %g16, %g16, %pred1 + cmpesb,3 0, 1, %pred2 + } + { + pass %pred0, @p0 + pass %pred1, @p1 + OP @p0, @p1, @p4 + pass @p4, %pred2 + } + addd,0 0, 0, %empty ? %pred2 + +#include "test_end.S"