aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Godbolt <matt@godbolt.org>2022-04-26 13:32:42 -0500
committerGitHub <noreply@github.com>2022-04-26 13:32:42 -0500
commit09df855cdb6e58635d6f8678a6142fc0563d343c (patch)
treec9ee769a2de3162ab1bb0a2b38bf46a26fa0de85
parentcfbabc9212fb36eeaa849eaac5cc6d20e6daaa53 (diff)
downloadcompiler-explorer-gh-2567.tar.gz
compiler-explorer-gh-2567.zip
Handle missing asm information (#3569)gh-2567
-rw-r--r--lib/asm-docs/arm32.ts12
1 files changed, 8 insertions, 4 deletions
diff --git a/lib/asm-docs/arm32.ts b/lib/asm-docs/arm32.ts
index bc89cacd1..5d009527d 100644
--- a/lib/asm-docs/arm32.ts
+++ b/lib/asm-docs/arm32.ts
@@ -22,12 +22,15 @@
// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
// POSSIBILITY OF SUCH DAMAGE.
-import { AssemblyInstructionInfo, BaseAssemblyDocumentationProvider } from './base';
-import { getAsmOpcode } from './generated/asm-docs-arm32';
+import {AssemblyInstructionInfo, BaseAssemblyDocumentationProvider} from './base';
+import {getAsmOpcode} from './generated/asm-docs-arm32';
export class Arm32DocumentationProvider extends BaseAssemblyDocumentationProvider {
- private static readonly CONDITIONAL_INSTRUCTION_REGEXP = /^([A-Za-z]+?)(EQ|NE|CS|CC|MI|PL|VS|VC|HI|LS|GE|LT|GT|LE|AL)$/;
- public static get key() { return 'arm32'; }
+ private static readonly CONDITIONAL_INSTRUCTION_REGEXP =
+ /^([A-Za-z]+?)(EQ|NE|CS|CC|MI|PL|VS|VC|HI|LS|GE|LT|GT|LE|AL)$/;
+ public static get key() {
+ return 'arm32';
+ }
public override getInstructionInformation(instruction: string): AssemblyInstructionInfo | null {
const info = getAsmOpcode(instruction) || Arm32DocumentationProvider.getConditionalOpcode(instruction);
return info || null;
@@ -58,6 +61,7 @@ export class Arm32DocumentationProvider extends BaseAssemblyDocumentationProvide
return null;
}
const information = getAsmOpcode(isConditionalOpcode[1]);
+ if (!information) return null;
const text = Arm32DocumentationProvider.CONDITIONAL_OPCODE_TAGS[isConditionalOpcode[2]] || '';
return {
...information,