Skip to content

Commit b1fc2cd

Browse files
committed
Update CO_BROADCAST and fix alphabetical order
1 parent 4b84dad commit b1fc2cd

File tree

2 files changed

+12
-12
lines changed

2 files changed

+12
-12
lines changed

flang/include/flang/Optimizer/Builder/IntrinsicCall.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -225,10 +225,6 @@ struct IntrinsicLibrary {
225225
fir::ExtendedValue genCharacterCompare(mlir::Type,
226226
llvm::ArrayRef<fir::ExtendedValue>);
227227
mlir::Value genCmplx(mlir::Type, llvm::ArrayRef<mlir::Value>);
228-
void genCoBroadcast(llvm::ArrayRef<fir::ExtendedValue>);
229-
void genCoMax(llvm::ArrayRef<fir::ExtendedValue>);
230-
void genCoMin(llvm::ArrayRef<fir::ExtendedValue>);
231-
void genCoSum(llvm::ArrayRef<fir::ExtendedValue>);
232228
mlir::Value genConjg(mlir::Type, llvm::ArrayRef<mlir::Value>);
233229
fir::ExtendedValue genCount(mlir::Type, llvm::ArrayRef<fir::ExtendedValue>);
234230
void genCpuTime(llvm::ArrayRef<fir::ExtendedValue>);
@@ -250,6 +246,10 @@ struct IntrinsicLibrary {
250246
template <mlir::arith::CmpIPredicate pred>
251247
fir::ExtendedValue genCPtrCompare(mlir::Type,
252248
llvm::ArrayRef<fir::ExtendedValue>);
249+
void genCoBroadcast(llvm::ArrayRef<fir::ExtendedValue>);
250+
void genCoMax(llvm::ArrayRef<fir::ExtendedValue>);
251+
void genCoMin(llvm::ArrayRef<fir::ExtendedValue>);
252+
void genCoSum(llvm::ArrayRef<fir::ExtendedValue>);
253253
mlir::Value genCosd(mlir::Type, llvm::ArrayRef<mlir::Value>);
254254
mlir::Value genCospi(mlir::Type, llvm::ArrayRef<mlir::Value>);
255255
void genDateAndTime(llvm::ArrayRef<fir::ExtendedValue>);

flang/lib/Optimizer/Builder/IntrinsicCall.cpp

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -400,7 +400,7 @@ static constexpr IntrinsicHandler handlers[]{
400400
{"co_broadcast",
401401
&I::genCoBroadcast,
402402
{{{"a", asBox},
403-
{"source_image", asAddr, handleDynamicOptional},
403+
{"source_image", asAddr},
404404
{"stat", asAddr, handleDynamicOptional},
405405
{"errmsg", asBox, handleDynamicOptional}}},
406406
/*isElemental*/ false},
@@ -3681,14 +3681,14 @@ mlir::Value IntrinsicLibrary::genCmplx(mlir::Type resultType,
36813681
void IntrinsicLibrary::genCoBroadcast(llvm::ArrayRef<fir::ExtendedValue> args) {
36823682
checkCoarrayEnabled();
36833683
assert(args.size() == 4);
3684-
mlir::Value refNone =
3685-
builder
3686-
.create<fir::AbsentOp>(loc, builder.getRefType(builder.getI32Type()))
3687-
.getResult();
3688-
mlir::Value sourceImage =
3689-
isStaticallyAbsent(args[1]) ? refNone : fir::getBase(args[1]);
3684+
mlir::Value sourceImage = fir::getBase(args[1]);
36903685
mlir::Value status =
3691-
isStaticallyAbsent(args[2]) ? refNone : fir::getBase(args[2]);
3686+
isStaticallyAbsent(args[2])
3687+
? builder
3688+
.create<fir::AbsentOp>(loc,
3689+
builder.getRefType(builder.getI32Type()))
3690+
.getResult()
3691+
: fir::getBase(args[2]);
36923692
mlir::Value errmsg =
36933693
isStaticallyAbsent(args[3])
36943694
? builder.create<fir::AbsentOp>(loc, PRIF_ERRMSG_TYPE).getResult()

0 commit comments

Comments
 (0)