Add new OpenMP 4.5 affinity API
This change introduces the new OpenMP 4.5 affinity api surrounding
OpenMP Places. There are six new entry points:
Typically called in serial region:
- omp_get_num_places - returns the number of places available to the execution environment in the place list.
- omp_get_place_num_procs - returns the number of processors available to the execution environment in the specified place.
- omp_get_place_proc_ids - returns the numerical identifiers of the processors available to the execution environment in the specified place.
Typically called inside parallel region:
- omp_get_place_num - returns the place number of the place to which the encountering thread is bound.
- omp_get_partition_num_places - returns the number of places in the place partition of the innermost implicit task.
- omp_get_partition_place_nums - returns the list of place numbers corresponding to the places in the place-var ICV of the innermost implicit task.
Differential Revision: http://reviews.llvm.org/D17417