1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 08:27:46 +00:00

Use modern C++ attributes instead of __attribute__ voodoo.

This is quite nice, although I wish [[gnu::always_inline]] implied inline.
Also "gnu::" is kind of a wart, but whatcha gonna do.
This commit is contained in:
Andreas Kling 2019-02-15 12:30:48 +01:00
parent fbcc8ab840
commit 022f7790db
34 changed files with 99 additions and 124 deletions

View file

@ -36,14 +36,14 @@ static constexpr const char* error_glyph {
static Font* s_default_font;
static Font* s_default_bold_font;
struct FontFileHeader {
struct [[gnu::packed]] FontFileHeader {
char magic[4];
byte glyph_width;
byte glyph_height;
byte type;
byte unused[7];
char name[64];
} PACKED;
};
static inline constexpr size_t font_file_size(unsigned glyph_height)
{

View file

@ -291,7 +291,7 @@ void Painter::blit(const Point& position, const GraphicsBitmap& source, const Re
}
}
FLATTEN void Painter::draw_glyph(const Point& point, char ch, Color color)
[[gnu::flatten]] void Painter::draw_glyph(const Point& point, char ch, Color color)
{
draw_bitmap(point, font().glyph_bitmap(ch), color);
}
@ -332,7 +332,7 @@ void Painter::set_pixel(const Point& p, Color color)
m_target->scanline(point.y())[point.x()] = color.value();
}
ALWAYS_INLINE void Painter::set_pixel_with_draw_op(dword& pixel, const Color& color)
[[gnu::always_inline]] void Painter::set_pixel_with_draw_op(dword& pixel, const Color& color)
{
if (m_draw_op == DrawOp::Copy)
pixel = color.value();