[llvm] [SystemZ][z/OS] Implement executePostLayoutBinding for GOFFObjectWriter (PR #67868)
via llvm-commits
llvm-commits at lists.llvm.org
Fri Oct 6 11:14:45 PDT 2023
================
@@ -18,10 +18,50 @@
namespace llvm {
class MCSymbolGOFF : public MCSymbol {
+ Align Alignment;
+ enum SymbolFlags : uint16_t {
+ SF_NoRent = 0x01, // Symbol is no-reentrant.
+ SF_Alias = 0x02, // Symbol is alias.
+ SF_Hidden = 0x04, // Symbol is hidden, aka not exported.
+ SF_Weak = 0x08, // Symbol is weak.
+ };
+
+ enum {
+ // Shift value for GOFF::ESDExecutable. 3 possible values. 2 bits.
+ GOFF_Executable_Shift = 6,
+ GOFF_Executable_Bitmask = 0x3,
+ };
+
public:
MCSymbolGOFF(const StringMapEntry<bool> *Name, bool IsTemporary)
: MCSymbol(SymbolKindGOFF, Name, IsTemporary) {}
static bool classof(const MCSymbol *S) { return S->isGOFF(); }
+
+ void setAlignment(Align Value) { Alignment = Value; }
----------------
diggerlin wrote:
setAlignment(Align Value) passed by value, maybe extra copy,
change to setAlignment(const Align& Value) ,
https://github.com/llvm/llvm-project/pull/67868
More information about the llvm-commits
mailing list