68 lines · c
1/* SPDX-License-Identifier: GPL-2.0-or-later */2/*3 * Copyright 2015, Cyril Bur, IBM Corp.4 */5 6#include "basic_asm.h"7 8/*9 * Careful this will 'clobber' vsx (by design), VSX are always10 * volatile though so unlike vmx this isn't so much of an issue11 * Still should avoid calling from C12 */13FUNC_START(load_vsx)14 li r5,015 lxvd2x vs20,r5,r316 addi r5,r5,1617 lxvd2x vs21,r5,r318 addi r5,r5,1619 lxvd2x vs22,r5,r320 addi r5,r5,1621 lxvd2x vs23,r5,r322 addi r5,r5,1623 lxvd2x vs24,r5,r324 addi r5,r5,1625 lxvd2x vs25,r5,r326 addi r5,r5,1627 lxvd2x vs26,r5,r328 addi r5,r5,1629 lxvd2x vs27,r5,r330 addi r5,r5,1631 lxvd2x vs28,r5,r332 addi r5,r5,1633 lxvd2x vs29,r5,r334 addi r5,r5,1635 lxvd2x vs30,r5,r336 addi r5,r5,1637 lxvd2x vs31,r5,r338 blr39FUNC_END(load_vsx)40 41FUNC_START(store_vsx)42 li r5,043 stxvd2x vs20,r5,r344 addi r5,r5,1645 stxvd2x vs21,r5,r346 addi r5,r5,1647 stxvd2x vs22,r5,r348 addi r5,r5,1649 stxvd2x vs23,r5,r350 addi r5,r5,1651 stxvd2x vs24,r5,r352 addi r5,r5,1653 stxvd2x vs25,r5,r354 addi r5,r5,1655 stxvd2x vs26,r5,r356 addi r5,r5,1657 stxvd2x vs27,r5,r358 addi r5,r5,1659 stxvd2x vs28,r5,r360 addi r5,r5,1661 stxvd2x vs29,r5,r362 addi r5,r5,1663 stxvd2x vs30,r5,r364 addi r5,r5,1665 stxvd2x vs31,r5,r366 blr67FUNC_END(store_vsx)68