locking/atomic: scripts: split pfx/name/sfx/order
authorMark Rutland <mark.rutland@arm.com>
Mon, 5 Jun 2023 07:01:18 +0000 (08:01 +0100)
committerPeter Zijlstra <peterz@infradead.org>
Mon, 5 Jun 2023 07:57:21 +0000 (09:57 +0200)
Currently gen-atomic-long.sh's gen_proto_order_variant() function
combines the pfx/name/sfx/order variables immediately, unlike other
functions in gen-atomic-*.sh.

This is fine today, but subsequent patches will require the individual
individual pfx/name/sfx/order variables within gen-atomic-long.sh's
gen_proto_order_variant() function. In preparation for this, split the
variables in the style of other gen-atomic-*.sh scripts.

This results in no change to the generated headers, so there should be
no functional change as a result of this patch.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
Link: https://lore.kernel.org/r/20230605070124.3741859-22-mark.rutland@arm.com
scripts/atomic/gen-atomic-long.sh

index 75e91d6..1383217 100755 (executable)
@@ -36,10 +36,15 @@ gen_args_cast()
 gen_proto_order_variant()
 {
        local meta="$1"; shift
-       local name="$1$2$3$4"; shift; shift; shift; shift
+       local pfx="$1"; shift
+       local name="$1"; shift
+       local sfx="$1"; shift
+       local order="$1"; shift
        local atomic="$1"; shift
        local int="$1"; shift
 
+       local atomicname="${pfx}${name}${sfx}${order}"
+
        local ret="$(gen_ret_type "${meta}" "long")"
        local params="$(gen_params "long" "atomic_long" "$@")"
        local argscast="$(gen_args_cast "${int}" "${atomic}" "$@")"
@@ -47,9 +52,9 @@ gen_proto_order_variant()
 
 cat <<EOF
 static __always_inline ${ret}
-raw_atomic_long_${name}(${params})
+raw_atomic_long_${atomicname}(${params})
 {
-       ${retstmt}raw_${atomic}_${name}(${argscast});
+       ${retstmt}raw_${atomic}_${atomicname}(${argscast});
 }
 
 EOF