Displaying 6 results from an estimated 6 matches for "__mca_code_region_end".
2018 Nov 21
2
[RFC][llvm-mca] Adding binary support to llvm-mca.
...like
such a case will probably not produce an expected result for the user.
We could introduce a warning, or automatically divide the regions so
that a single region can only contain a single block.
> My understanding is that code regions are not allowed to overlap. So, it
> makes sense if ` __mca_code_region_end()` doesn't take an ID as input.
> However, what if ` __mca_code_region_end()` ends in a different basic block?
>
> `__mca_code_region_start()` has to always dominate `
> __mca_code_region_end()`. This is trivial to verify when both calls are in
> a same basic block; however, we...
2018 Nov 15
2
[RFC][llvm-mca] Adding binary support to llvm-mca.
...at a
later time.
Example
-----------
Before we go into the details of this proposed change, let's first look at a
simple example:
// example.c -- Analyze a dot-product expression.
double test(double x, double y) {
double result = 0.0;
__mca_code_region_start(42);
result += x * y;
__mca_code_region_end();
return result;
}
In the example above, we have identified a code region, in this case a single
dot-product expression. For the sake of brevity and simplicity, we've chosen
a very simple example, but in reality a more complicated example could use
multiple expressions. We have also denote...
2018 Nov 27
2
[RFC][llvm-mca] Adding binary support to llvm-mca.
...result for the user.
> > We could introduce a warning, or automatically divide the regions so
> > that a single region can only contain a single block.
> >
> > > My understanding is that code regions are not allowed to overlap. So,
> it
> > > makes sense if ` __mca_code_region_end()` doesn't take an ID as input.
> > > However, what if ` __mca_code_region_end()` ends in a different basic
> block?
> > >
> > > `__mca_code_region_start()` has to always dominate `
> > > __mca_code_region_end()`. This is trivial to verify when both calls...
2018 Dec 03
2
[RFC][llvm-mca] Adding binary support to llvm-mca.
...oduce a warning, or automatically divide the regions so
> >> > that a single region can only contain a single block.
> >> >
> >> > > My understanding is that code regions are not allowed to overlap. So,
> >> it
> >> > > makes sense if ` __mca_code_region_end()` doesn't take an ID as input.
> >> > > However, what if ` __mca_code_region_end()` ends in a different basic
> >> block?
> >> > >
> >> > > `__mca_code_region_start()` has to always dominate `
> >> > > __mca_code_region_end()...
2018 Dec 10
2
[RFC][llvm-mca] Adding binary support to llvm-mca.
...o
>> > >> > that a single region can only contain a single block.
>> > >> >
>> > >> > > My understanding is that code regions are not allowed to
>> overlap. So,
>> > >> it
>> > >> > > makes sense if ` __mca_code_region_end()` doesn't take an ID as
>> input.
>> > >> > > However, what if ` __mca_code_region_end()` ends in a different
>> basic
>> > >> block?
>> > >> > >
>> > >> > > `__mca_code_region_start()` has to always domi...
2018 Dec 10
4
[RFC][llvm-mca] Adding binary support to llvm-mca.
...t; that a single region can only contain a single block.
>>>>>>>>
>>>>>>>>> My understanding is that code regions are not allowed to
>>>> overlap. So,
>>>>>>> it
>>>>>>>>> makes sense if ` __mca_code_region_end()` doesn't take an ID as
>>>> input.
>>>>>>>>> However, what if ` __mca_code_region_end()` ends in a different
>>>> basic
>>>>>>> block?
>>>>>>>>> `__mca_code_region_start()` has to always dominat...