Skip to content

Commit a2a55de

Browse files
committed
Move llvm/Analysis/ObjCARCUtil.h to IR to fix layering.
This is included from IR files, and IR doesn't/can't depend on Analysis (because Analysis depends on IR). Also fix the implementation - don't use non-member static in headers, as it leads to ODR violations, inaccurate "unused function" warnings, etc. And fix the header protection macro name (we don't generally include "LIB" in the names, so far as I can tell).
1 parent ecdae5d commit a2a55de

File tree

9 files changed

+14
-14
lines changed

9 files changed

+14
-14
lines changed

llvm/include/llvm/Analysis/ObjCARCUtil.h renamed to llvm/include/llvm/IR/ObjCARCUtil.h

+6-6
Original file line numberDiff line numberDiff line change
@@ -11,35 +11,35 @@
1111
///
1212
//===----------------------------------------------------------------------===//
1313

14-
#ifndef LLVM_LIB_ANALYSIS_OBJCARCUTIL_H
15-
#define LLVM_LIB_ANALYSIS_OBJCARCUTIL_H
14+
#ifndef LLVM_IR_OBJCARCUTIL_H
15+
#define LLVM_IR_OBJCARCUTIL_H
1616

1717
#include "llvm/IR/InstrTypes.h"
1818
#include "llvm/IR/LLVMContext.h"
1919

2020
namespace llvm {
2121
namespace objcarc {
2222

23-
static inline const char *getRVMarkerModuleFlagStr() {
23+
inline const char *getRVMarkerModuleFlagStr() {
2424
return "clang.arc.retainAutoreleasedReturnValueMarker";
2525
}
2626

2727
enum AttachedCallOperandBundle : unsigned { RVOB_Retain, RVOB_Claim };
2828

29-
static AttachedCallOperandBundle
29+
inline AttachedCallOperandBundle
3030
getAttachedCallOperandBundleEnum(bool IsRetain) {
3131
return IsRetain ? RVOB_Retain : RVOB_Claim;
3232
}
3333

34-
static inline bool hasAttachedCallOpBundle(const CallBase *CB, bool IsRetain) {
34+
inline bool hasAttachedCallOpBundle(const CallBase *CB, bool IsRetain) {
3535
auto B = CB->getOperandBundle(LLVMContext::OB_clang_arc_attachedcall);
3636
if (!B.hasValue())
3737
return false;
3838
return cast<ConstantInt>(B->Inputs[0])->getZExtValue() ==
3939
getAttachedCallOperandBundleEnum(IsRetain);
4040
}
4141

42-
static inline bool hasAttachedCallOpBundle(const CallBase *CB) {
42+
inline bool hasAttachedCallOpBundle(const CallBase *CB) {
4343
return CB->getOperandBundle(LLVMContext::OB_clang_arc_attachedcall)
4444
.hasValue();
4545
}

llvm/lib/IR/AutoUpgrade.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
#include "llvm/IR/AutoUpgrade.h"
1616
#include "llvm/ADT/StringSwitch.h"
17-
#include "llvm/Analysis/ObjCARCUtil.h"
17+
#include "llvm/IR/ObjCARCUtil.h"
1818
#include "llvm/IR/Constants.h"
1919
#include "llvm/IR/DIBuilder.h"
2020
#include "llvm/IR/DebugInfo.h"

llvm/lib/Target/AArch64/AArch64ISelLowering.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
#include "llvm/ADT/StringRef.h"
3030
#include "llvm/ADT/Triple.h"
3131
#include "llvm/ADT/Twine.h"
32-
#include "llvm/Analysis/ObjCARCUtil.h"
32+
#include "llvm/IR/ObjCARCUtil.h"
3333
#include "llvm/Analysis/VectorUtils.h"
3434
#include "llvm/CodeGen/CallingConvLower.h"
3535
#include "llvm/CodeGen/MachineBasicBlock.h"

llvm/lib/Transforms/ObjCARC/ObjCARC.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
#include "ObjCARC.h"
1616
#include "llvm-c/Initialization.h"
17-
#include "llvm/Analysis/ObjCARCUtil.h"
17+
#include "llvm/IR/ObjCARCUtil.h"
1818
#include "llvm/IR/IRBuilder.h"
1919
#include "llvm/IR/InlineAsm.h"
2020
#include "llvm/IR/Instructions.h"

llvm/lib/Transforms/ObjCARC/ObjCARC.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
#include "ARCRuntimeEntryPoints.h"
2626
#include "llvm/Analysis/EHPersonalities.h"
2727
#include "llvm/Analysis/ObjCARCAnalysisUtils.h"
28-
#include "llvm/Analysis/ObjCARCUtil.h"
28+
#include "llvm/IR/ObjCARCUtil.h"
2929
#include "llvm/Transforms/Utils/Local.h"
3030

3131
namespace llvm {

llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
#include "llvm/ADT/Statistic.h"
3333
#include "llvm/Analysis/AliasAnalysis.h"
3434
#include "llvm/Analysis/EHPersonalities.h"
35-
#include "llvm/Analysis/ObjCARCUtil.h"
35+
#include "llvm/IR/ObjCARCUtil.h"
3636
#include "llvm/IR/Dominators.h"
3737
#include "llvm/IR/InlineAsm.h"
3838
#include "llvm/IR/InstIterator.h"

llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
#include "llvm/Analysis/ObjCARCAliasAnalysis.h"
4242
#include "llvm/Analysis/ObjCARCAnalysisUtils.h"
4343
#include "llvm/Analysis/ObjCARCInstKind.h"
44-
#include "llvm/Analysis/ObjCARCUtil.h"
44+
#include "llvm/IR/ObjCARCUtil.h"
4545
#include "llvm/IR/BasicBlock.h"
4646
#include "llvm/IR/CFG.h"
4747
#include "llvm/IR/Constant.h"

llvm/lib/Transforms/ObjCARC/PtrState.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
#include "ObjCARC.h"
1212
#include "llvm/Analysis/ObjCARCAnalysisUtils.h"
1313
#include "llvm/Analysis/ObjCARCInstKind.h"
14-
#include "llvm/Analysis/ObjCARCUtil.h"
14+
#include "llvm/IR/ObjCARCUtil.h"
1515
#include "llvm/IR/BasicBlock.h"
1616
#include "llvm/IR/Instruction.h"
1717
#include "llvm/IR/Instructions.h"

llvm/lib/Transforms/Utils/InlineFunction.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
#include "llvm/Analysis/EHPersonalities.h"
2929
#include "llvm/Analysis/InstructionSimplify.h"
3030
#include "llvm/Analysis/ObjCARCAnalysisUtils.h"
31-
#include "llvm/Analysis/ObjCARCUtil.h"
31+
#include "llvm/IR/ObjCARCUtil.h"
3232
#include "llvm/Analysis/ProfileSummaryInfo.h"
3333
#include "llvm/Analysis/ValueTracking.h"
3434
#include "llvm/Analysis/VectorUtils.h"

0 commit comments

Comments
 (0)