Home | History | Annotate | Download | only in armv8
      1 //******************************************************************************
      2 //*
      3 //* Copyright (C) 2015 The Android Open Source Project
      4 //*
      5 //* Licensed under the Apache License, Version 2.0 (the "License");
      6 //* you may not use this file except in compliance with the License.
      7 //* You may obtain a copy of the License at:
      8 //*
      9 //* http://www.apache.org/licenses/LICENSE-2.0
     10 //*
     11 //* Unless required by applicable law or agreed to in writing, software
     12 //* distributed under the License is distributed on an "AS IS" BASIS,
     13 //* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     14 //* See the License for the specific language governing permissions and
     15 //* limitations under the License.
     16 //*
     17 //*****************************************************************************
     18 //* Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore
     19 //*/
     20 ///**
     21 //*******************************************************************************
     22 //* @file
     23 //*  impeg2_neon_macros.s
     24 //*
     25 //* @brief
     26 //*  Contains assembly macros
     27 //*
     28 //* @author
     29 //*  Naveen SR
     30 //*
     31 //* @par List of Functions:
     32 //*
     33 //*
     34 //* @remarks
     35 //*  None
     36 //*
     37 //*******************************************************************************
     38 
     39 
     40 .macro push_v_regs
     41     stp             d8, d9, [sp, #-16]!
     42     stp             d10, d11, [sp, #-16]!
     43     stp             d12, d13, [sp, #-16]!
     44     stp             d14, d15, [sp, #-16]!
     45 .endm
     46 .macro pop_v_regs
     47     ldp             d14, d15, [sp], #16
     48     ldp             d12, d13, [sp], #16
     49     ldp             d10, d11, [sp], #16
     50     ldp             d8, d9, [sp], #16
     51 .endm
     52 
     53 .macro swp reg1, reg2
     54     eor             \reg1, \reg1, \reg2
     55     eor             \reg2, \reg1, \reg2
     56     eor             \reg1, \reg1, \reg2
     57 .endm
     58 
     59