Skip to content

Commit 69360ae

Browse files
committed
fix replace_fetch_with_shadow_output_pass
1 parent 647f638 commit 69360ae

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

paddle/fluid/pir/transforms/general/replace_fetch_with_shadow_output_pass.cc

+5
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
#include "paddle/fluid/pir/transforms/general/replace_fetch_with_shadow_output_pass.h"
1616

1717
#include "paddle/fluid/pir/dialect/operator/ir/pd_op.h"
18+
#include "paddle/fluid/pir/utils/general_functions.h"
1819
#include "paddle/pir/include/core/builtin_op.h"
1920
#include "paddle/pir/include/pass/pass.h"
2021
#include "paddle/pir/include/pass/pass_registry.h"
@@ -28,6 +29,10 @@ class ReplaceFetchWithShadowOutputPattern
2829
bool MatchAndRewrite(
2930
paddle::dialect::FetchOp op,
3031
pir::PatternRewriter& rewriter) const override { // NOLINT
32+
if (pir::GetDefiningOpForInput(op, 0)->HasAttribute("name")) {
33+
// DataOp/FeedOp
34+
return false;
35+
}
3136
rewriter.Build<pir::ShadowOutputOp>(
3237
op->operand_source(0),
3338
op->attributes().at("name").dyn_cast<pir::StrAttribute>().AsString());

0 commit comments

Comments
 (0)