mirror of
https://github.com/Gericom/teak-llvm.git
synced 2025-06-19 03:25:54 -04:00

Fixed invalid mpy instruction being generated Fixed byte order of 32 bit values when emitted to the elf file Support for addv/subv to modify 16 bit registers directly Support for move 8bit immediate Support for tst0 instruction Support for directly adding p0 to an ab register after mpy Support for 8 bit immediate multiply Support for modr instruction Support for post increase/decrement for loads and stores Use copy instruction for a to a register moves
25 lines
749 B
C++
25 lines
749 B
C++
#pragma once
|
|
|
|
#include "llvm/MC/MCELFStreamer.h"
|
|
#include <memory>
|
|
|
|
namespace llvm
|
|
{
|
|
class MCAsmBackend;
|
|
class MCCodeEmitter;
|
|
class MCContext;
|
|
class MCSubtargetInfo;
|
|
class MCObjectWriter;
|
|
|
|
class TeakELFStreamer : public MCELFStreamer
|
|
{
|
|
public:
|
|
TeakELFStreamer(MCContext &Context, std::unique_ptr<MCAsmBackend> MAB,
|
|
std::unique_ptr<MCObjectWriter> OW, std::unique_ptr<MCCodeEmitter> Emitter);
|
|
|
|
void EmitIntValue(uint64_t Value, unsigned Size) override;
|
|
};
|
|
|
|
MCELFStreamer* createTeakELFStreamer(MCContext &Context, std::unique_ptr<MCAsmBackend> MAB,
|
|
std::unique_ptr<MCObjectWriter> OW, std::unique_ptr<MCCodeEmitter> Emitter, bool RelaxAll);
|
|
} |