< prev index next >

src/hotspot/cpu/aarch64/aarch64_ad.m4

Print this page

        

*** 1,6 **** ! dnl Copyright (c) 2014, Red Hat Inc. All rights reserved. dnl DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. dnl dnl This code is free software; you can redistribute it and/or modify it dnl under the terms of the GNU General Public License version 2 only, as dnl published by the Free Software Foundation. --- 1,6 ---- ! dnl Copyright (c) 2019, 2020, Red Hat Inc. All rights reserved. dnl DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. dnl dnl This code is free software; you can redistribute it and/or modify it dnl under the terms of the GNU General Public License version 2 only, as dnl published by the Free Software Foundation.
*** 18,31 **** dnl Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA dnl or visit www.oracle.com if you need additional information or have any dnl questions. dnl dnl ! dnl Process this file with m4 aarch64_ad.m4 to generate the arithmetic ! dnl and shift patterns patterns used in aarch64.ad. dnl // BEGIN This section of the file is automatically generated. Do not edit -------------- dnl define(`ORL2I', `ifelse($1,I,orL2I)') dnl define(`BASE_SHIFT_INSN', ` --- 18,34 ---- dnl Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA dnl or visit www.oracle.com if you need additional information or have any dnl questions. dnl dnl ! dnl Process this file with m4 aarch64_ad.m4 to generate instructions used in ! dnl aarch64.ad: ! dnl 1. the arithmetic ! dnl 2. shift patterns dnl // BEGIN This section of the file is automatically generated. Do not edit -------------- + // This section is generated from aarch64_ad.m4 dnl define(`ORL2I', `ifelse($1,I,orL2I)') dnl define(`BASE_SHIFT_INSN', `
*** 231,241 **** int width = exact_log2$5(mask+1); __ $2(as_Register($dst$$reg), as_Register($src$$reg), lshift, width); %} ins_pipe(ialu_reg_shift); ! %}') UBFIZ_INSN(I, ubfizw, 31, int) UBFIZ_INSN(L, ubfiz, 63, long, _long) // If there is a convert I to L block between and AndI and a LShiftL, we can also match ubfiz instruct ubfizIConvI2L(iRegLNoSp dst, iRegIorL2I src, immI lshift, immI_bitmask mask) --- 234,244 ---- int width = exact_log2$5(mask+1); __ $2(as_Register($dst$$reg), as_Register($src$$reg), lshift, width); %} ins_pipe(ialu_reg_shift); ! %}')dnl UBFIZ_INSN(I, ubfizw, 31, int) UBFIZ_INSN(L, ubfiz, 63, long, _long) // If there is a convert I to L block between and AndI and a LShiftL, we can also match ubfiz instruct ubfizIConvI2L(iRegLNoSp dst, iRegIorL2I src, immI lshift, immI_bitmask mask)
< prev index next >