[AVR] Make helper functions static. NFC.

This commit is contained in:
Benjamin Kramer 2020-03-15 16:50:15 +01:00
parent 5087ace651
commit caef4a81c9
1 changed files with 34 additions and 34 deletions

View File

@ -34,8 +34,9 @@ namespace adjust {
using namespace llvm; using namespace llvm;
void signed_width(unsigned Width, uint64_t Value, std::string Description, static void signed_width(unsigned Width, uint64_t Value,
const MCFixup &Fixup, MCContext *Ctx = nullptr) { std::string Description, const MCFixup &Fixup,
MCContext *Ctx = nullptr) {
if (!isIntN(Width, Value)) { if (!isIntN(Width, Value)) {
std::string Diagnostic = "out of range " + Description; std::string Diagnostic = "out of range " + Description;
@ -53,8 +54,9 @@ void signed_width(unsigned Width, uint64_t Value, std::string Description,
} }
} }
void unsigned_width(unsigned Width, uint64_t Value, std::string Description, static void unsigned_width(unsigned Width, uint64_t Value,
const MCFixup &Fixup, MCContext *Ctx = nullptr) { std::string Description, const MCFixup &Fixup,
MCContext *Ctx = nullptr) {
if (!isUIntN(Width, Value)) { if (!isUIntN(Width, Value)) {
std::string Diagnostic = "out of range " + Description; std::string Diagnostic = "out of range " + Description;
@ -72,7 +74,7 @@ void unsigned_width(unsigned Width, uint64_t Value, std::string Description,
} }
/// Adjusts the value of a branch target before fixup application. /// Adjusts the value of a branch target before fixup application.
void adjustBranch(unsigned Size, const MCFixup &Fixup, uint64_t &Value, static void adjustBranch(unsigned Size, const MCFixup &Fixup, uint64_t &Value,
MCContext *Ctx = nullptr) { MCContext *Ctx = nullptr) {
// We have one extra bit of precision because the value is rightshifted by // We have one extra bit of precision because the value is rightshifted by
// one. // one.
@ -83,8 +85,8 @@ void adjustBranch(unsigned Size, const MCFixup &Fixup, uint64_t &Value,
} }
/// Adjusts the value of a relative branch target before fixup application. /// Adjusts the value of a relative branch target before fixup application.
void adjustRelativeBranch(unsigned Size, const MCFixup &Fixup, uint64_t &Value, static void adjustRelativeBranch(unsigned Size, const MCFixup &Fixup,
MCContext *Ctx = nullptr) { uint64_t &Value, MCContext *Ctx = nullptr) {
// We have one extra bit of precision because the value is rightshifted by // We have one extra bit of precision because the value is rightshifted by
// one. // one.
signed_width(Size + 1, Value, std::string("branch target"), Fixup, Ctx); signed_width(Size + 1, Value, std::string("branch target"), Fixup, Ctx);
@ -101,7 +103,7 @@ void adjustRelativeBranch(unsigned Size, const MCFixup &Fixup, uint64_t &Value,
/// 1001 kkkk 010k kkkk kkkk kkkk 111k kkkk /// 1001 kkkk 010k kkkk kkkk kkkk 111k kkkk
/// ///
/// Offset of 0 (so the result is left shifted by 3 bits before application). /// Offset of 0 (so the result is left shifted by 3 bits before application).
void fixup_call(unsigned Size, const MCFixup &Fixup, uint64_t &Value, static void fixup_call(unsigned Size, const MCFixup &Fixup, uint64_t &Value,
MCContext *Ctx = nullptr) { MCContext *Ctx = nullptr) {
adjustBranch(Size, Fixup, Value, Ctx); adjustBranch(Size, Fixup, Value, Ctx);
@ -117,7 +119,7 @@ void fixup_call(unsigned Size, const MCFixup &Fixup, uint64_t &Value,
/// Resolves to: /// Resolves to:
/// 0000 00kk kkkk k000 /// 0000 00kk kkkk k000
/// Offset of 0 (so the result is left shifted by 3 bits before application). /// Offset of 0 (so the result is left shifted by 3 bits before application).
void fixup_7_pcrel(unsigned Size, const MCFixup &Fixup, uint64_t &Value, static void fixup_7_pcrel(unsigned Size, const MCFixup &Fixup, uint64_t &Value,
MCContext *Ctx = nullptr) { MCContext *Ctx = nullptr) {
adjustRelativeBranch(Size, Fixup, Value, Ctx); adjustRelativeBranch(Size, Fixup, Value, Ctx);
@ -131,7 +133,7 @@ void fixup_7_pcrel(unsigned Size, const MCFixup &Fixup, uint64_t &Value,
/// Resolves to: /// Resolves to:
/// 0000 kkkk kkkk kkkk /// 0000 kkkk kkkk kkkk
/// Offset of 0 (so the result isn't left-shifted before application). /// Offset of 0 (so the result isn't left-shifted before application).
void fixup_13_pcrel(unsigned Size, const MCFixup &Fixup, uint64_t &Value, static void fixup_13_pcrel(unsigned Size, const MCFixup &Fixup, uint64_t &Value,
MCContext *Ctx = nullptr) { MCContext *Ctx = nullptr) {
adjustRelativeBranch(Size, Fixup, Value, Ctx); adjustRelativeBranch(Size, Fixup, Value, Ctx);
@ -144,7 +146,7 @@ void fixup_13_pcrel(unsigned Size, const MCFixup &Fixup, uint64_t &Value,
/// ///
/// Resolves to: /// Resolves to:
/// 0000 0000 kk00 kkkk /// 0000 0000 kk00 kkkk
void fixup_6_adiw(const MCFixup &Fixup, uint64_t &Value, static void fixup_6_adiw(const MCFixup &Fixup, uint64_t &Value,
MCContext *Ctx = nullptr) { MCContext *Ctx = nullptr) {
unsigned_width(6, Value, std::string("immediate"), Fixup, Ctx); unsigned_width(6, Value, std::string("immediate"), Fixup, Ctx);
@ -155,7 +157,7 @@ void fixup_6_adiw(const MCFixup &Fixup, uint64_t &Value,
/// ///
/// Resolves to: /// Resolves to:
/// 0000 0000 AAAA A000 /// 0000 0000 AAAA A000
void fixup_port5(const MCFixup &Fixup, uint64_t &Value, static void fixup_port5(const MCFixup &Fixup, uint64_t &Value,
MCContext *Ctx = nullptr) { MCContext *Ctx = nullptr) {
unsigned_width(5, Value, std::string("port number"), Fixup, Ctx); unsigned_width(5, Value, std::string("port number"), Fixup, Ctx);
@ -168,7 +170,7 @@ void fixup_port5(const MCFixup &Fixup, uint64_t &Value,
/// ///
/// Resolves to: /// Resolves to:
/// 1011 0AAd dddd AAAA /// 1011 0AAd dddd AAAA
void fixup_port6(const MCFixup &Fixup, uint64_t &Value, static void fixup_port6(const MCFixup &Fixup, uint64_t &Value,
MCContext *Ctx = nullptr) { MCContext *Ctx = nullptr) {
unsigned_width(6, Value, std::string("port number"), Fixup, Ctx); unsigned_width(6, Value, std::string("port number"), Fixup, Ctx);
@ -177,9 +179,7 @@ void fixup_port6(const MCFixup &Fixup, uint64_t &Value,
/// Adjusts a program memory address. /// Adjusts a program memory address.
/// This is a simple right-shift. /// This is a simple right-shift.
void pm(uint64_t &Value) { static void pm(uint64_t &Value) { Value >>= 1; }
Value >>= 1;
}
/// Fixups relating to the LDI instruction. /// Fixups relating to the LDI instruction.
namespace ldi { namespace ldi {
@ -189,7 +189,7 @@ namespace ldi {
/// Resolves to: /// Resolves to:
/// 0000 KKKK 0000 KKKK /// 0000 KKKK 0000 KKKK
/// Offset of 0 (so the result isn't left-shifted before application). /// Offset of 0 (so the result isn't left-shifted before application).
void fixup(unsigned Size, const MCFixup &Fixup, uint64_t &Value, static void fixup(unsigned Size, const MCFixup &Fixup, uint64_t &Value,
MCContext *Ctx = nullptr) { MCContext *Ctx = nullptr) {
uint64_t upper = Value & 0xf0; uint64_t upper = Value & 0xf0;
uint64_t lower = Value & 0x0f; uint64_t lower = Value & 0x0f;
@ -197,27 +197,27 @@ void fixup(unsigned Size, const MCFixup &Fixup, uint64_t &Value,
Value = (upper << 4) | lower; Value = (upper << 4) | lower;
} }
void neg(uint64_t &Value) { Value *= -1; } static void neg(uint64_t &Value) { Value *= -1; }
void lo8(unsigned Size, const MCFixup &Fixup, uint64_t &Value, static void lo8(unsigned Size, const MCFixup &Fixup, uint64_t &Value,
MCContext *Ctx = nullptr) { MCContext *Ctx = nullptr) {
Value &= 0xff; Value &= 0xff;
ldi::fixup(Size, Fixup, Value, Ctx); ldi::fixup(Size, Fixup, Value, Ctx);
} }
void hi8(unsigned Size, const MCFixup &Fixup, uint64_t &Value, static void hi8(unsigned Size, const MCFixup &Fixup, uint64_t &Value,
MCContext *Ctx = nullptr) { MCContext *Ctx = nullptr) {
Value = (Value & 0xff00) >> 8; Value = (Value & 0xff00) >> 8;
ldi::fixup(Size, Fixup, Value, Ctx); ldi::fixup(Size, Fixup, Value, Ctx);
} }
void hh8(unsigned Size, const MCFixup &Fixup, uint64_t &Value, static void hh8(unsigned Size, const MCFixup &Fixup, uint64_t &Value,
MCContext *Ctx = nullptr) { MCContext *Ctx = nullptr) {
Value = (Value & 0xff0000) >> 16; Value = (Value & 0xff0000) >> 16;
ldi::fixup(Size, Fixup, Value, Ctx); ldi::fixup(Size, Fixup, Value, Ctx);
} }
void ms8(unsigned Size, const MCFixup &Fixup, uint64_t &Value, static void ms8(unsigned Size, const MCFixup &Fixup, uint64_t &Value,
MCContext *Ctx = nullptr) { MCContext *Ctx = nullptr) {
Value = (Value & 0xff000000) >> 24; Value = (Value & 0xff000000) >> 24;
ldi::fixup(Size, Fixup, Value, Ctx); ldi::fixup(Size, Fixup, Value, Ctx);