Home
last modified time | relevance | path

Searched full:pattern (Results 1 – 25 of 2274) sorted by relevance

12345678910>>...91

/llvm-project/llvm/test/Analysis/BasicAA/
H A Dlibfuncs-darwin.ll7 define void @test_memset_pattern4_const_size(ptr noalias %a, ptr noalias %pattern) {
9 ; CHECK: Just Mod: Ptr: i8* %a <-> call void @memset_pattern4(ptr %a, ptr %pattern, i64 17)
10 ; CHECK-NEXT: Just Ref: Ptr: i8* %pattern <-> call void @memset_pattern4(ptr %a, ptr %pattern, i…
11 ; CHECK-NEXT: Just Mod: Ptr: i8* %a.gep.1 <-> call void @memset_pattern4(ptr %a, ptr %pattern, i…
12 ; CHECK-NEXT: NoModRef: Ptr: i8* %a.gep.17 <-> call void @memset_pattern4(ptr %a, ptr %pattern, …
13 ; CHECK-NEXT: Just Ref: Ptr: i8* %pattern.gep.3 <-> call void @memset_pattern4(ptr %a, ptr %patt…
14 ; CHECK-NEXT: NoModRef: Ptr: i8* %pattern.gep.4 <-> call void @memset_pattern4(ptr %a, ptr %patt…
18 load i8, ptr %pattern
19 call void @memset_pattern4(ptr %a, ptr %pattern, i64 17)
25 %pattern.gep.3 = getelementptr i8, ptr %pattern, i32 3
[all …]
/llvm-project/clang/test/CodeCompletion/
H A Dattr.cpp3 // STD: COMPLETION: Pattern : __carries_dependency__
4 // STD-NOT: COMPLETION: Pattern : __convergent__
5 // STD: COMPLETION: Pattern : __gnu__::__used__
6 // STD-NOT: COMPLETION: Pattern : __gnu__::used
7 // STD-NOT: COMPLETION: Pattern : __used__
8 // STD: COMPLETION: Pattern : _Clang::__convergent__
9 // STD: COMPLETION: Pattern : carries_dependency
10 // STD-NOT: COMPLETION: Pattern : clang::called_once
11 // STD: COMPLETION: Pattern : clang::convergent
12 // STD-NOT: COMPLETION: Pattern : convergent
[all …]
H A Dordinary-name-cxx11.cpp14 // CHECK-CC1-NEXT: COMPLETION: Pattern : const_cast<<#type#>>(<#expression#>)
15 // CHECK-CC1: COMPLETION: Pattern : [#void#]delete <#expression#>
16 // CHECK-CC1-NEXT: COMPLETION: Pattern : [#void#]delete [] <#expression#>
17 // CHECK-CC1-NEXT: COMPLETION: Pattern : do {
21 // CHECK-CC1-NEXT: COMPLETION: Pattern : dynamic_cast<<#type#>>(<#expression#>)
24 // CHECK-CC1-NEXT: COMPLETION: Pattern : [#bool#]false
27 …// CHECK-CC1-NEXT: COMPLETION: Pattern : for (<#init-statement#>; <#condition#>; <#inc-expression#…
28 // CHECK-CC1: COMPLETION: Pattern : goto <#label#>;
29 // CHECK-CC1-NEXT: COMPLETION: Pattern : if (<#condition#>) {
34 // CHECK-CC1-NEXT: COMPLETION: Pattern : new <#type#>(<#expressions#>)
[all …]
H A Dordinary-name.cpp12 // CHECK-CC1-NEXT: COMPLETION: Pattern : const_cast<<#type#>>(<#expression#>)
13 // CHECK-CC1: COMPLETION: Pattern : [#void#]delete <#expression#>
14 // CHECK-CC1-NEXT: COMPLETION: Pattern : [#void#]delete [] <#expression#>
15 // CHECK-CC1-NEXT: COMPLETION: Pattern : do {
19 // CHECK-CC1-NEXT: COMPLETION: Pattern : dynamic_cast<<#type#>>(<#expression#>)
22 // CHECK-CC1-NEXT: COMPLETION: Pattern : [#bool#]false
25 …// CHECK-CC1-NEXT: COMPLETION: Pattern : for (<#init-statement#>; <#condition#>; <#inc-expression#…
28 // CHECK-CC1: COMPLETION: Pattern : goto <#label#>;
29 // CHECK-CC1-NEXT: COMPLETION: Pattern : if (<#condition#>) {
34 // CHECK-CC1-NEXT: COMPLETION: Pattern : new <#type#>(<#expressions#>)
[all …]
H A Dpatterns.cpp16 // LOOP: COMPLETION: Pattern : break;{{$}}
17 // LOOP: COMPLETION: Pattern : continue;{{$}}
18 // LOOP: COMPLETION: Pattern : goto <#label#>;{{$}}
19 // LOOP: COMPLETION: Pattern : return;{{$}}
22 // OUTSIDE-LOOP-NOT: COMPLETION: Pattern : break;{{$}}
23 // OUTSIDE-LOOP-NOT: COMPLETION: Pattern : continue;{{$}}
24 // OUTSIDE-LOOP: COMPLETION: Pattern : goto <#label#>;{{$}}
25 // OUTSIDE-LOOP: COMPLETION: Pattern : return;{{$}}
44 // RETURN-VAL-NOT: COMPLETION: Pattern : return;
45 // RETURN-VAL-NOT: COMPLETION: Pattern : return false;
[all …]
/llvm-project/llvm/lib/Target/MSP430/
H A DMSP430InstrFormats.td47 dag outs, dag ins, string asmstr, list<dag> pattern>
49 let Pattern = pattern;
64 dag outs, dag ins, string asmstr, list<dag> pattern>
65 : IForm<opcode, dest, 1, src, size, outs, ins, asmstr, pattern>;
68 dag outs, dag ins, string asmstr, list<dag> pattern>
69 : IForm8<opcode, DstReg, SrcReg, 2, outs, ins, asmstr, pattern> {
74 dag outs, dag ins, string asmstr, list<dag> pattern>
75 : IForm8<opcode, DstReg, SrcImm, 4, outs, ins, asmstr, pattern> {
83 dag outs, dag ins, string asmstr, list<dag> pattern>
86 let Pattern = pattern;
[all …]
/llvm-project/libcxx/test/std/ranges/range.adaptors/range.lazy.split/
H A Dconstraints.compile.pass.cpp14 // template<input_range V, forward_range Pattern>
15 // requires view<V> && view<Pattern> &&
16 // indirectly_comparable<iterator_t<V>, iterator_t<Pattern>, ranges::equal_to> &&
17 // (forward_range<V> || tiny-range<Pattern>)
32 template <class View, class Pattern>
34 typename std::ranges::lazy_split_view<View, Pattern>;
37 // All constraints satisfied (`View` and `Pattern` are forward views).
41 using Pattern = ForwardView; typedef
43 static_assert( std::ranges::forward_range<Pattern>);
45 static_assert( std::ranges::view<Pattern>);
[all …]
/llvm-project/mlir/docs/
H A DPatternRewriter.md1 # Pattern Rewriting : Generic DAG-to-DAG Rewriting
5 This document details the design and API of the pattern rewriting infrastructure
16 The pattern rewriting framework can largely be decomposed into two parts:
17 Pattern Definition and Pattern Application.
27 This is the expected benefit of applying a given pattern. This benefit is static
28 upon construction of the pattern, but may be computed dynamically at pattern
31 performing pattern fusion and compiling patterns into an efficient state
35 almost all cases: you can simply instantiate the same pattern on
[all...]
/llvm-project/llvm/lib/Target/PowerPC/
H A DPPCInstrFormats.td135 InstrItinClass itin, list<dag> pattern>
137 let Pattern = pattern;
230 list<dag> pattern>
234 let Pattern = pattern;
243 InstrItinClass itin, list<dag> pattern>
249 let Pattern = pattern;
257 InstrItinClass itin, list<dag> pattern>
[all...]
/llvm-project/clang/test/CodeGenCXX/
H A Dtrivial-auto-var-init.cpp2 // RUN: %clang_cc1 -triple x86_64-unknown-unknown -fblocks -ftrivial-auto-var-init=pattern %s -emit-llvm -o - | FileCheck %s -check-prefix=PATTERN
6 // PATTERN-NOT: undef
16 // PATTERN-LABEL: test_selfinit(
17 // PATTERN: store i32 -1431655766, ptr %self, align 4, !annotation [[AUTO_INIT:!.+]]
26 // PATTERN-LABEL: test_block(
27 // PATTERN: store i32 -1431655766, ptr %block, align 4, !annotation [[AUTO_INIT:!.+]]
43 // PATTERN-LABEL: test_block_self_init(
44 // PATTERN: %block = alloca <{ ptr, i32, i32, ptr, ptr, ptr }>, align 8
45 // PATTERN
[all...]
/llvm-project/llvm/lib/Target/XCore/
H A DXCoreInstrFormats.td12 class InstXCore<int sz, dag outs, dag ins, string asmstr, list<dag> pattern>
20 let Pattern = pattern;
26 class PseudoInstXCore<dag outs, dag ins, string asmstr, list<dag> pattern>
27 : InstXCore<0, outs, ins, asmstr, pattern> {
35 class _F3R<bits<5> opc, dag outs, dag ins, string asmstr, list<dag> pattern>
36 : InstXCore<2, outs, ins, asmstr, pattern> {
44 class _F3RImm<bits<5> opc, dag outs, dag ins, string asmstr, list<dag> pattern>
45 : _F3R<opc, outs, ins, asmstr, pattern> {
49 class _FL3R<bits<9> opc, dag outs, dag ins, string asmstr, list<dag> pattern>
50 : InstXCore<4, outs, ins, asmstr, pattern> {
[all …]
/llvm-project/polly/test/ScheduleOptimizer/
H A Dpattern-matching-based-opts_4.ll1 ; RUN: opt %loadNPMPolly -passes=polly-opt-isl -polly-pattern-matching-based-opts=true \
3 ; RUN: opt %loadNPMPolly '-passes=polly-opt-isl,print<polly-ast>' -polly-pattern-matching-based-opt…
10 ; RUN: FileCheck %s --check-prefix=PATTERN-MATCHING-OPTS
14 ; Check that the pattern matching optimizations can detect different
18 ; account during the pattern matching optimizations.
24 ; CHECK: The tensor contraction pattern was detected
25 ; CHECK: The matrix multiplication pattern was detected
27 ; PATTERN-MATCHING-OPTS: // 1st level tiling - Tiles
28 ; PATTERN-MATCHING-OPTS-NEXT: for (int c1 = 0; c1 <= 3; c1 += 1) {
29 ; PATTERN-MATCHING-OPTS-NEXT: for (int c3 = 256 * c1; c3 <= 256 * c1 + 255; c3 += 1)
[all …]
/llvm-project/mlir/test/mlir-pdll/Parser/
H A Dpattern-failure.pdll3 // CHECK: expected `{` or `=>` to start pattern body
4 Pattern }
10 Pattern Foo { erase root: Op; }
11 Pattern Foo { erase root: Op; }
16 Pattern {
22 // CHECK: expected Pattern body to terminate with an operation rewrite statement
23 Pattern {
29 // CHECK: Pattern body was terminated by an operation rewrite statement, but found trailing stateme…
30 Pattern {
37 // CHECK: expected Pattern lambda body to contain a single operation rewrite statement, such as `er…
[all …]
H A Dstmt-failure.pdll3 // CHECK: expected top-level declaration, such as a `Pattern`
8 Pattern {
19 Pattern {
26 Pattern {
37 Pattern {
44 Pattern {
51 Pattern {
58 Pattern {
65 Pattern {
72 Pattern {
[all …]
/llvm-project/mlir/include/mlir/Rewrite/
H A DPatternApplicator.h9 // This file implements an applicator that applies pattern rewrites based upon a
28 /// This is the type of Action that is dispatched when a pattern is applied.
29 /// It captures the pattern to apply on top of the usual context.
33 ApplyPatternAction(ArrayRef<IRUnit> irUnits, const Pattern &pattern) in ApplyPatternAction() argument
34 : Base(irUnits), pattern(pattern) {} in ApplyPatternAction()
35 static constexpr StringLiteral tag = "apply-pattern";
40 os << "`" << tag << " pattern: " << pattern.getDebugName(); in print()
44 const Pattern &pattern;
52 /// pattern. Users can query contained patterns and pass analysis results to
55 using CostModel = function_ref<PatternBenefit(const Pattern &)>;
[all …]
/llvm-project/mlir/lib/Rewrite/
H A DPatternApplicator.cpp1 //===- PatternApplicator.cpp - Pattern Application Engine -------*- C++ -*-===//
9 // This file implements an applicator that applies pattern rewrites based upon a
18 #define DEBUG_TYPE "pattern-application"
34 /// Log a message for a pattern that is impossible to match.
35 static void logImpossibleToMatch(const Pattern &pattern) { in logImpossibleToMatch() argument
36 llvm::dbgs() << "Ignoring pattern '" << pattern.getRootKind() in logImpossibleToMatch()
41 /// Log IR after pattern application.
50 llvm::dbgs() << "// *** IR Dump After Pattern Application ***\n"; in logSucessfulPatternApplication()
68 for (const RewritePattern *pattern : it.second) { in applyCostModel() local
69 if (pattern->getBenefit().isImpossibleToMatch()) in applyCostModel()
[all …]
/llvm-project/clang/lib/Format/
H A DMatchFilePath.cpp1 //===--- MatchFilePath.cpp - Match file path with pattern -------*- C++ -*-===//
11 /// a pattern, similar to the POSIX fnmatch() function.
22 // Check whether `FilePath` matches `Pattern` based on POSIX 2.13.1, 2.13.2, and
24 bool matchFilePath(StringRef Pattern, StringRef FilePath) { in matchFilePath() argument
25 assert(!Pattern.empty()); in matchFilePath()
30 // No match if `Pattern` ends with a non-meta character not equal to the last in matchFilePath()
32 if (const auto C = Pattern.back(); !strchr("?*]", C) && C != FilePathBack) in matchFilePath()
36 const auto EOP = Pattern.size(); // End of `Pattern`. in matchFilePath()
38 unsigned I = 0; // Index to `Pattern` in matchFilePath()
[all...]
/llvm-project/llvm/lib/Target/ARM/
H A DARMInstrFormats.td477 let Pattern = [];
498 class PseudoInst<dag oops, dag iops, InstrItinClass itin, list<dag> pattern>
503 let Pattern = pattern;
510 list<dag> pattern>
511 : PseudoInst<oops, iops, itin, pattern> {
518 list<dag> pattern>
519 : PseudoInst<oops, iops, itin, pattern> {
526 list<dag> pattern>
527 : PseudoInst<oops, iops, itin, pattern> {
[all...]
/llvm-project/llvm/lib/Target/LoongArch/
H A DLoongArchInstrFormats.td20 list<dag> pattern = []>
34 let Pattern = pattern;
46 class Pseudo<dag outs, dag ins, list<dag> pattern = [], string opcstr = "",
48 : LAInst<outs, ins, opcstr, opnstr, pattern> {
60 list<dag> pattern = []>
61 : LAInst<outs, ins, deriveInsnMnemonic<NAME>.ret, opnstr, pattern> {
73 list<dag> pattern = []>
74 : LAInst<outs, ins, deriveInsnMnemonic<NAME>.ret, opnstr, pattern> {
88 list<dag> pattern
[all...]
H A DLoongArchLSXInstrFormats.td22 list<dag> pattern = []>
23 : LAInst<outs, ins, deriveInsnMnemonic<NAME>.ret, opnstr, pattern> {
35 list<dag> pattern = []>
36 : LAInst<outs, ins, deriveInsnMnemonic<NAME>.ret, opnstr, pattern> {
47 list<dag> pattern = []>
48 : LAInst<outs, ins, deriveInsnMnemonic<NAME>.ret, opnstr, pattern> {
59 list<dag> pattern = []>
60 : LAInst<outs, ins, deriveInsnMnemonic<NAME>.ret, opnstr, pattern> {
72 list<dag> pattern = []>
73 : LAInst<outs, ins, deriveInsnMnemonic<NAME>.ret, opnstr, pattern> {
[all …]
H A DLoongArchLASXInstrFormats.td22 list<dag> pattern = []>
23 : LAInst<outs, ins, deriveInsnMnemonic<NAME>.ret, opnstr, pattern> {
35 list<dag> pattern = []>
36 : LAInst<outs, ins, deriveInsnMnemonic<NAME>.ret, opnstr, pattern> {
47 list<dag> pattern = []>
48 : LAInst<outs, ins, deriveInsnMnemonic<NAME>.ret, opnstr, pattern> {
59 list<dag> pattern = []>
60 : LAInst<outs, ins, deriveInsnMnemonic<NAME>.ret, opnstr, pattern> {
72 list<dag> pattern = []>
73 : LAInst<outs, ins, deriveInsnMnemonic<NAME>.ret, opnstr, pattern> {
[all …]
/llvm-project/mlir/test/IR/
H A Dtest-matchers.mlir15 // CHECK: Pattern add(*) matched 3 times
16 // CHECK: Pattern mul(*) matched 4 times
17 // CHECK: Pattern add(add(*), *) matched 0 times
18 // CHECK: Pattern add(*, add(*)) matched 0 times
19 // CHECK: Pattern mul(add(*), *) matched 0 times
20 // CHECK: Pattern mul(*, add(*)) matched 2 times
21 // CHECK: Pattern mul(mul(*), *) matched 3 times
22 // CHECK: Pattern mul(mul(*), mul(*)) matched 2 times
23 // CHECK: Pattern mul(mul(mul(*), mul(*)), mul(mul(*), mul(*))) matched 1 times
24 // CHECK: Pattern mul(mul(mul(mul(*), add(*)), mul(*)), mul(mul(*, add(*)), mul(*, add(*)))…
[all …]
/llvm-project/llvm/lib/Target/Sparc/
H A DSparcInstrFormats.td9 class InstSP<dag outs, dag ins, string asmstr, list<dag> pattern,
23 let Pattern = pattern;
36 class F2<dag outs, dag ins, string asmstr, list<dag> pattern,
38 : InstSP<outs, ins, asmstr, pattern, itin> {
48 class F2_1<bits<3> op2Val, dag outs, dag ins, string asmstr, list<dag> pattern,
50 : F2<outs, ins, asmstr, pattern, itin> {
59 list<dag> pattern, InstrItinClass itin = NoItinerary>
60 : F2<outs, ins, asmstr, pattern, itin> {
69 dag outs, dag ins, string asmstr, list<dag> pattern,
71 : InstSP<outs, ins, asmstr, pattern, itin> {
[all …]
/llvm-project/mlir/include/mlir/IR/
H A DPatternMatch.h27 /// This class represents the benefit of a pattern match in a unitless scheme
29 /// use here is the "number of operations matched" by the pattern.
46 /// If the corresponding pattern can match, return its benefit. If the
47 // corresponding pattern isImpossibleToMatch() then this aborts.
66 // Pattern
69 /// This class contains all of the data related to a pattern, but does not
71 /// used to interface with the metadata of a pattern, such as the benefit or
73 class Pattern {
75 /// that match this pattern.
77 /// The pattern roo
277 std::unique_ptr<T> pattern = create() local
301 initializePattern(T & pattern) initializePattern() argument
816 RewritePatternSet(MLIRContext * context,std::unique_ptr<RewritePattern> pattern) RewritePatternSet() argument
820 RewritePatternSet(PDLPatternModule && pattern) RewritePatternSet() argument
882 add(std::unique_ptr<RewritePattern> pattern) add() argument
889 add(PDLPatternModule && pattern) add() argument
948 insert(std::unique_ptr<RewritePattern> pattern) insert() argument
955 insert(PDLPatternModule && pattern) insert() argument
989 std::unique_ptr<T> pattern = addImpl() local
[all...]
/llvm-project/mlir/test/python/dialects/
H A Dpdl_ops.py18 # CHECK: pdl.pattern @operations : benefit(1) {
30 pattern = PatternOp(1, "operations")
31 with InsertionPoint(pattern.body):
42 # CHECK: pdl.pattern @rewrite_with_args : benefit(1) {
50 pattern = PatternOp(1, "rewrite_with_args")
51 with InsertionPoint(pattern.body):
58 # CHECK: pdl.pattern @rewrite_multi_root_optimal : benefit(1) {
73 pattern = PatternOp(1, "rewrite_multi_root_optimal")
74 with InsertionPoint(pattern.body):
88 # CHECK: pdl.pattern @rewrite_multi_root_forced : benefit(1) {
[all …]

12345678910>>...91