- This patch adds in the GOFFMCAsmInfo interfaces for the z/OS target. - This patch decouples the previously existing SystemZMCAsmInfo interface for the ELF target and the z/OS target. - This patch also removes a small test in the SystemZAsmLexerTest.cpp. The reason for this is because, the test is set up for the s390x-ibm-linux (SystemZ ELF triple), and the test checks a function which is overridden only for the z/OS target. The reason we can't change the test to use a z/OS triple outright is because there is still missing support which prevents the successful running of a test (assert in AsmParser.cpp due to missing GOFFAsmParser support) Reviewed By: uweigand, abhina.sreeskantharajan Differential Revision: https://reviews.llvm.org/D110077
34 lines
996 B
C++
34 lines
996 B
C++
//====-- SystemZMCAsmInfo.h - SystemZ asm properties -----------*- C++ -*--===//
|
|
//
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef LLVM_LIB_TARGET_SYSTEMZ_MCTARGETDESC_SYSTEMZMCASMINFO_H
|
|
#define LLVM_LIB_TARGET_SYSTEMZ_MCTARGETDESC_SYSTEMZMCASMINFO_H
|
|
|
|
#include "llvm/MC/MCAsmInfoELF.h"
|
|
#include "llvm/MC/MCAsmInfoGOFF.h"
|
|
#include "llvm/Support/Compiler.h"
|
|
|
|
namespace llvm {
|
|
class Triple;
|
|
enum SystemZAsmDialect { AD_ATT = 0, AD_HLASM = 1 };
|
|
|
|
class SystemZMCAsmInfoELF : public MCAsmInfoELF {
|
|
public:
|
|
explicit SystemZMCAsmInfoELF(const Triple &TT);
|
|
};
|
|
|
|
class SystemZMCAsmInfoGOFF : public MCAsmInfoGOFF {
|
|
public:
|
|
explicit SystemZMCAsmInfoGOFF(const Triple &TT);
|
|
bool isAcceptableChar(char C) const override;
|
|
};
|
|
|
|
} // end namespace llvm
|
|
|
|
#endif
|