Coverage Report

Created: 2026-06-30 07:12

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/imagemagick/MagickCore/thread-private.h
Line
Count
Source
1
/*
2
  Copyright @ 1999 ImageMagick Studio LLC, a non-profit organization
3
  dedicated to making software imaging solutions freely available.
4
5
  You may not use this file except in compliance with the License.  You may
6
  obtain a copy of the License at
7
8
    https://imagemagick.org/license/
9
10
  Unless required by applicable law or agreed to in writing, software
11
  distributed under the License is distributed on an "AS IS" BASIS,
12
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
  See the License for the specific language governing permissions and
14
  limitations under the License.
15
16
  MagickCore private methods for internal threading.
17
*/
18
#ifndef MAGICKCORE_THREAD_PRIVATE_H
19
#define MAGICKCORE_THREAD_PRIVATE_H
20
21
#include "MagickCore/cache.h"
22
#include "MagickCore/image-private.h"
23
#include "MagickCore/resource_.h"
24
#include "MagickCore/thread_.h"
25
26
#if defined(__cplusplus) || defined(c_plusplus)
27
extern "C" {
28
#endif
29
30
#define magick_number_threads(source,destination,chunk,factor) \
31
  num_threads(GetMagickNumberThreads((source),(destination),(chunk),(factor)))
32
#if defined(__clang__) || (__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ > 10))
33
#define MagickCachePrefetch(address,mode,locality) \
34
113M
  __builtin_prefetch(address,mode,locality)
35
#else
36
#define MagickCachePrefetch(address,mode,locality) \
37
  magick_unreferenced(address); \
38
  magick_unreferenced(mode); \
39
  magick_unreferenced(locality);
40
#endif
41
42
#if defined(MAGICKCORE_THREAD_SUPPORT)
43
  typedef pthread_mutex_t MagickMutexType;
44
#elif defined(MAGICKCORE_WINDOWS_SUPPORT)
45
  typedef CRITICAL_SECTION MagickMutexType;
46
#else
47
  typedef size_t MagickMutexType;
48
#endif
49
50
static inline int GetMagickNumberThreads(const Image *source,
51
  const Image *destination,const size_t chunk,const int factor)
52
19.5k
{
53
19.5k
  const CacheType
54
19.5k
    destination_type = (CacheType) GetImagePixelCacheType(destination),
55
19.5k
    source_type = (CacheType) GetImagePixelCacheType(source);
56
57
19.5k
  size_t
58
19.5k
    max_threads = (size_t) GetMagickResourceLimit(ThreadResource),
59
19.5k
    number_threads = 1UL,
60
19.5k
    workload_factor = 64UL << factor;
61
62
  /*
63
    Determine number of threads based on workload.
64
  */
65
19.5k
  number_threads=(chunk <= workload_factor) ? 1UL :
66
19.5k
    (chunk >= (workload_factor << 6)) ? max_threads :
67
362
    1UL+(chunk-workload_factor)*(max_threads-1L)/(((workload_factor << 6))-1L);
68
  /*
69
    Limit threads for non-memory or non-map cache sources/destinations.
70
  */
71
19.5k
  if (((source_type != MemoryCache) && (source_type != MapCache)) ||
72
19.5k
      ((destination_type != MemoryCache) && (destination_type != MapCache)))
73
0
    number_threads=MagickMin(number_threads,4);
74
19.5k
  return((int) number_threads);
75
19.5k
}
Unexecuted instantiation: annotate.c:GetMagickNumberThreads
Unexecuted instantiation: attribute.c:GetMagickNumberThreads
Unexecuted instantiation: cache.c:GetMagickNumberThreads
Unexecuted instantiation: cache-view.c:GetMagickNumberThreads
Unexecuted instantiation: channel.c:GetMagickNumberThreads
Unexecuted instantiation: colormap.c:GetMagickNumberThreads
Unexecuted instantiation: colorspace.c:GetMagickNumberThreads
Unexecuted instantiation: compare.c:GetMagickNumberThreads
Unexecuted instantiation: composite.c:GetMagickNumberThreads
Unexecuted instantiation: constitute.c:GetMagickNumberThreads
Unexecuted instantiation: decorate.c:GetMagickNumberThreads
Unexecuted instantiation: display.c:GetMagickNumberThreads
Unexecuted instantiation: distort.c:GetMagickNumberThreads
Unexecuted instantiation: distribute-cache.c:GetMagickNumberThreads
draw.c:GetMagickNumberThreads
Line
Count
Source
52
19.5k
{
53
19.5k
  const CacheType
54
19.5k
    destination_type = (CacheType) GetImagePixelCacheType(destination),
55
19.5k
    source_type = (CacheType) GetImagePixelCacheType(source);
56
57
19.5k
  size_t
58
19.5k
    max_threads = (size_t) GetMagickResourceLimit(ThreadResource),
59
19.5k
    number_threads = 1UL,
60
19.5k
    workload_factor = 64UL << factor;
61
62
  /*
63
    Determine number of threads based on workload.
64
  */
65
19.5k
  number_threads=(chunk <= workload_factor) ? 1UL :
66
19.5k
    (chunk >= (workload_factor << 6)) ? max_threads :
67
362
    1UL+(chunk-workload_factor)*(max_threads-1L)/(((workload_factor << 6))-1L);
68
  /*
69
    Limit threads for non-memory or non-map cache sources/destinations.
70
  */
71
19.5k
  if (((source_type != MemoryCache) && (source_type != MapCache)) ||
72
19.5k
      ((destination_type != MemoryCache) && (destination_type != MapCache)))
73
0
    number_threads=MagickMin(number_threads,4);
74
19.5k
  return((int) number_threads);
75
19.5k
}
Unexecuted instantiation: effect.c:GetMagickNumberThreads
Unexecuted instantiation: enhance.c:GetMagickNumberThreads
Unexecuted instantiation: feature.c:GetMagickNumberThreads
Unexecuted instantiation: fourier.c:GetMagickNumberThreads
Unexecuted instantiation: fx.c:GetMagickNumberThreads
Unexecuted instantiation: image.c:GetMagickNumberThreads
Unexecuted instantiation: layer.c:GetMagickNumberThreads
Unexecuted instantiation: log.c:GetMagickNumberThreads
Unexecuted instantiation: magic.c:GetMagickNumberThreads
Unexecuted instantiation: magick.c:GetMagickNumberThreads
Unexecuted instantiation: coder.c:GetMagickNumberThreads
Unexecuted instantiation: matrix.c:GetMagickNumberThreads
Unexecuted instantiation: morphology.c:GetMagickNumberThreads
Unexecuted instantiation: opencl.c:GetMagickNumberThreads
Unexecuted instantiation: paint.c:GetMagickNumberThreads
Unexecuted instantiation: pixel.c:GetMagickNumberThreads
Unexecuted instantiation: policy.c:GetMagickNumberThreads
Unexecuted instantiation: prepress.c:GetMagickNumberThreads
Unexecuted instantiation: property.c:GetMagickNumberThreads
Unexecuted instantiation: profile.c:GetMagickNumberThreads
Unexecuted instantiation: quantize.c:GetMagickNumberThreads
Unexecuted instantiation: quantum.c:GetMagickNumberThreads
Unexecuted instantiation: random.c:GetMagickNumberThreads
Unexecuted instantiation: resize.c:GetMagickNumberThreads
Unexecuted instantiation: resource.c:GetMagickNumberThreads
Unexecuted instantiation: segment.c:GetMagickNumberThreads
Unexecuted instantiation: semaphore.c:GetMagickNumberThreads
Unexecuted instantiation: shear.c:GetMagickNumberThreads
Unexecuted instantiation: static.c:GetMagickNumberThreads
Unexecuted instantiation: statistic.c:GetMagickNumberThreads
Unexecuted instantiation: stream.c:GetMagickNumberThreads
Unexecuted instantiation: transform.c:GetMagickNumberThreads
Unexecuted instantiation: threshold.c:GetMagickNumberThreads
Unexecuted instantiation: visual-effects.c:GetMagickNumberThreads
Unexecuted instantiation: vision.c:GetMagickNumberThreads
Unexecuted instantiation: ashlar.c:GetMagickNumberThreads
Unexecuted instantiation: cube.c:GetMagickNumberThreads
Unexecuted instantiation: cut.c:GetMagickNumberThreads
Unexecuted instantiation: dcm.c:GetMagickNumberThreads
Unexecuted instantiation: dpx.c:GetMagickNumberThreads
Unexecuted instantiation: fits.c:GetMagickNumberThreads
Unexecuted instantiation: ftxt.c:GetMagickNumberThreads
Unexecuted instantiation: hald.c:GetMagickNumberThreads
Unexecuted instantiation: json.c:GetMagickNumberThreads
Unexecuted instantiation: mat.c:GetMagickNumberThreads
Unexecuted instantiation: msl.c:GetMagickNumberThreads
Unexecuted instantiation: pdf.c:GetMagickNumberThreads
Unexecuted instantiation: plasma.c:GetMagickNumberThreads
Unexecuted instantiation: pnm.c:GetMagickNumberThreads
Unexecuted instantiation: ps2.c:GetMagickNumberThreads
Unexecuted instantiation: ps3.c:GetMagickNumberThreads
Unexecuted instantiation: ps.c:GetMagickNumberThreads
Unexecuted instantiation: psd.c:GetMagickNumberThreads
Unexecuted instantiation: sgi.c:GetMagickNumberThreads
Unexecuted instantiation: sixel.c:GetMagickNumberThreads
Unexecuted instantiation: svg.c:GetMagickNumberThreads
Unexecuted instantiation: tga.c:GetMagickNumberThreads
Unexecuted instantiation: txt.c:GetMagickNumberThreads
Unexecuted instantiation: viff.c:GetMagickNumberThreads
Unexecuted instantiation: vips.c:GetMagickNumberThreads
Unexecuted instantiation: xpm.c:GetMagickNumberThreads
Unexecuted instantiation: yaml.c:GetMagickNumberThreads
Unexecuted instantiation: jpeg.c:GetMagickNumberThreads
Unexecuted instantiation: png.c:GetMagickNumberThreads
Unexecuted instantiation: tiff.c:GetMagickNumberThreads
Unexecuted instantiation: thread.c:GetMagickNumberThreads
76
77
static inline MagickThreadType GetMagickThreadId(void)
78
213M
{
79
213M
#if defined(MAGICKCORE_THREAD_SUPPORT)
80
213M
  return(pthread_self());
81
#elif defined(MAGICKCORE_WINDOWS_SUPPORT)
82
  return(GetCurrentThreadId());
83
#else
84
  return(getpid());
85
#endif
86
213M
}
Unexecuted instantiation: annotate.c:GetMagickThreadId
Unexecuted instantiation: attribute.c:GetMagickThreadId
cache.c:GetMagickThreadId
Line
Count
Source
78
3.52M
{
79
3.52M
#if defined(MAGICKCORE_THREAD_SUPPORT)
80
3.52M
  return(pthread_self());
81
#elif defined(MAGICKCORE_WINDOWS_SUPPORT)
82
  return(GetCurrentThreadId());
83
#else
84
  return(getpid());
85
#endif
86
3.52M
}
Unexecuted instantiation: cache-view.c:GetMagickThreadId
Unexecuted instantiation: channel.c:GetMagickThreadId
Unexecuted instantiation: colormap.c:GetMagickThreadId
Unexecuted instantiation: colorspace.c:GetMagickThreadId
Unexecuted instantiation: compare.c:GetMagickThreadId
Unexecuted instantiation: composite.c:GetMagickThreadId
Unexecuted instantiation: constitute.c:GetMagickThreadId
Unexecuted instantiation: decorate.c:GetMagickThreadId
Unexecuted instantiation: display.c:GetMagickThreadId
Unexecuted instantiation: distort.c:GetMagickThreadId
Unexecuted instantiation: distribute-cache.c:GetMagickThreadId
Unexecuted instantiation: draw.c:GetMagickThreadId
Unexecuted instantiation: effect.c:GetMagickThreadId
Unexecuted instantiation: enhance.c:GetMagickThreadId
Unexecuted instantiation: feature.c:GetMagickThreadId
Unexecuted instantiation: fourier.c:GetMagickThreadId
Unexecuted instantiation: fx.c:GetMagickThreadId
Unexecuted instantiation: image.c:GetMagickThreadId
Unexecuted instantiation: layer.c:GetMagickThreadId
Unexecuted instantiation: log.c:GetMagickThreadId
Unexecuted instantiation: magic.c:GetMagickThreadId
Unexecuted instantiation: magick.c:GetMagickThreadId
Unexecuted instantiation: coder.c:GetMagickThreadId
Unexecuted instantiation: matrix.c:GetMagickThreadId
Unexecuted instantiation: morphology.c:GetMagickThreadId
Unexecuted instantiation: opencl.c:GetMagickThreadId
Unexecuted instantiation: paint.c:GetMagickThreadId
Unexecuted instantiation: pixel.c:GetMagickThreadId
Unexecuted instantiation: policy.c:GetMagickThreadId
Unexecuted instantiation: prepress.c:GetMagickThreadId
Unexecuted instantiation: property.c:GetMagickThreadId
Unexecuted instantiation: profile.c:GetMagickThreadId
Unexecuted instantiation: quantize.c:GetMagickThreadId
Unexecuted instantiation: quantum.c:GetMagickThreadId
Unexecuted instantiation: random.c:GetMagickThreadId
Unexecuted instantiation: resize.c:GetMagickThreadId
Unexecuted instantiation: resource.c:GetMagickThreadId
Unexecuted instantiation: segment.c:GetMagickThreadId
semaphore.c:GetMagickThreadId
Line
Count
Source
78
210M
{
79
210M
#if defined(MAGICKCORE_THREAD_SUPPORT)
80
210M
  return(pthread_self());
81
#elif defined(MAGICKCORE_WINDOWS_SUPPORT)
82
  return(GetCurrentThreadId());
83
#else
84
  return(getpid());
85
#endif
86
210M
}
Unexecuted instantiation: shear.c:GetMagickThreadId
Unexecuted instantiation: static.c:GetMagickThreadId
Unexecuted instantiation: statistic.c:GetMagickThreadId
Unexecuted instantiation: stream.c:GetMagickThreadId
Unexecuted instantiation: transform.c:GetMagickThreadId
Unexecuted instantiation: threshold.c:GetMagickThreadId
Unexecuted instantiation: visual-effects.c:GetMagickThreadId
Unexecuted instantiation: vision.c:GetMagickThreadId
Unexecuted instantiation: ashlar.c:GetMagickThreadId
Unexecuted instantiation: cube.c:GetMagickThreadId
Unexecuted instantiation: cut.c:GetMagickThreadId
Unexecuted instantiation: dcm.c:GetMagickThreadId
Unexecuted instantiation: dpx.c:GetMagickThreadId
Unexecuted instantiation: fits.c:GetMagickThreadId
Unexecuted instantiation: ftxt.c:GetMagickThreadId
Unexecuted instantiation: hald.c:GetMagickThreadId
Unexecuted instantiation: json.c:GetMagickThreadId
Unexecuted instantiation: mat.c:GetMagickThreadId
Unexecuted instantiation: msl.c:GetMagickThreadId
Unexecuted instantiation: pdf.c:GetMagickThreadId
Unexecuted instantiation: plasma.c:GetMagickThreadId
Unexecuted instantiation: pnm.c:GetMagickThreadId
Unexecuted instantiation: ps2.c:GetMagickThreadId
Unexecuted instantiation: ps3.c:GetMagickThreadId
Unexecuted instantiation: ps.c:GetMagickThreadId
Unexecuted instantiation: psd.c:GetMagickThreadId
Unexecuted instantiation: sgi.c:GetMagickThreadId
Unexecuted instantiation: sixel.c:GetMagickThreadId
Unexecuted instantiation: svg.c:GetMagickThreadId
Unexecuted instantiation: tga.c:GetMagickThreadId
Unexecuted instantiation: txt.c:GetMagickThreadId
Unexecuted instantiation: viff.c:GetMagickThreadId
Unexecuted instantiation: vips.c:GetMagickThreadId
Unexecuted instantiation: xpm.c:GetMagickThreadId
Unexecuted instantiation: yaml.c:GetMagickThreadId
Unexecuted instantiation: jpeg.c:GetMagickThreadId
Unexecuted instantiation: png.c:GetMagickThreadId
Unexecuted instantiation: tiff.c:GetMagickThreadId
Unexecuted instantiation: thread.c:GetMagickThreadId
87
88
static inline void GetMagickThreadFilename(const char *filename,
89
  char *thread_filename)
90
0
{
91
0
  MagickThreadType
92
0
    id;
93
0
94
0
  char
95
0
    thread_id[2*sizeof(id)+1];
96
0
97
0
  ssize_t
98
0
    i;
99
0
100
0
  unsigned char
101
0
    bytes[sizeof(id)];
102
0
103
0
  id=GetMagickThreadId();
104
0
  (void) memcpy(bytes,&id,sizeof(id));
105
0
  for (i=0; i < (ssize_t) sizeof(bytes); i++)
106
0
    (void) FormatLocaleString(thread_id+2*i,MagickPathExtent,"%02x",bytes[i]);
107
0
  thread_id[sizeof(thread_id)-1]='\0';
108
0
  (void) FormatLocaleString(thread_filename,MagickPathExtent,"%s|%s",thread_id,
109
0
    filename);
110
0
}
Unexecuted instantiation: annotate.c:GetMagickThreadFilename
Unexecuted instantiation: attribute.c:GetMagickThreadFilename
Unexecuted instantiation: cache.c:GetMagickThreadFilename
Unexecuted instantiation: cache-view.c:GetMagickThreadFilename
Unexecuted instantiation: channel.c:GetMagickThreadFilename
Unexecuted instantiation: colormap.c:GetMagickThreadFilename
Unexecuted instantiation: colorspace.c:GetMagickThreadFilename
Unexecuted instantiation: compare.c:GetMagickThreadFilename
Unexecuted instantiation: composite.c:GetMagickThreadFilename
Unexecuted instantiation: constitute.c:GetMagickThreadFilename
Unexecuted instantiation: decorate.c:GetMagickThreadFilename
Unexecuted instantiation: display.c:GetMagickThreadFilename
Unexecuted instantiation: distort.c:GetMagickThreadFilename
Unexecuted instantiation: distribute-cache.c:GetMagickThreadFilename
Unexecuted instantiation: draw.c:GetMagickThreadFilename
Unexecuted instantiation: effect.c:GetMagickThreadFilename
Unexecuted instantiation: enhance.c:GetMagickThreadFilename
Unexecuted instantiation: feature.c:GetMagickThreadFilename
Unexecuted instantiation: fourier.c:GetMagickThreadFilename
Unexecuted instantiation: fx.c:GetMagickThreadFilename
Unexecuted instantiation: image.c:GetMagickThreadFilename
Unexecuted instantiation: layer.c:GetMagickThreadFilename
Unexecuted instantiation: log.c:GetMagickThreadFilename
Unexecuted instantiation: magic.c:GetMagickThreadFilename
Unexecuted instantiation: magick.c:GetMagickThreadFilename
Unexecuted instantiation: coder.c:GetMagickThreadFilename
Unexecuted instantiation: matrix.c:GetMagickThreadFilename
Unexecuted instantiation: morphology.c:GetMagickThreadFilename
Unexecuted instantiation: opencl.c:GetMagickThreadFilename
Unexecuted instantiation: paint.c:GetMagickThreadFilename
Unexecuted instantiation: pixel.c:GetMagickThreadFilename
Unexecuted instantiation: policy.c:GetMagickThreadFilename
Unexecuted instantiation: prepress.c:GetMagickThreadFilename
Unexecuted instantiation: property.c:GetMagickThreadFilename
Unexecuted instantiation: profile.c:GetMagickThreadFilename
Unexecuted instantiation: quantize.c:GetMagickThreadFilename
Unexecuted instantiation: quantum.c:GetMagickThreadFilename
Unexecuted instantiation: random.c:GetMagickThreadFilename
Unexecuted instantiation: resize.c:GetMagickThreadFilename
Unexecuted instantiation: resource.c:GetMagickThreadFilename
Unexecuted instantiation: segment.c:GetMagickThreadFilename
Unexecuted instantiation: semaphore.c:GetMagickThreadFilename
Unexecuted instantiation: shear.c:GetMagickThreadFilename
Unexecuted instantiation: static.c:GetMagickThreadFilename
Unexecuted instantiation: statistic.c:GetMagickThreadFilename
Unexecuted instantiation: stream.c:GetMagickThreadFilename
Unexecuted instantiation: transform.c:GetMagickThreadFilename
Unexecuted instantiation: threshold.c:GetMagickThreadFilename
Unexecuted instantiation: visual-effects.c:GetMagickThreadFilename
Unexecuted instantiation: vision.c:GetMagickThreadFilename
Unexecuted instantiation: ashlar.c:GetMagickThreadFilename
Unexecuted instantiation: cube.c:GetMagickThreadFilename
Unexecuted instantiation: cut.c:GetMagickThreadFilename
Unexecuted instantiation: dcm.c:GetMagickThreadFilename
Unexecuted instantiation: dpx.c:GetMagickThreadFilename
Unexecuted instantiation: fits.c:GetMagickThreadFilename
Unexecuted instantiation: ftxt.c:GetMagickThreadFilename
Unexecuted instantiation: hald.c:GetMagickThreadFilename
Unexecuted instantiation: json.c:GetMagickThreadFilename
Unexecuted instantiation: mat.c:GetMagickThreadFilename
Unexecuted instantiation: msl.c:GetMagickThreadFilename
Unexecuted instantiation: pdf.c:GetMagickThreadFilename
Unexecuted instantiation: plasma.c:GetMagickThreadFilename
Unexecuted instantiation: pnm.c:GetMagickThreadFilename
Unexecuted instantiation: ps2.c:GetMagickThreadFilename
Unexecuted instantiation: ps3.c:GetMagickThreadFilename
Unexecuted instantiation: ps.c:GetMagickThreadFilename
Unexecuted instantiation: psd.c:GetMagickThreadFilename
Unexecuted instantiation: sgi.c:GetMagickThreadFilename
Unexecuted instantiation: sixel.c:GetMagickThreadFilename
Unexecuted instantiation: svg.c:GetMagickThreadFilename
Unexecuted instantiation: tga.c:GetMagickThreadFilename
Unexecuted instantiation: txt.c:GetMagickThreadFilename
Unexecuted instantiation: viff.c:GetMagickThreadFilename
Unexecuted instantiation: vips.c:GetMagickThreadFilename
Unexecuted instantiation: xpm.c:GetMagickThreadFilename
Unexecuted instantiation: yaml.c:GetMagickThreadFilename
Unexecuted instantiation: jpeg.c:GetMagickThreadFilename
Unexecuted instantiation: png.c:GetMagickThreadFilename
Unexecuted instantiation: tiff.c:GetMagickThreadFilename
Unexecuted instantiation: thread.c:GetMagickThreadFilename
111
112
static inline size_t GetMagickThreadSignature(void)
113
0
{
114
0
#if defined(MAGICKCORE_THREAD_SUPPORT)
115
0
  {
116
0
    union
117
0
    {
118
0
      pthread_t
119
0
        id;
120
121
0
      size_t
122
0
        signature;
123
0
    } magick_thread;
124
125
0
    magick_thread.signature=0UL;
126
0
    magick_thread.id=pthread_self();
127
0
    return(magick_thread.signature);
128
0
  }
129
#elif defined(MAGICKCORE_WINDOWS_SUPPORT)
130
  return((size_t) GetCurrentThreadId());
131
#else
132
  return((size_t) getpid());
133
#endif
134
0
}
Unexecuted instantiation: annotate.c:GetMagickThreadSignature
Unexecuted instantiation: attribute.c:GetMagickThreadSignature
Unexecuted instantiation: cache.c:GetMagickThreadSignature
Unexecuted instantiation: cache-view.c:GetMagickThreadSignature
Unexecuted instantiation: channel.c:GetMagickThreadSignature
Unexecuted instantiation: colormap.c:GetMagickThreadSignature
Unexecuted instantiation: colorspace.c:GetMagickThreadSignature
Unexecuted instantiation: compare.c:GetMagickThreadSignature
Unexecuted instantiation: composite.c:GetMagickThreadSignature
Unexecuted instantiation: constitute.c:GetMagickThreadSignature
Unexecuted instantiation: decorate.c:GetMagickThreadSignature
Unexecuted instantiation: display.c:GetMagickThreadSignature
Unexecuted instantiation: distort.c:GetMagickThreadSignature
Unexecuted instantiation: distribute-cache.c:GetMagickThreadSignature
Unexecuted instantiation: draw.c:GetMagickThreadSignature
Unexecuted instantiation: effect.c:GetMagickThreadSignature
Unexecuted instantiation: enhance.c:GetMagickThreadSignature
Unexecuted instantiation: feature.c:GetMagickThreadSignature
Unexecuted instantiation: fourier.c:GetMagickThreadSignature
Unexecuted instantiation: fx.c:GetMagickThreadSignature
Unexecuted instantiation: image.c:GetMagickThreadSignature
Unexecuted instantiation: layer.c:GetMagickThreadSignature
Unexecuted instantiation: log.c:GetMagickThreadSignature
Unexecuted instantiation: magic.c:GetMagickThreadSignature
Unexecuted instantiation: magick.c:GetMagickThreadSignature
Unexecuted instantiation: coder.c:GetMagickThreadSignature
Unexecuted instantiation: matrix.c:GetMagickThreadSignature
Unexecuted instantiation: morphology.c:GetMagickThreadSignature
Unexecuted instantiation: opencl.c:GetMagickThreadSignature
Unexecuted instantiation: paint.c:GetMagickThreadSignature
Unexecuted instantiation: pixel.c:GetMagickThreadSignature
Unexecuted instantiation: policy.c:GetMagickThreadSignature
Unexecuted instantiation: prepress.c:GetMagickThreadSignature
Unexecuted instantiation: property.c:GetMagickThreadSignature
Unexecuted instantiation: profile.c:GetMagickThreadSignature
Unexecuted instantiation: quantize.c:GetMagickThreadSignature
Unexecuted instantiation: quantum.c:GetMagickThreadSignature
Unexecuted instantiation: random.c:GetMagickThreadSignature
Unexecuted instantiation: resize.c:GetMagickThreadSignature
Unexecuted instantiation: resource.c:GetMagickThreadSignature
Unexecuted instantiation: segment.c:GetMagickThreadSignature
Unexecuted instantiation: semaphore.c:GetMagickThreadSignature
Unexecuted instantiation: shear.c:GetMagickThreadSignature
Unexecuted instantiation: static.c:GetMagickThreadSignature
Unexecuted instantiation: statistic.c:GetMagickThreadSignature
Unexecuted instantiation: stream.c:GetMagickThreadSignature
Unexecuted instantiation: transform.c:GetMagickThreadSignature
Unexecuted instantiation: threshold.c:GetMagickThreadSignature
Unexecuted instantiation: visual-effects.c:GetMagickThreadSignature
Unexecuted instantiation: vision.c:GetMagickThreadSignature
Unexecuted instantiation: ashlar.c:GetMagickThreadSignature
Unexecuted instantiation: cube.c:GetMagickThreadSignature
Unexecuted instantiation: cut.c:GetMagickThreadSignature
Unexecuted instantiation: dcm.c:GetMagickThreadSignature
Unexecuted instantiation: dpx.c:GetMagickThreadSignature
Unexecuted instantiation: fits.c:GetMagickThreadSignature
Unexecuted instantiation: ftxt.c:GetMagickThreadSignature
Unexecuted instantiation: hald.c:GetMagickThreadSignature
Unexecuted instantiation: json.c:GetMagickThreadSignature
Unexecuted instantiation: mat.c:GetMagickThreadSignature
Unexecuted instantiation: msl.c:GetMagickThreadSignature
Unexecuted instantiation: pdf.c:GetMagickThreadSignature
Unexecuted instantiation: plasma.c:GetMagickThreadSignature
Unexecuted instantiation: pnm.c:GetMagickThreadSignature
Unexecuted instantiation: ps2.c:GetMagickThreadSignature
Unexecuted instantiation: ps3.c:GetMagickThreadSignature
Unexecuted instantiation: ps.c:GetMagickThreadSignature
Unexecuted instantiation: psd.c:GetMagickThreadSignature
Unexecuted instantiation: sgi.c:GetMagickThreadSignature
Unexecuted instantiation: sixel.c:GetMagickThreadSignature
Unexecuted instantiation: svg.c:GetMagickThreadSignature
Unexecuted instantiation: tga.c:GetMagickThreadSignature
Unexecuted instantiation: txt.c:GetMagickThreadSignature
Unexecuted instantiation: viff.c:GetMagickThreadSignature
Unexecuted instantiation: vips.c:GetMagickThreadSignature
Unexecuted instantiation: xpm.c:GetMagickThreadSignature
Unexecuted instantiation: yaml.c:GetMagickThreadSignature
Unexecuted instantiation: jpeg.c:GetMagickThreadSignature
Unexecuted instantiation: png.c:GetMagickThreadSignature
Unexecuted instantiation: tiff.c:GetMagickThreadSignature
Unexecuted instantiation: thread.c:GetMagickThreadSignature
135
136
static inline MagickBooleanType IsMagickThreadEqual(const MagickThreadType id)
137
0
{
138
0
#if defined(MAGICKCORE_THREAD_SUPPORT)
139
0
  if (pthread_equal(id,pthread_self()) != 0)
140
0
    return(MagickTrue);
141
0
#elif defined(MAGICKCORE_WINDOWS_SUPPORT)
142
0
  if (id == GetCurrentThreadId())
143
0
    return(MagickTrue);
144
0
#else
145
0
  if (id == getpid())
146
0
    return(MagickTrue);
147
0
#endif
148
0
  return(MagickFalse);
149
0
}
Unexecuted instantiation: annotate.c:IsMagickThreadEqual
Unexecuted instantiation: attribute.c:IsMagickThreadEqual
Unexecuted instantiation: cache.c:IsMagickThreadEqual
Unexecuted instantiation: cache-view.c:IsMagickThreadEqual
Unexecuted instantiation: channel.c:IsMagickThreadEqual
Unexecuted instantiation: colormap.c:IsMagickThreadEqual
Unexecuted instantiation: colorspace.c:IsMagickThreadEqual
Unexecuted instantiation: compare.c:IsMagickThreadEqual
Unexecuted instantiation: composite.c:IsMagickThreadEqual
Unexecuted instantiation: constitute.c:IsMagickThreadEqual
Unexecuted instantiation: decorate.c:IsMagickThreadEqual
Unexecuted instantiation: display.c:IsMagickThreadEqual
Unexecuted instantiation: distort.c:IsMagickThreadEqual
Unexecuted instantiation: distribute-cache.c:IsMagickThreadEqual
Unexecuted instantiation: draw.c:IsMagickThreadEqual
Unexecuted instantiation: effect.c:IsMagickThreadEqual
Unexecuted instantiation: enhance.c:IsMagickThreadEqual
Unexecuted instantiation: feature.c:IsMagickThreadEqual
Unexecuted instantiation: fourier.c:IsMagickThreadEqual
Unexecuted instantiation: fx.c:IsMagickThreadEqual
Unexecuted instantiation: image.c:IsMagickThreadEqual
Unexecuted instantiation: layer.c:IsMagickThreadEqual
Unexecuted instantiation: log.c:IsMagickThreadEqual
Unexecuted instantiation: magic.c:IsMagickThreadEqual
Unexecuted instantiation: magick.c:IsMagickThreadEqual
Unexecuted instantiation: coder.c:IsMagickThreadEqual
Unexecuted instantiation: matrix.c:IsMagickThreadEqual
Unexecuted instantiation: morphology.c:IsMagickThreadEqual
Unexecuted instantiation: opencl.c:IsMagickThreadEqual
Unexecuted instantiation: paint.c:IsMagickThreadEqual
Unexecuted instantiation: pixel.c:IsMagickThreadEqual
Unexecuted instantiation: policy.c:IsMagickThreadEqual
Unexecuted instantiation: prepress.c:IsMagickThreadEqual
Unexecuted instantiation: property.c:IsMagickThreadEqual
Unexecuted instantiation: profile.c:IsMagickThreadEqual
Unexecuted instantiation: quantize.c:IsMagickThreadEqual
Unexecuted instantiation: quantum.c:IsMagickThreadEqual
Unexecuted instantiation: random.c:IsMagickThreadEqual
Unexecuted instantiation: resize.c:IsMagickThreadEqual
Unexecuted instantiation: resource.c:IsMagickThreadEqual
Unexecuted instantiation: segment.c:IsMagickThreadEqual
Unexecuted instantiation: semaphore.c:IsMagickThreadEqual
Unexecuted instantiation: shear.c:IsMagickThreadEqual
Unexecuted instantiation: static.c:IsMagickThreadEqual
Unexecuted instantiation: statistic.c:IsMagickThreadEqual
Unexecuted instantiation: stream.c:IsMagickThreadEqual
Unexecuted instantiation: transform.c:IsMagickThreadEqual
Unexecuted instantiation: threshold.c:IsMagickThreadEqual
Unexecuted instantiation: visual-effects.c:IsMagickThreadEqual
Unexecuted instantiation: vision.c:IsMagickThreadEqual
Unexecuted instantiation: ashlar.c:IsMagickThreadEqual
Unexecuted instantiation: cube.c:IsMagickThreadEqual
Unexecuted instantiation: cut.c:IsMagickThreadEqual
Unexecuted instantiation: dcm.c:IsMagickThreadEqual
Unexecuted instantiation: dpx.c:IsMagickThreadEqual
Unexecuted instantiation: fits.c:IsMagickThreadEqual
Unexecuted instantiation: ftxt.c:IsMagickThreadEqual
Unexecuted instantiation: hald.c:IsMagickThreadEqual
Unexecuted instantiation: json.c:IsMagickThreadEqual
Unexecuted instantiation: mat.c:IsMagickThreadEqual
Unexecuted instantiation: msl.c:IsMagickThreadEqual
Unexecuted instantiation: pdf.c:IsMagickThreadEqual
Unexecuted instantiation: plasma.c:IsMagickThreadEqual
Unexecuted instantiation: pnm.c:IsMagickThreadEqual
Unexecuted instantiation: ps2.c:IsMagickThreadEqual
Unexecuted instantiation: ps3.c:IsMagickThreadEqual
Unexecuted instantiation: ps.c:IsMagickThreadEqual
Unexecuted instantiation: psd.c:IsMagickThreadEqual
Unexecuted instantiation: sgi.c:IsMagickThreadEqual
Unexecuted instantiation: sixel.c:IsMagickThreadEqual
Unexecuted instantiation: svg.c:IsMagickThreadEqual
Unexecuted instantiation: tga.c:IsMagickThreadEqual
Unexecuted instantiation: txt.c:IsMagickThreadEqual
Unexecuted instantiation: viff.c:IsMagickThreadEqual
Unexecuted instantiation: vips.c:IsMagickThreadEqual
Unexecuted instantiation: xpm.c:IsMagickThreadEqual
Unexecuted instantiation: yaml.c:IsMagickThreadEqual
Unexecuted instantiation: jpeg.c:IsMagickThreadEqual
Unexecuted instantiation: png.c:IsMagickThreadEqual
Unexecuted instantiation: tiff.c:IsMagickThreadEqual
Unexecuted instantiation: thread.c:IsMagickThreadEqual
150
151
/*
152
  Lightweight OpenMP methods.
153
*/
154
static inline size_t GetOpenMPMaximumThreads(void)
155
11.3M
{
156
#if defined(MAGICKCORE_OPENMP_SUPPORT)
157
  return((size_t) omp_get_max_threads());
158
#else
159
11.3M
  return(1);
160
11.3M
#endif
161
11.3M
}
Unexecuted instantiation: annotate.c:GetOpenMPMaximumThreads
Unexecuted instantiation: attribute.c:GetOpenMPMaximumThreads
cache.c:GetOpenMPMaximumThreads
Line
Count
Source
155
6.58M
{
156
#if defined(MAGICKCORE_OPENMP_SUPPORT)
157
  return((size_t) omp_get_max_threads());
158
#else
159
6.58M
  return(1);
160
6.58M
#endif
161
6.58M
}
cache-view.c:GetOpenMPMaximumThreads
Line
Count
Source
155
4.73M
{
156
#if defined(MAGICKCORE_OPENMP_SUPPORT)
157
  return((size_t) omp_get_max_threads());
158
#else
159
4.73M
  return(1);
160
4.73M
#endif
161
4.73M
}
Unexecuted instantiation: channel.c:GetOpenMPMaximumThreads
Unexecuted instantiation: colormap.c:GetOpenMPMaximumThreads
Unexecuted instantiation: colorspace.c:GetOpenMPMaximumThreads
Unexecuted instantiation: compare.c:GetOpenMPMaximumThreads
Unexecuted instantiation: composite.c:GetOpenMPMaximumThreads
Unexecuted instantiation: constitute.c:GetOpenMPMaximumThreads
Unexecuted instantiation: decorate.c:GetOpenMPMaximumThreads
Unexecuted instantiation: display.c:GetOpenMPMaximumThreads
Unexecuted instantiation: distort.c:GetOpenMPMaximumThreads
Unexecuted instantiation: distribute-cache.c:GetOpenMPMaximumThreads
Unexecuted instantiation: draw.c:GetOpenMPMaximumThreads
Unexecuted instantiation: effect.c:GetOpenMPMaximumThreads
Unexecuted instantiation: enhance.c:GetOpenMPMaximumThreads
Unexecuted instantiation: feature.c:GetOpenMPMaximumThreads
Unexecuted instantiation: fourier.c:GetOpenMPMaximumThreads
Unexecuted instantiation: fx.c:GetOpenMPMaximumThreads
Unexecuted instantiation: image.c:GetOpenMPMaximumThreads
Unexecuted instantiation: layer.c:GetOpenMPMaximumThreads
Unexecuted instantiation: log.c:GetOpenMPMaximumThreads
Unexecuted instantiation: magic.c:GetOpenMPMaximumThreads
Unexecuted instantiation: magick.c:GetOpenMPMaximumThreads
Unexecuted instantiation: coder.c:GetOpenMPMaximumThreads
Unexecuted instantiation: matrix.c:GetOpenMPMaximumThreads
Unexecuted instantiation: morphology.c:GetOpenMPMaximumThreads
Unexecuted instantiation: opencl.c:GetOpenMPMaximumThreads
Unexecuted instantiation: paint.c:GetOpenMPMaximumThreads
Unexecuted instantiation: pixel.c:GetOpenMPMaximumThreads
Unexecuted instantiation: policy.c:GetOpenMPMaximumThreads
Unexecuted instantiation: prepress.c:GetOpenMPMaximumThreads
Unexecuted instantiation: property.c:GetOpenMPMaximumThreads
Unexecuted instantiation: profile.c:GetOpenMPMaximumThreads
Unexecuted instantiation: quantize.c:GetOpenMPMaximumThreads
Unexecuted instantiation: quantum.c:GetOpenMPMaximumThreads
Unexecuted instantiation: random.c:GetOpenMPMaximumThreads
Unexecuted instantiation: resize.c:GetOpenMPMaximumThreads
resource.c:GetOpenMPMaximumThreads
Line
Count
Source
155
590
{
156
#if defined(MAGICKCORE_OPENMP_SUPPORT)
157
  return((size_t) omp_get_max_threads());
158
#else
159
590
  return(1);
160
590
#endif
161
590
}
Unexecuted instantiation: segment.c:GetOpenMPMaximumThreads
Unexecuted instantiation: semaphore.c:GetOpenMPMaximumThreads
Unexecuted instantiation: shear.c:GetOpenMPMaximumThreads
Unexecuted instantiation: static.c:GetOpenMPMaximumThreads
Unexecuted instantiation: statistic.c:GetOpenMPMaximumThreads
Unexecuted instantiation: stream.c:GetOpenMPMaximumThreads
Unexecuted instantiation: transform.c:GetOpenMPMaximumThreads
Unexecuted instantiation: threshold.c:GetOpenMPMaximumThreads
Unexecuted instantiation: visual-effects.c:GetOpenMPMaximumThreads
Unexecuted instantiation: vision.c:GetOpenMPMaximumThreads
Unexecuted instantiation: ashlar.c:GetOpenMPMaximumThreads
Unexecuted instantiation: cube.c:GetOpenMPMaximumThreads
Unexecuted instantiation: cut.c:GetOpenMPMaximumThreads
Unexecuted instantiation: dcm.c:GetOpenMPMaximumThreads
Unexecuted instantiation: dpx.c:GetOpenMPMaximumThreads
Unexecuted instantiation: fits.c:GetOpenMPMaximumThreads
Unexecuted instantiation: ftxt.c:GetOpenMPMaximumThreads
Unexecuted instantiation: hald.c:GetOpenMPMaximumThreads
Unexecuted instantiation: json.c:GetOpenMPMaximumThreads
Unexecuted instantiation: mat.c:GetOpenMPMaximumThreads
Unexecuted instantiation: msl.c:GetOpenMPMaximumThreads
Unexecuted instantiation: pdf.c:GetOpenMPMaximumThreads
Unexecuted instantiation: plasma.c:GetOpenMPMaximumThreads
Unexecuted instantiation: pnm.c:GetOpenMPMaximumThreads
Unexecuted instantiation: ps2.c:GetOpenMPMaximumThreads
Unexecuted instantiation: ps3.c:GetOpenMPMaximumThreads
Unexecuted instantiation: ps.c:GetOpenMPMaximumThreads
Unexecuted instantiation: psd.c:GetOpenMPMaximumThreads
Unexecuted instantiation: sgi.c:GetOpenMPMaximumThreads
Unexecuted instantiation: sixel.c:GetOpenMPMaximumThreads
Unexecuted instantiation: svg.c:GetOpenMPMaximumThreads
Unexecuted instantiation: tga.c:GetOpenMPMaximumThreads
Unexecuted instantiation: txt.c:GetOpenMPMaximumThreads
Unexecuted instantiation: viff.c:GetOpenMPMaximumThreads
Unexecuted instantiation: vips.c:GetOpenMPMaximumThreads
Unexecuted instantiation: xpm.c:GetOpenMPMaximumThreads
Unexecuted instantiation: yaml.c:GetOpenMPMaximumThreads
Unexecuted instantiation: jpeg.c:GetOpenMPMaximumThreads
Unexecuted instantiation: png.c:GetOpenMPMaximumThreads
Unexecuted instantiation: tiff.c:GetOpenMPMaximumThreads
Unexecuted instantiation: thread.c:GetOpenMPMaximumThreads
162
163
static inline int GetOpenMPThreadId(void)
164
1.22G
{
165
#if defined(MAGICKCORE_OPENMP_SUPPORT)
166
  return(omp_get_thread_num());
167
#else
168
1.22G
  return(0);
169
1.22G
#endif
170
1.22G
}
Unexecuted instantiation: annotate.c:GetOpenMPThreadId
attribute.c:GetOpenMPThreadId
Line
Count
Source
164
73.3k
{
165
#if defined(MAGICKCORE_OPENMP_SUPPORT)
166
  return(omp_get_thread_num());
167
#else
168
73.3k
  return(0);
169
73.3k
#endif
170
73.3k
}
cache.c:GetOpenMPThreadId
Line
Count
Source
164
301M
{
165
#if defined(MAGICKCORE_OPENMP_SUPPORT)
166
  return(omp_get_thread_num());
167
#else
168
301M
  return(0);
169
301M
#endif
170
301M
}
cache-view.c:GetOpenMPThreadId
Line
Count
Source
164
911M
{
165
#if defined(MAGICKCORE_OPENMP_SUPPORT)
166
  return(omp_get_thread_num());
167
#else
168
911M
  return(0);
169
911M
#endif
170
911M
}
Unexecuted instantiation: channel.c:GetOpenMPThreadId
Unexecuted instantiation: colormap.c:GetOpenMPThreadId
Unexecuted instantiation: colorspace.c:GetOpenMPThreadId
Unexecuted instantiation: compare.c:GetOpenMPThreadId
Unexecuted instantiation: composite.c:GetOpenMPThreadId
Unexecuted instantiation: constitute.c:GetOpenMPThreadId
Unexecuted instantiation: decorate.c:GetOpenMPThreadId
Unexecuted instantiation: display.c:GetOpenMPThreadId
Unexecuted instantiation: distort.c:GetOpenMPThreadId
Unexecuted instantiation: distribute-cache.c:GetOpenMPThreadId
draw.c:GetOpenMPThreadId
Line
Count
Source
164
170k
{
165
#if defined(MAGICKCORE_OPENMP_SUPPORT)
166
  return(omp_get_thread_num());
167
#else
168
170k
  return(0);
169
170k
#endif
170
170k
}
Unexecuted instantiation: effect.c:GetOpenMPThreadId
Unexecuted instantiation: enhance.c:GetOpenMPThreadId
Unexecuted instantiation: feature.c:GetOpenMPThreadId
Unexecuted instantiation: fourier.c:GetOpenMPThreadId
fx.c:GetOpenMPThreadId
Line
Count
Source
164
8.03k
{
165
#if defined(MAGICKCORE_OPENMP_SUPPORT)
166
  return(omp_get_thread_num());
167
#else
168
8.03k
  return(0);
169
8.03k
#endif
170
8.03k
}
Unexecuted instantiation: image.c:GetOpenMPThreadId
Unexecuted instantiation: layer.c:GetOpenMPThreadId
Unexecuted instantiation: log.c:GetOpenMPThreadId
Unexecuted instantiation: magic.c:GetOpenMPThreadId
Unexecuted instantiation: magick.c:GetOpenMPThreadId
Unexecuted instantiation: coder.c:GetOpenMPThreadId
Unexecuted instantiation: matrix.c:GetOpenMPThreadId
Unexecuted instantiation: morphology.c:GetOpenMPThreadId
Unexecuted instantiation: opencl.c:GetOpenMPThreadId
Unexecuted instantiation: paint.c:GetOpenMPThreadId
Unexecuted instantiation: pixel.c:GetOpenMPThreadId
Unexecuted instantiation: policy.c:GetOpenMPThreadId
Unexecuted instantiation: prepress.c:GetOpenMPThreadId
Unexecuted instantiation: property.c:GetOpenMPThreadId
profile.c:GetOpenMPThreadId
Line
Count
Source
164
5.26k
{
165
#if defined(MAGICKCORE_OPENMP_SUPPORT)
166
  return(omp_get_thread_num());
167
#else
168
5.26k
  return(0);
169
5.26k
#endif
170
5.26k
}
Unexecuted instantiation: quantize.c:GetOpenMPThreadId
quantum.c:GetOpenMPThreadId
Line
Count
Source
164
91.0k
{
165
#if defined(MAGICKCORE_OPENMP_SUPPORT)
166
  return(omp_get_thread_num());
167
#else
168
91.0k
  return(0);
169
91.0k
#endif
170
91.0k
}
Unexecuted instantiation: random.c:GetOpenMPThreadId
resize.c:GetOpenMPThreadId
Line
Count
Source
164
7.15M
{
165
#if defined(MAGICKCORE_OPENMP_SUPPORT)
166
  return(omp_get_thread_num());
167
#else
168
7.15M
  return(0);
169
7.15M
#endif
170
7.15M
}
Unexecuted instantiation: resource.c:GetOpenMPThreadId
Unexecuted instantiation: segment.c:GetOpenMPThreadId
Unexecuted instantiation: semaphore.c:GetOpenMPThreadId
Unexecuted instantiation: shear.c:GetOpenMPThreadId
Unexecuted instantiation: static.c:GetOpenMPThreadId
Unexecuted instantiation: statistic.c:GetOpenMPThreadId
Unexecuted instantiation: stream.c:GetOpenMPThreadId
Unexecuted instantiation: transform.c:GetOpenMPThreadId
Unexecuted instantiation: threshold.c:GetOpenMPThreadId
Unexecuted instantiation: visual-effects.c:GetOpenMPThreadId
Unexecuted instantiation: vision.c:GetOpenMPThreadId
Unexecuted instantiation: ashlar.c:GetOpenMPThreadId
Unexecuted instantiation: cube.c:GetOpenMPThreadId
Unexecuted instantiation: cut.c:GetOpenMPThreadId
Unexecuted instantiation: dcm.c:GetOpenMPThreadId
Unexecuted instantiation: dpx.c:GetOpenMPThreadId
Unexecuted instantiation: fits.c:GetOpenMPThreadId
Unexecuted instantiation: ftxt.c:GetOpenMPThreadId
Unexecuted instantiation: hald.c:GetOpenMPThreadId
Unexecuted instantiation: json.c:GetOpenMPThreadId
Unexecuted instantiation: mat.c:GetOpenMPThreadId
Unexecuted instantiation: msl.c:GetOpenMPThreadId
Unexecuted instantiation: pdf.c:GetOpenMPThreadId
Unexecuted instantiation: plasma.c:GetOpenMPThreadId
Unexecuted instantiation: pnm.c:GetOpenMPThreadId
Unexecuted instantiation: ps2.c:GetOpenMPThreadId
Unexecuted instantiation: ps3.c:GetOpenMPThreadId
Unexecuted instantiation: ps.c:GetOpenMPThreadId
Unexecuted instantiation: psd.c:GetOpenMPThreadId
Unexecuted instantiation: sgi.c:GetOpenMPThreadId
Unexecuted instantiation: sixel.c:GetOpenMPThreadId
Unexecuted instantiation: svg.c:GetOpenMPThreadId
Unexecuted instantiation: tga.c:GetOpenMPThreadId
Unexecuted instantiation: txt.c:GetOpenMPThreadId
Unexecuted instantiation: viff.c:GetOpenMPThreadId
Unexecuted instantiation: vips.c:GetOpenMPThreadId
Unexecuted instantiation: xpm.c:GetOpenMPThreadId
Unexecuted instantiation: yaml.c:GetOpenMPThreadId
Unexecuted instantiation: jpeg.c:GetOpenMPThreadId
Unexecuted instantiation: png.c:GetOpenMPThreadId
Unexecuted instantiation: tiff.c:GetOpenMPThreadId
Unexecuted instantiation: thread.c:GetOpenMPThreadId
171
172
#if defined(MAGICKCORE_OPENMP_SUPPORT)
173
static inline void SetOpenMPMaximumThreads(const int threads)
174
{
175
  omp_set_num_threads(threads);
176
#else
177
static inline void SetOpenMPMaximumThreads(const int magick_unused(threads))
178
0
{
179
0
  magick_unreferenced(threads);
180
0
#endif
181
0
}
Unexecuted instantiation: annotate.c:SetOpenMPMaximumThreads
Unexecuted instantiation: attribute.c:SetOpenMPMaximumThreads
Unexecuted instantiation: cache.c:SetOpenMPMaximumThreads
Unexecuted instantiation: cache-view.c:SetOpenMPMaximumThreads
Unexecuted instantiation: channel.c:SetOpenMPMaximumThreads
Unexecuted instantiation: colormap.c:SetOpenMPMaximumThreads
Unexecuted instantiation: colorspace.c:SetOpenMPMaximumThreads
Unexecuted instantiation: compare.c:SetOpenMPMaximumThreads
Unexecuted instantiation: composite.c:SetOpenMPMaximumThreads
Unexecuted instantiation: constitute.c:SetOpenMPMaximumThreads
Unexecuted instantiation: decorate.c:SetOpenMPMaximumThreads
Unexecuted instantiation: display.c:SetOpenMPMaximumThreads
Unexecuted instantiation: distort.c:SetOpenMPMaximumThreads
Unexecuted instantiation: distribute-cache.c:SetOpenMPMaximumThreads
Unexecuted instantiation: draw.c:SetOpenMPMaximumThreads
Unexecuted instantiation: effect.c:SetOpenMPMaximumThreads
Unexecuted instantiation: enhance.c:SetOpenMPMaximumThreads
Unexecuted instantiation: feature.c:SetOpenMPMaximumThreads
Unexecuted instantiation: fourier.c:SetOpenMPMaximumThreads
Unexecuted instantiation: fx.c:SetOpenMPMaximumThreads
Unexecuted instantiation: image.c:SetOpenMPMaximumThreads
Unexecuted instantiation: layer.c:SetOpenMPMaximumThreads
Unexecuted instantiation: log.c:SetOpenMPMaximumThreads
Unexecuted instantiation: magic.c:SetOpenMPMaximumThreads
Unexecuted instantiation: magick.c:SetOpenMPMaximumThreads
Unexecuted instantiation: coder.c:SetOpenMPMaximumThreads
Unexecuted instantiation: matrix.c:SetOpenMPMaximumThreads
Unexecuted instantiation: morphology.c:SetOpenMPMaximumThreads
Unexecuted instantiation: opencl.c:SetOpenMPMaximumThreads
Unexecuted instantiation: paint.c:SetOpenMPMaximumThreads
Unexecuted instantiation: pixel.c:SetOpenMPMaximumThreads
Unexecuted instantiation: policy.c:SetOpenMPMaximumThreads
Unexecuted instantiation: prepress.c:SetOpenMPMaximumThreads
Unexecuted instantiation: property.c:SetOpenMPMaximumThreads
Unexecuted instantiation: profile.c:SetOpenMPMaximumThreads
Unexecuted instantiation: quantize.c:SetOpenMPMaximumThreads
Unexecuted instantiation: quantum.c:SetOpenMPMaximumThreads
Unexecuted instantiation: random.c:SetOpenMPMaximumThreads
Unexecuted instantiation: resize.c:SetOpenMPMaximumThreads
Unexecuted instantiation: resource.c:SetOpenMPMaximumThreads
Unexecuted instantiation: segment.c:SetOpenMPMaximumThreads
Unexecuted instantiation: semaphore.c:SetOpenMPMaximumThreads
Unexecuted instantiation: shear.c:SetOpenMPMaximumThreads
Unexecuted instantiation: static.c:SetOpenMPMaximumThreads
Unexecuted instantiation: statistic.c:SetOpenMPMaximumThreads
Unexecuted instantiation: stream.c:SetOpenMPMaximumThreads
Unexecuted instantiation: transform.c:SetOpenMPMaximumThreads
Unexecuted instantiation: threshold.c:SetOpenMPMaximumThreads
Unexecuted instantiation: visual-effects.c:SetOpenMPMaximumThreads
Unexecuted instantiation: vision.c:SetOpenMPMaximumThreads
Unexecuted instantiation: ashlar.c:SetOpenMPMaximumThreads
Unexecuted instantiation: cube.c:SetOpenMPMaximumThreads
Unexecuted instantiation: cut.c:SetOpenMPMaximumThreads
Unexecuted instantiation: dcm.c:SetOpenMPMaximumThreads
Unexecuted instantiation: dpx.c:SetOpenMPMaximumThreads
Unexecuted instantiation: fits.c:SetOpenMPMaximumThreads
Unexecuted instantiation: ftxt.c:SetOpenMPMaximumThreads
Unexecuted instantiation: hald.c:SetOpenMPMaximumThreads
Unexecuted instantiation: json.c:SetOpenMPMaximumThreads
Unexecuted instantiation: mat.c:SetOpenMPMaximumThreads
Unexecuted instantiation: msl.c:SetOpenMPMaximumThreads
Unexecuted instantiation: pdf.c:SetOpenMPMaximumThreads
Unexecuted instantiation: plasma.c:SetOpenMPMaximumThreads
Unexecuted instantiation: pnm.c:SetOpenMPMaximumThreads
Unexecuted instantiation: ps2.c:SetOpenMPMaximumThreads
Unexecuted instantiation: ps3.c:SetOpenMPMaximumThreads
Unexecuted instantiation: ps.c:SetOpenMPMaximumThreads
Unexecuted instantiation: psd.c:SetOpenMPMaximumThreads
Unexecuted instantiation: sgi.c:SetOpenMPMaximumThreads
Unexecuted instantiation: sixel.c:SetOpenMPMaximumThreads
Unexecuted instantiation: svg.c:SetOpenMPMaximumThreads
Unexecuted instantiation: tga.c:SetOpenMPMaximumThreads
Unexecuted instantiation: txt.c:SetOpenMPMaximumThreads
Unexecuted instantiation: viff.c:SetOpenMPMaximumThreads
Unexecuted instantiation: vips.c:SetOpenMPMaximumThreads
Unexecuted instantiation: xpm.c:SetOpenMPMaximumThreads
Unexecuted instantiation: yaml.c:SetOpenMPMaximumThreads
Unexecuted instantiation: jpeg.c:SetOpenMPMaximumThreads
Unexecuted instantiation: png.c:SetOpenMPMaximumThreads
Unexecuted instantiation: tiff.c:SetOpenMPMaximumThreads
Unexecuted instantiation: thread.c:SetOpenMPMaximumThreads
182
183
#if defined(MAGICKCORE_OPENMP_SUPPORT)
184
static inline void SetOpenMPMaxActiveLevels(const int value)
185
{
186
#if defined(MAGICKCORE_WINDOWS_SUPPORT)
187
  omp_set_nested(value);
188
#else
189
  omp_set_max_active_levels(value ? 2 : 1);
190
#endif
191
#else
192
static inline void SetOpenMPMaxActiveLevels(const int magick_unused(value))
193
0
{
194
0
  magick_unreferenced(value);
195
0
#endif
196
0
}
Unexecuted instantiation: annotate.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: attribute.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: cache.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: cache-view.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: channel.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: colormap.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: colorspace.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: compare.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: composite.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: constitute.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: decorate.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: display.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: distort.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: distribute-cache.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: draw.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: effect.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: enhance.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: feature.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: fourier.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: fx.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: image.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: layer.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: log.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: magic.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: magick.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: coder.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: matrix.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: morphology.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: opencl.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: paint.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: pixel.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: policy.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: prepress.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: property.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: profile.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: quantize.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: quantum.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: random.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: resize.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: resource.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: segment.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: semaphore.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: shear.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: static.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: statistic.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: stream.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: transform.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: threshold.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: visual-effects.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: vision.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: ashlar.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: cube.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: cut.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: dcm.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: dpx.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: fits.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: ftxt.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: hald.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: json.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: mat.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: msl.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: pdf.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: plasma.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: pnm.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: ps2.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: ps3.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: ps.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: psd.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: sgi.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: sixel.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: svg.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: tga.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: txt.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: viff.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: vips.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: xpm.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: yaml.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: jpeg.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: png.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: tiff.c:SetOpenMPMaxActiveLevels
Unexecuted instantiation: thread.c:SetOpenMPMaxActiveLevels
197
198
#if defined(__cplusplus) || defined(c_plusplus)
199
}
200
#endif
201
202
#endif