Path: blob/main/contrib/llvm-project/llvm/lib/Target/AVR/AVRTargetObjectFile.h
35269 views
//===-- AVRTargetObjectFile.h - AVR Object Info -----------------*- C++ -*-===//1//2// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.3// See https://llvm.org/LICENSE.txt for license information.4// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception5//6//===----------------------------------------------------------------------===//78#ifndef LLVM_AVR_TARGET_OBJECT_FILE_H9#define LLVM_AVR_TARGET_OBJECT_FILE_H1011#include "llvm/CodeGen/TargetLoweringObjectFileImpl.h"1213namespace llvm {1415/// Lowering for an AVR ELF32 object file.16class AVRTargetObjectFile : public TargetLoweringObjectFileELF {17typedef TargetLoweringObjectFileELF Base;1819public:20void Initialize(MCContext &ctx, const TargetMachine &TM) override;2122MCSection *SelectSectionForGlobal(const GlobalObject *GO, SectionKind Kind,23const TargetMachine &TM) const override;2425private:26MCSection *ProgmemDataSection;27MCSection *Progmem1DataSection;28MCSection *Progmem2DataSection;29MCSection *Progmem3DataSection;30MCSection *Progmem4DataSection;31MCSection *Progmem5DataSection;32};3334} // end namespace llvm3536#endif // LLVM_AVR_TARGET_OBJECT_FILE_H373839