Skip to content
  1. Jul 20, 2021
  2. Jul 17, 2021
  3. Jul 16, 2021
  4. Jul 15, 2021
  5. Jul 14, 2021
    • Shilei Tian's avatar
      [AbstractAttributor] Fold function calls to `__kmpc_is_spmd_exec_mode` if possible · 1100e4aa
      Shilei Tian authored
      In the device runtime there are many function calls to `__kmpc_is_spmd_exec_mode`
      to query the execution mode of current kernels. In many cases, user programs
      only contain target region executing in one mode. As a consequence, those runtime
      function calls will only return one value. If we can get rid of these function
      calls during compliation, it can potentially improve performance.
      
      In this patch, we use `AAKernelInfo` to analyze kernel execution. Basically, for
      each kernel (device) function `F`, we collect all kernel entries `K` that can
      reach `F`. A new AA, `AAFoldRuntimeCall`, is created for each call site. In each
      iteration, it will check all reaching kernel entries, and update the folded value
      accordingly.
      
      In the future we will support more function.
      
      Reviewed By: jdoerfert
      
      Differential Revision: https://reviews.llvm.org/D105787
      1100e4aa
  6. Jul 13, 2021
  7. Jul 12, 2021
    • Nikita Popov's avatar
      [Attributes] Determine attribute properties from TableGen data · 7ed3e878
      Nikita Popov authored
      Continuing from D105763, this allows placing certain properties
      about attributes in the TableGen definition. In particular, we
      store whether an attribute applies to fn/param/ret (or a combination
      thereof). This information is used by the Verifier, as well as the
      ForceFunctionAttrs pass. I also plan to use this in LLParser,
      which also duplicates info on which attributes are valid where.
      
      This keeps metadata about attributes in one place, and makes it
      more likely that it stays in sync, rather than in various
      functions spread across the codebase.
      
      Differential Revision: https://reviews.llvm.org/D105780
      7ed3e878
    • Liqiang Tao's avatar
      [llvm][Inliner] Templatize PriorityInlineOrder · 6ebeb7f8
      Liqiang Tao authored
      The patch templatize PriorityInlinerOrder so that it can accept any type priority metric.
      
      Reviewed By: kazu
      
      Differential Revision: https://reviews.llvm.org/D104972
      6ebeb7f8
    • Johannes Doerfert's avatar
      [Attributor][NFCI] Add UsedAssumedInformation to more interfaces · 792aac98
      Johannes Doerfert authored
      As with other Attributor interfaces we often want to know if assumed
      information was used to answer a query. This is important if only
      known information is allowed or if known information can lead to an
      early fixpoint. The users have been adjusted but none of them utilizes
      the new information yet.
      792aac98
  8. Jul 11, 2021
Loading