From 7ee9260067204b031dacab30be18b49e55a3c928 Mon Sep 17 00:00:00 2001 From: Matt Arsenault Date: Wed, 15 Feb 2017 21:50:34 +0000 Subject: [PATCH] AMDGPU: Replace assert with report_fatal_error Also use a more refined condition. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295239 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp | 3 ++- test/MC/Disassembler/AMDGPU/si-support.txt | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 test/MC/Disassembler/AMDGPU/si-support.txt diff --git a/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp b/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp index 2247cad7bb5..5733b9cace1 100644 --- a/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp +++ b/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp @@ -138,7 +138,8 @@ DecodeStatus AMDGPUDisassembler::getInstruction(MCInst &MI, uint64_t &Size, CommentStream = &CS; // ToDo: AMDGPUDisassembler supports only VI ISA. - assert(AMDGPU::isVI(STI) && "Can disassemble only VI ISA."); + if (!STI.getFeatureBits()[AMDGPU::FeatureGCN3Encoding]) + report_fatal_error("Disassembly not yet supported for subtarget"); const unsigned MaxInstBytesNum = (std::min)((size_t)8, Bytes_.size()); Bytes = Bytes_.slice(0, MaxInstBytesNum); diff --git a/test/MC/Disassembler/AMDGPU/si-support.txt b/test/MC/Disassembler/AMDGPU/si-support.txt new file mode 100644 index 00000000000..f3f5ab946eb --- /dev/null +++ b/test/MC/Disassembler/AMDGPU/si-support.txt @@ -0,0 +1,4 @@ +# RUN: not llvm-mc -arch=amdgcn -mcpu=tahiti -disassemble < %s 2>&1 | FileCheck %s + +# CHECK: LLVM ERROR: Disassembly not yet supported for subtarget +0x00 0x00 0x00 0x7e -- 2.50.1