The vmsbf.m instruction takes a mask register as input and writes results to a mask register. The instruction writes a 1 to all active mask elements before the first source element that is a 1, then writes a 0 to that element and all following active elements. If there is no set bit in the source vector, then all active elements in the destination are written with a 1.
Executable demo:
-
```
[[!inline quick="yes" raw="yes" pages="openpower/sv/sbf.py"]]
```
1 1 x x x x 1 1 v2 contents
Executable demo:
-
```
[[!inline quick="yes" raw="yes" pages="openpower/sv/sif.py"]]
```
0 1 x x x x 0 0 v2 content
Executable demo:
-
```
[[!inline quick="yes" raw="yes" pages="openpower/sv/sof.py"]]
```