Get MMI optimizations build for Loongson-2 again.
Tested on Loongson-2 and Loongson-3A.
Jiaxun Yang (4):
avutil/mips: Use MMI_{L,S}QC1 macro in {SAVE,RECOVER}_REG
avutil/mips: Extract load store with shift C1 pair marco
avcodec/mips: Use MMI marcos to replace Loongson3 instructions
avutil
{SAVE,RECOVER}_REG will be avilable for Loongson2 again,
also comment about the magic.
Signed-off-by: Jiaxun Yang
---
libavutil/mips/mmiutils.h | 32 +---
1 file changed, 17 insertions(+), 15 deletions(-)
diff --git a/libavutil/mips/mmiutils.h b/libavutil/mips
We're doing some fancy hacks with load store with shift C1
beside unaligned load store. Create a marco for l/r pair
to allow us use it in these places.
Signed-off-by: Jiaxun Yang
---
libavutil/mips/mmiutils.h | 49 ---
1 file changed, 30 insertions(+
mited code didn't follow that. In this patch I revewed the
codebase and converted all these instructions into MMI marcos to get
Loongson2 supproted again.
Signed-off-by: Jiaxun Yang
---
libavcodec/mips/h264chroma_mmi.c | 26 +++-
libavcodec/mips/h264dsp_mmi.c | 8 +-
libavcodec/mips/hev
.
Signed-off-by: Jiaxun Yang
---
libavutil/mips/mmiutils.h | 115 +++---
1 file changed, 69 insertions(+), 46 deletions(-)
diff --git a/libavutil/mips/mmiutils.h b/libavutil/mips/mmiutils.h
index 3994085057..7b7b405ddf 100644
--- a/libavutil/mips/mmiutils.h
+++ b
On Tue, Feb 23, 2021, at 2:47 PM, 殷时友 wrote:
>
> > 2021年2月19日 下午1:28,Jiaxun Yang 写道:
> >
> > Get MMI optimizations build for Loongson-2 again.
> > Tested on Loongson-2 and Loongson-3A.
> >
> > Jiaxun Yang (4):
> > avutil/mips: Use MMI_{L,S}QC1
在 2021/2/23 下午2:47, 殷时友 写道:
2021年2月19日 下午1:28,Jiaxun Yang 写道:
Get MMI optimizations build for Loongson-2 again.
Tested on Loongson-2 and Loongson-3A.
Jiaxun Yang (4):
avutil/mips: Use MMI_{L,S}QC1 macro in {SAVE,RECOVER}_REG
avutil/mips: Extract load store with shift C1 pair marco
son3 and Release 6 & rest.
Secondly, we compile MMI and MSA C sources with their own flags to ensure
their flags won't pollute the whole program and generate illegal code.
Signed-off-by: Jiaxun Yang
---
configure| 179 +++
ffbui
Apply optimized functions according to cpuflags.
MSA is always put after MMI as it's usually faster than MMI.
Signed-off-by: Jiaxun Yang
---
libavcodec/mips/blockdsp_init_mips.c| 22 +-
libavcodec/mips/cabac.h | 2 +-
libavcodec
pred16x16 [OK]
pred8x8l_top_dc_8_mmi (h264pred.c:222)
- h264pred.pred8x8l [FAILED]
- h264qpel.put [OK]
- h264qpel.avg [OK]
- pixblockdsp.get_pixels [OK]
- pixblockdsp.diff_pixels [OK]
- vp8dsp.idct [OK]
- vp8dsp.loopfilter [OK]
- vp9dsp.mc [OK]
Jiaxun Yang (3):
ffbuild: Refine MIPS handling
libavutil: Detec
Add MMI & MSA runtime detection for MIPS.
Currently it's based on cpuinfo but in future we should
consider to use CPUCFG instruction.
Signed-off-by: Jiaxun Yang
---
libavutil/cpu.c | 10 +
libavutil/cpu.h | 3 ++
libavutil/cpu_internal.h | 2 +
libav
Apply optimized functions according to cpuflags.
MSA is always put after MMI as it's usually faster than MMI.
Signed-off-by: Jiaxun Yang
---
libavcodec/mips/blockdsp_init_mips.c| 22 +-
libavcodec/mips/cabac.h | 2 +-
libavcodec
son3 and Release 6 & rest.
Secondly, we compile MMI and MSA C sources with their own flags to ensure
their flags won't pollute the whole program and generate illegal code.
Signed-off-by: Jiaxun Yang
---
configure| 179 +++
ffbui
That helper grab from kernel code can allow us to inline
newer instructions (not implemented by the assembler) in
a elegant manner.
Signed-off-by: Jiaxun Yang
---
libavutil/mips/asmdefs.h | 42
1 file changed, 42 insertions(+)
diff --git a/libavutil
This series adds MIPS MSA & MMI runtime detection support
Please review.
Thanks!
v2:
- Add CPUCFG support.
- Add "-mloongson-ext" to MMIFLAGS for Loongson-3 as well. (Loongson2F don't
need this flag)
Jiaxun Yang (4):
ffbuild: Refine MIPS handling
libavutils: Add
no CPUCFG (or not export it in HWCAP),
we'll parse /proc/cpuinfo instead.
Signed-off-by: Jiaxun Yang
---
v2: Implement CPUCFG code path as CPUCFG emulation and HWCAP
have accepted by Linux Kernel upstream.
---
libavutil/cpu.c | 10 +++
libavutil/cpu.h |
On Tue, 2 Jun 2020 22:15:03 +0800
Jiaxun Yang wrote:
> This series adds MIPS MSA & MMI runtime detection support
>
> Please review.
>
> Thanks!
>
> v2:
> - Add CPUCFG support.
> - Add "-mloongson-ext" to MMIFLAGS for Loongson-3 as well.
> (Loo
That helper grab from kernel code can allow us to inline
newer instructions (not implemented by the assembler) in
a elegant manner.
Signed-off-by: Jiaxun Yang
---
libavutil/mips/asmdefs.h | 42
1 file changed, 42 insertions(+)
diff --git a/libavutil
This series adds MIPS MSA & MMI runtime detection support
Please review.
Thanks!
v2:
- Add CPUCFG support.
- Add "-mloongson-ext" to MMIFLAGS for Loongson-3 as well. (Loongson2F don't
need this flag)
v3:
- Address reveiew suggestions from Shiyou Yin and Weixi
son3 and Release 6 & rest.
Secondly, we compile MMI and MSA C sources with their own flags to ensure
their flags won't pollute the whole program and generate illegal code.
Signed-off-by: Jiaxun Yang
--
v3: Address Shiyou's review suggestions,
Fix GCC version detection meth
no CPUCFG (or not export it in HWCAP),
we'll parse /proc/cpuinfo instead.
Signed-off-by: Jiaxun Yang
---
v2: Implement CPUCFG code path as CPUCFG emulation and HWCAP
have accepted by Linux Kernel upstream.
---
libavutil/cpu.c | 10 +++
libavutil/cpu.h |
Apply optimized functions according to cpuflags.
MSA is always put after MMI as it's usually faster than MMI.
Signed-off-by: Jiaxun Yang
---
libavcodec/mips/blockdsp_init_mips.c| 22 +-
libavcodec/mips/cabac.h | 2 +-
libavcodec
son3 and Release 6 & rest.
Secondly, we compile MMI and MSA C sources with their own flags to ensure
their flags won't pollute the whole program and generate illegal code.
Signed-off-by: Jiaxun Yang
--
v3: Address Shiyou's review suggestions,
Fix GCC version detection metho
v4:
- Disable DSP for generic CPU
Jiaxun Yang (4):
ffbuild: Refine MIPS handling
libavutils: Add parse_r helper for MIPS
libavutil: Detect MMI and MSA flags for MIPS
libavcodec: Enable runtime detection for MIPS MMI & MSA
configure | 183 ++
在 2020/6/6 17:48, Shiyou Yin 写道:
-Original Message-
From: ffmpeg-devel-boun...@ffmpeg.org [mailto:ffmpeg-devel-boun...@ffmpeg.org]
On Behalf Of
Jiaxun Yang
Sent: Saturday, June 6, 2020 3:34 PM
To: ffmpeg-devel@ffmpeg.org
Cc: yinshi...@loongson.cn; Jiaxun Yang
Subject: [FFmpeg-devel
That helper grab from kernel code can allow us to inline
newer instructions (not implemented by the assembler) in
a elegant manner.
Signed-off-by: Jiaxun Yang
---
libavutil/mips/asmdefs.h | 42
1 file changed, 42 insertions(+)
diff --git a/libavutil
Apply optimized functions according to cpuflags.
MSA is always put after MMI as it's usually faster than MMI.
Signed-off-by: Jiaxun Yang
---
libavcodec/mips/blockdsp_init_mips.c| 22 +-
libavcodec/mips/cabac.h | 2 +-
libavcodec
no CPUCFG (or not export it in HWCAP),
we'll parse /proc/cpuinfo instead.
Signed-off-by: Jiaxun Yang
---
v2: Implement CPUCFG code path as CPUCFG emulation and HWCAP
have accepted by Linux Kernel upstream.
---
libavutil/cpu.c | 10 +++
libavutil/cpu.h |
wsbh is only avilable for MIPS R2+.
Provide a fallback for older processors.
Signed-off-by: Jiaxun Yang
---
libavcodec/mips/cabac.h | 24
1 file changed, 24 insertions(+)
diff --git a/libavcodec/mips/cabac.h b/libavcodec/mips/cabac.h
index f1e953dabe..39c308c7e0 100644
We're doing some fancy hacks with load store with shift C1
beside unaligned load store. Create a marco for l/r pair
to allow us use it in these places.
Signed-off-by: Jiaxun Yang
---
libavutil/mips/mmiutils.h | 49 ---
1 file changed, 30 insertions(+
Get MMI optimizations build for Loongson-2 again.
Tested on Loongson-2 and Loongson-3A.
---
v2: Rebase and add patch v6
---
Cc: yinshiyou...@loongson.cn
Jiaxun Yang (5):
avutil/mips: Use MMI_{L,S}QC1 macro in {SAVE,RECOVER}_REG
avutil/mips: Extract load store with shift C1 pair marco
mited code didn't follow that. In this patch I revewed the
codebase and converted all these instructions into MMI marcos to get
Loongson2 supproted again.
Signed-off-by: Jiaxun Yang
---
libavcodec/mips/h264chroma_mmi.c | 28 +++-
libavcodec/mips/h264dsp_mmi.c | 8 +-
libavcodec/mips/hev
{SAVE,RECOVER}_REG will be avilable for Loongson2 again,
also comment about the magic.
Signed-off-by: Jiaxun Yang
---
libavutil/mips/mmiutils.h | 32 +---
1 file changed, 17 insertions(+), 15 deletions(-)
diff --git a/libavutil/mips/mmiutils.h b/libavutil/mips
.
Signed-off-by: Jiaxun Yang
---
libavutil/mips/mmiutils.h | 115 +++---
1 file changed, 69 insertions(+), 46 deletions(-)
diff --git a/libavutil/mips/mmiutils.h b/libavutil/mips/mmiutils.h
index f5b600e50c..c1a8046798 100644
--- a/libavutil/mips/mmiutils.h
+++ b
在 2021/7/22 下午4:00, yinshiyou...@loongson.cn 写道:
> -原始邮件-
> 发件人: "Jiaxun Yang"
> 发送时间: 2021-07-21 17:39:22 (星期三)
> 收件人: ffmpeg-devel@ffmpeg.org
> 抄送: yinshiyou...@loongson.cn, "Jin Bo" , "Jiaxun Yang"
> 主题: [FFmpeg-devel] [PATC
在 2021/7/22 下午9:02, yinshiyou...@loongson.cn 写道:
>
> No that's not true, Loongson-MMI had upstream toolchain support for
> Loongson-3A since 2019, which is binutils-2.32 and GCC-9.
>
> And these instruction naming (and or xor) is available since 2008 for
> Loongson-2F.
>
I mean the upstream com
在 2021/7/22 下午7:55, yinshiyou...@loongson.cn 写道:
> -原始邮件-
> 发件人: "Jiaxun Yang"
> 发送时间: 2021-07-21 17:19:10 (星期三)
> 收件人: ffmpeg-devel@ffmpeg.org
> 抄送: yinshiyou...@loongson.cn, "Jiaxun Yang"
> 主题: [FFmpeg-devel] [PATCH v2 2/5] avutil/mips: Extrac
在 2021/7/22 下午9:02, yinshiyou...@loongson.cn 写道:
I mean the upstream compiler not support ’pxor‘ yet, not mean MMI.
upstream gcc supports 'xor' for 2F and 3A is true, user can use it with old
version ffmpeg?
According to the latest instruction mannual, we should use 'pxor' but not 'xor'
which
在 2021/7/23 上午9:39, Jin Bo 写道:
pxor is loongson media extension instruction, it's not
supported yet on upstream gcc complier. Disable mmi to
avoid build error if the compiler does not support it.
Hi Bo,
Well I have to repeat that your statement is *NOT* true.
Upstream GCC *DO* support Loongs
在 2021/7/23 上午11:59, yinshiyou...@loongson.cn 写道:
> -原始邮件-
> 发件人: "Jiaxun Yang"
> 发送时间: 2021-07-22 21:59:03 (星期四)
> 收件人: ffmpeg-devel@ffmpeg.org
> 抄送:
> 主题: Re: [FFmpeg-devel] [PATCH v2 2/5] avutil/mips: Extract load store with
shift C1 pair marco
>
&g
Get MMI optimizations build for Loongson-2 again.
Tested on Loongson-2 and Loongson-3A.
---
v2: Rebase and add patch 5
v3: Drop load pair patch and collect review tags
---
Jiaxun Yang (4):
avutil/mips: Use MMI_{L, S}QC1 macro in {SAVE, RECOVER}_REG
avcodec/mips: Use MMI marcos to replace
{SAVE,RECOVER}_REG will be available for Loongson2 again,
also comment about the magic.
Signed-off-by: Jiaxun Yang
Reviewed-by: Shiyou Yin
---
libavutil/mips/mmiutils.h | 32 +---
1 file changed, 17 insertions(+), 15 deletions(-)
diff --git a/libavutil/mips
mited code didn't follow that. In this patch I revised the
codebase and converted all these instructions into MMI marcos to get
Loongson2 supproted again.
Signed-off-by: Jiaxun Yang
Reviewed-by: Shiyou Yin
---
libavcodec/mips/h264chroma_mmi.c | 28 +++-
libavcodec/mips/h264dsp_mmi.c
.
Signed-off-by: Jiaxun Yang
Reviewed-by: Shiyou Yin
---
libavutil/mips/mmiutils.h | 108 +++---
1 file changed, 66 insertions(+), 42 deletions(-)
diff --git a/libavutil/mips/mmiutils.h b/libavutil/mips/mmiutils.h
index 41715c6490..7991e14e84 100644
--- a
wsbh is only avilable for MIPS R2+.
Provide a fallback for older processors.
Signed-off-by: Jiaxun Yang
Reviewed-by: Shiyou Yin
---
libavcodec/mips/cabac.h | 24
1 file changed, 24 insertions(+)
diff --git a/libavcodec/mips/cabac.h b/libavcodec/mips/cabac.h
index
在 2021/7/23 17:23, yinshiyou...@loongson.cn 写道:
> -原始邮件-
> 发件人: "Jiaxun Yang"
> 发送时间: 2021-07-23 10:34:37 (星期五)
> 收件人: ffmpeg-devel@ffmpeg.org
> 抄送:
> 主题: Re: [FFmpeg-devel] [PATCH v1] configure: fix mmi check
>
>
> 在 2021/7/23 上午9:39, Jin Bo 写道:
在2021年7月29日七月 下午5:29,yinshiyou...@loongson.cn写道:
> > -原始邮件-
> > 发件人: "Jiaxun Yang"
> > 发送时间: 2021-07-29 14:32:35 (星期四)
> > 收件人: ffmpeg-devel@ffmpeg.org
> > 抄送: yinshiyou...@loongson.cn, "Jiaxun Yang"
> > 主题: [PATCH] a
no CPUCFG (or not export it in HWCAP),
we'll parse /proc/cpuinfo instead.
Signed-off-by: Jiaxun Yang
--
v5: Fix a stupid typo
---
libavutil/cpu.c | 10 +++
libavutil/cpu.h | 3 +
libavutil/cpu_internal.h | 2 +
libavutil/mips/Makefile | 2 +-
libavutil/mips/cp
That helper grab from kernel code can allow us to inline
newer instructions (not implemented by the assembler) in
a elegant manner.
Signed-off-by: Jiaxun Yang
---
libavutil/mips/asmdefs.h | 42
1 file changed, 42 insertions(+)
diff --git a/libavutil
clear.
Signed-off-by: Jiaxun Yang
---
libavcodec/mips/h264dsp_mmi.c | 38 +--
1 file changed, 19 insertions(+), 19 deletions(-)
diff --git a/libavcodec/mips/h264dsp_mmi.c b/libavcodec/mips/h264dsp_mmi.c
index 7a60ee7c2b..20df39806f 100644
--- a/libavcodec/mips
v4:
- Disable DSP for generic CPU
v5:
- Clean ups
- Address some GCC build warnings
Jiaxun Yang (6):
ffbuild: Refine MIPS handling
libavutils: Add parse_r helper for MIPS
libavutil: Detect MMI and MSA flags for MIPS
libavcodec: Enable runtime detection for MIPS MMI & MSA
libavcod
son3 and Release 6 & rest.
Secondly, we compile MMI and MSA C sources with their own flags to ensure
their flags won't pollute the whole program and generate illegal code.
Signed-off-by: Jiaxun Yang
--
v5: Minor fixes
---
configure
GCC complains about them.
Signed-off-by: Jiaxun Yang
---
libavcodec/mips/h264dsp_mips.h | 18 +-
libavcodec/mips/h264dsp_mmi.c | 18 +-
libavcodec/mips/xvid_idct_mmi.c | 4 ++--
libavcodec/mips/xvididct_mips.h | 4 ++--
4 files changed, 22 insertions(+), 22
son3 and Release 6 & rest.
Secondly, we compile MMI and MSA C sources with their own flags to ensure
their flags won't pollute the whole program and generate illegal code.
Signed-off-by: Jiaxun Yang
--
v5: Minor fixes
v6: Minor fixes according to Shiyou's comments
---
configure
no CPUCFG (or not export it in HWCAP),
we'll parse /proc/cpuinfo instead.
Signed-off-by: Jiaxun Yang
--
v5: Fix a stupid typo
---
libavutil/cpu.c | 10 +++
libavutil/cpu.h | 3 +
libavutil/cpu_internal.h | 2 +
libavutil/mips/Makefile | 2 +-
libavutil/mips/cp
v4:
- Disable DSP for generic CPU
v5:
- Clean ups
- Address some GCC build warnings
v6:
- Address more Shiyou's comments
Jiaxun Yang (6):
ffbuild: Refine MIPS handling
libavutils: Add parse_r helper for MIPS
libavutil: Detect MMI and MSA flags for MIPS
libavcodec: Enable runtim
GCC complains about them.
Signed-off-by: Jiaxun Yang
---
libavcodec/mips/h264dsp_mips.h | 18 +-
libavcodec/mips/h264dsp_mmi.c | 18 +-
libavcodec/mips/xvid_idct_mmi.c | 4 ++--
libavcodec/mips/xvididct_mips.h | 4 ++--
4 files changed, 22 insertions(+), 22
That helper grab from kernel code can allow us to inline
newer instructions (not implemented by the assembler) in
a elegant manner.
Signed-off-by: Jiaxun Yang
---
libavutil/mips/asmdefs.h | 42
1 file changed, 42 insertions(+)
diff --git a/libavutil
clear.
Signed-off-by: Jiaxun Yang
---
libavcodec/mips/h264dsp_mmi.c | 38 +--
1 file changed, 19 insertions(+), 19 deletions(-)
diff --git a/libavcodec/mips/h264dsp_mmi.c b/libavcodec/mips/h264dsp_mmi.c
index d3bd472599..173e191c77 100644
--- a/libavcodec/mips
在 2021/7/29 20:26, Jiaxun Yang 写道:
在2021年7月29日七月 下午5:29,yinshiyou...@loongson.cn写道:
-原始邮件-
发件人: "Jiaxun Yang"
发送时间: 2021-07-29 14:32:35 (星期四)
收件人: ffmpeg-devel@ffmpeg.org
抄送: yinshiyou...@loongson.cn, "Jiaxun Yang"
主题: [PATCH] avcodec/mips: Support old s
在 2021/8/2 下午4:33, yinshiyou...@loongson.cn 写道:
-原始邮件-
发件人: "Jiaxun Yang"
发送时间: 2021-08-02 13:40:54 (星期一)
收件人: "FFmpeg development discussions and patches" ,
yinshiyou...@loongson.cn
抄送:
主题: Re: [FFmpeg-devel] [PATCH] avcodec/mips: Support old style mmi instru
在2021年8月2日八月 上午9:33,yinshiyou...@loongson.cn写道:
>> -原始邮件-
>> 发件人: "Jiaxun Yang"
>> 发送时间: 2021-08-02 13:40:54 (星期一)
>> 收件人: "FFmpeg development discussions and patches" ,
>> yinshiyou...@loongson.cn
>> 抄送:
>> 主题:
62 matches
Mail list logo