@@ -36,10 +36,12 @@ namespace ISD {
36
36
static const uint64_t ByValOffs = 4 ;
37
37
static const uint64_t Nest = 1ULL <<5 ; // /< Nested fn static chain
38
38
static const uint64_t NestOffs = 5 ;
39
- static const uint64_t ByValAlign = 0xFULL << 6 ; // /< Struct alignment
40
- static const uint64_t ByValAlignOffs = 6 ;
41
- static const uint64_t Split = 1ULL << 10 ;
42
- static const uint64_t SplitOffs = 10 ;
39
+ static const uint64_t Returned = 1ULL <<6 ;
40
+ static const uint64_t ReturnedOffs = 6 ;
41
+ static const uint64_t ByValAlign = 0xFULL <<7 ; // /< Struct alignment
42
+ static const uint64_t ByValAlignOffs = 7 ;
43
+ static const uint64_t Split = 1ULL <<11 ;
44
+ static const uint64_t SplitOffs = 11 ;
43
45
static const uint64_t OrigAlign = 0x1FULL <<27 ;
44
46
static const uint64_t OrigAlignOffs = 27 ;
45
47
static const uint64_t ByValSize = 0xffffffffULL << 32 ; // /< Struct size
@@ -51,23 +53,26 @@ namespace ISD {
51
53
public:
52
54
ArgFlagsTy () : Flags(0 ) { }
53
55
54
- bool isZExt () const { return Flags & ZExt; }
55
- void setZExt () { Flags |= One << ZExtOffs; }
56
+ bool isZExt () const { return Flags & ZExt; }
57
+ void setZExt () { Flags |= One << ZExtOffs; }
56
58
57
- bool isSExt () const { return Flags & SExt; }
58
- void setSExt () { Flags |= One << SExtOffs; }
59
+ bool isSExt () const { return Flags & SExt; }
60
+ void setSExt () { Flags |= One << SExtOffs; }
59
61
60
- bool isInReg () const { return Flags & InReg; }
61
- void setInReg () { Flags |= One << InRegOffs; }
62
+ bool isInReg () const { return Flags & InReg; }
63
+ void setInReg () { Flags |= One << InRegOffs; }
62
64
63
- bool isSRet () const { return Flags & SRet; }
64
- void setSRet () { Flags |= One << SRetOffs; }
65
+ bool isSRet () const { return Flags & SRet; }
66
+ void setSRet () { Flags |= One << SRetOffs; }
65
67
66
- bool isByVal () const { return Flags & ByVal; }
67
- void setByVal () { Flags |= One << ByValOffs; }
68
+ bool isByVal () const { return Flags & ByVal; }
69
+ void setByVal () { Flags |= One << ByValOffs; }
68
70
69
- bool isNest () const { return Flags & Nest; }
70
- void setNest () { Flags |= One << NestOffs; }
71
+ bool isNest () const { return Flags & Nest; }
72
+ void setNest () { Flags |= One << NestOffs; }
73
+
74
+ bool isReturned () const { return Flags & Returned; }
75
+ void setReturned () { Flags |= One << ReturnedOffs; }
71
76
72
77
unsigned getByValAlign () const {
73
78
return (unsigned )
0 commit comments