1e01aa904Sopenharmony_ci# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 2e01aa904Sopenharmony_ci_abidiff_module() 3e01aa904Sopenharmony_ci{ 4e01aa904Sopenharmony_ci local cur prev OPTS 5e01aa904Sopenharmony_ci COMPREPLY=() 6e01aa904Sopenharmony_ci cur="${COMP_WORDS[COMP_CWORD]}" 7e01aa904Sopenharmony_ci prev="${COMP_WORDS[COMP_CWORD-1]}" 8e01aa904Sopenharmony_ci case $prev in 9e01aa904Sopenharmony_ci '--d1'|'--d2'|'--debug-info-dir1'|'--debug-info-dir2') 10e01aa904Sopenharmony_ci local IFS=$'\n' 11e01aa904Sopenharmony_ci compopt -o dirnames 12e01aa904Sopenharmony_ci COMPREPLY=( $(compgen -d -- $cur) ) 13e01aa904Sopenharmony_ci return 0 14e01aa904Sopenharmony_ci ;; 15e01aa904Sopenharmony_ci '--suppressions'|'--suppr') 16e01aa904Sopenharmony_ci local IFS=$'\n' 17e01aa904Sopenharmony_ci compopt -o filenames 18e01aa904Sopenharmony_ci COMPREPLY=( $(compgen -f -- $cur) ) 19e01aa904Sopenharmony_ci return 0 20e01aa904Sopenharmony_ci ;; 21e01aa904Sopenharmony_ci '--drop' | '--drop-fn' | '--drop-var' | '--keep' | '--keep-fn' | '--keep-var') 22e01aa904Sopenharmony_ci #'--{drop,keep}{,-fn,-var}') 23e01aa904Sopenharmony_ci COMPREPLY=( $(compgen -W "string" -- $cur) ) 24e01aa904Sopenharmony_ci return 0 25e01aa904Sopenharmony_ci ;; 26e01aa904Sopenharmony_ci esac 27e01aa904Sopenharmony_ci case $cur in 28e01aa904Sopenharmony_ci -*) 29e01aa904Sopenharmony_ci OPTS=" --added-fns 30e01aa904Sopenharmony_ci --added-vars 31e01aa904Sopenharmony_ci --changed-fns 32e01aa904Sopenharmony_ci --changed-vars 33e01aa904Sopenharmony_ci --d1 34e01aa904Sopenharmony_ci --d2 35e01aa904Sopenharmony_ci --debug-info-dir1 36e01aa904Sopenharmony_ci --debug-info-dir2 37e01aa904Sopenharmony_ci --deleted-fns 38e01aa904Sopenharmony_ci --deleted-vars 39e01aa904Sopenharmony_ci --drop 40e01aa904Sopenharmony_ci --drop-fn 41e01aa904Sopenharmony_ci --drop-var 42e01aa904Sopenharmony_ci --dump-diff-tree 43e01aa904Sopenharmony_ci --harmless 44e01aa904Sopenharmony_ci --help 45e01aa904Sopenharmony_ci --keep 46e01aa904Sopenharmony_ci --keep-fn 47e01aa904Sopenharmony_ci --keep-var 48e01aa904Sopenharmony_ci --no-harmful 49e01aa904Sopenharmony_ci --no-linkage-name 50e01aa904Sopenharmony_ci --no-redundant 51e01aa904Sopenharmony_ci --no-unreferenced-symbols 52e01aa904Sopenharmony_ci --redundant 53e01aa904Sopenharmony_ci --no-show-locs 54e01aa904Sopenharmony_ci --stat 55e01aa904Sopenharmony_ci --symtabs" 56e01aa904Sopenharmony_ci COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) ) 57e01aa904Sopenharmony_ci return 0 58e01aa904Sopenharmony_ci ;; 59e01aa904Sopenharmony_ci esac 60e01aa904Sopenharmony_ci local IFS=$'\n' 61e01aa904Sopenharmony_ci compopt -o filenames 62e01aa904Sopenharmony_ci COMPREPLY=( $(compgen -f -- $cur) ) 63e01aa904Sopenharmony_ci return 0 64e01aa904Sopenharmony_ci} 65e01aa904Sopenharmony_cicomplete -F _abidiff_module abidiff 66