From: mita@miraclelinux.com (Akinobu Mita)
To: Andi Kleen <ak@suse.de>
Cc: Richard Henderson <rth@twiddle.net>,
Ivan Kokshaysky <ink@jurassic.park.msu.ru>,
linux-kernel@vger.kernel.org
Subject: [PATCH] alpha: remove __alpha_cix__ and __alpha_fix__
Date: Thu, 9 Feb 2006 14:55:31 +0900 [thread overview]
Message-ID: <20060209055531.GA2642@miraclelinux.com> (raw)
In-Reply-To: <20060202125007.GA5918@miraclelinux.com>
On Thu, Feb 02, 2006 at 09:50:07PM +0900, mita wrote:
> This patch will put hweight*() into lib/hweight.c
I realized that this patch broke ia64 and alpha.
I want to fix it by making new config option like CONFIG_GENERIC_HWEIGHT.
But there is a difficulty to define CONFIG_GENERIC_HWEIGHT on alpha.
So I want to add the patch below. Does it cause anything bad?
Index: 2.6-git/arch/alpha/lib/ev6-memchr.S
===================================================================
--- 2.6-git.orig/arch/alpha/lib/ev6-memchr.S
+++ 2.6-git/arch/alpha/lib/ev6-memchr.S
@@ -84,7 +84,7 @@ $last_quad:
beq $2, $not_found # U : U L U L
$found_it:
-#if defined(__alpha_fix__) && defined(__alpha_cix__)
+#ifdef CONFIG_ALPHA_EV67
/*
* Since we are guaranteed to have set one of the bits, we don't
* have to worry about coming back with a 0x40 out of cttz...
Index: 2.6-git/arch/alpha/lib/fpreg.c
===================================================================
--- 2.6-git.orig/arch/alpha/lib/fpreg.c
+++ 2.6-git/arch/alpha/lib/fpreg.c
@@ -4,7 +4,7 @@
* (C) Copyright 1998 Linus Torvalds
*/
-#if defined(__alpha_cix__) || defined(__alpha_fix__)
+#if defined(CONFIG_ALPHA_EV6) || defined(CONFIG_ALPHA_EV67)
#define STT(reg,val) asm volatile ("ftoit $f"#reg",%0" : "=r"(val));
#else
#define STT(reg,val) asm volatile ("stt $f"#reg",%0" : "=m"(val));
@@ -53,7 +53,7 @@ alpha_read_fp_reg (unsigned long reg)
return val;
}
-#if defined(__alpha_cix__) || defined(__alpha_fix__)
+#if defined(CONFIG_ALPHA_EV6) || defined(CONFIG_ALPHA_EV67)
#define LDT(reg,val) asm volatile ("itoft %0,$f"#reg : : "r"(val));
#else
#define LDT(reg,val) asm volatile ("ldt $f"#reg",%0" : : "m"(val));
@@ -98,7 +98,7 @@ alpha_write_fp_reg (unsigned long reg, u
}
}
-#if defined(__alpha_cix__) || defined(__alpha_fix__)
+#if defined(CONFIG_ALPHA_EV6) || defined(CONFIG_ALPHA_EV67)
#define STS(reg,val) asm volatile ("ftois $f"#reg",%0" : "=r"(val));
#else
#define STS(reg,val) asm volatile ("sts $f"#reg",%0" : "=m"(val));
@@ -147,7 +147,7 @@ alpha_read_fp_reg_s (unsigned long reg)
return val;
}
-#if defined(__alpha_cix__) || defined(__alpha_fix__)
+#if defined(CONFIG_ALPHA_EV6) || defined(CONFIG_ALPHA_EV67)
#define LDS(reg,val) asm volatile ("itofs %0,$f"#reg : : "r"(val));
#else
#define LDS(reg,val) asm volatile ("lds $f"#reg",%0" : : "m"(val));
Index: 2.6-git/include/asm-alpha/bitops.h
===================================================================
--- 2.6-git.orig/include/asm-alpha/bitops.h
+++ 2.6-git/include/asm-alpha/bitops.h
@@ -261,7 +261,7 @@ static inline unsigned long ffz_b(unsign
static inline unsigned long ffz(unsigned long word)
{
-#if defined(__alpha_cix__) && defined(__alpha_fix__)
+#if defined(CONFIG_ALPHA_EV6) && defined(CONFIG_ALPHA_EV67)
/* Whee. EV67 can calculate it directly. */
return __kernel_cttz(~word);
#else
@@ -281,7 +281,7 @@ static inline unsigned long ffz(unsigned
*/
static inline unsigned long __ffs(unsigned long word)
{
-#if defined(__alpha_cix__) && defined(__alpha_fix__)
+#if defined(CONFIG_ALPHA_EV6) && defined(CONFIG_ALPHA_EV67)
/* Whee. EV67 can calculate it directly. */
return __kernel_cttz(word);
#else
@@ -313,7 +313,7 @@ static inline int ffs(int word)
/*
* fls: find last bit set.
*/
-#if defined(__alpha_cix__) && defined(__alpha_fix__)
+#if defined(CONFIG_ALPHA_EV6) && defined(CONFIG_ALPHA_EV67)
static inline int fls(int word)
{
return 64 - __kernel_ctlz(word & 0xffffffff);
@@ -326,7 +326,7 @@ static inline int fls(int word)
/* Compute powers of two for the given integer. */
static inline long floor_log2(unsigned long word)
{
-#if defined(__alpha_cix__) && defined(__alpha_fix__)
+#if defined(CONFIG_ALPHA_EV6) && defined(CONFIG_ALPHA_EV67)
return 63 - __kernel_ctlz(word);
#else
long bit;
@@ -347,7 +347,7 @@ static inline long ceil_log2(unsigned lo
* of bits set) of a N-bit word
*/
-#if defined(__alpha_cix__) && defined(__alpha_fix__)
+#if defined(CONFIG_ALPHA_EV6) && defined(CONFIG_ALPHA_EV67)
/* Whee. EV67 can calculate it directly. */
static inline unsigned long hweight64(unsigned long w)
{
Index: 2.6-git/include/asm-alpha/fpu.h
===================================================================
--- 2.6-git.orig/include/asm-alpha/fpu.h
+++ 2.6-git/include/asm-alpha/fpu.h
@@ -130,7 +130,7 @@ rdfpcr(void)
{
unsigned long tmp, ret;
-#if defined(__alpha_cix__) || defined(__alpha_fix__)
+#if defined(CONFIG_ALPHA_EV6) || defined(CONFIG_ALPHA_EV67)
__asm__ __volatile__ (
"ftoit $f0,%0\n\t"
"mf_fpcr $f0\n\t"
@@ -154,7 +154,7 @@ wrfpcr(unsigned long val)
{
unsigned long tmp;
-#if defined(__alpha_cix__) || defined(__alpha_fix__)
+#if defined(CONFIG_ALPHA_EV6) || defined(CONFIG_ALPHA_EV67)
__asm__ __volatile__ (
"ftoit $f0,%0\n\t"
"itoft %1,$f0\n\t"
next prev parent reply other threads:[~2006-02-09 5:55 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-02-01 9:02 [patch 00/44] generic bitops Akinobu Mita
2006-02-01 9:02 ` [patch 01/44] ia64: use cpu_set() instead of __set_bit() Akinobu Mita
2006-02-01 9:02 ` [patch 02/44] parisc: add ()-pair in __ffz() macro Akinobu Mita
2006-02-01 9:02 ` [patch 03/44] cris: remove unnecessary local_irq_restore() Akinobu Mita
2006-02-01 9:02 ` [patch 04/44] use non atomic operations for minix_*_bit() and ext2_*_bit() Akinobu Mita
2006-02-01 9:02 ` [patch 05/44] generic {,test_and_}{set,clear,change}_bit() Akinobu Mita
2006-02-03 9:55 ` Martin Waitz
2006-02-06 23:07 ` Russell King
2006-02-01 9:02 ` [patch 06/44] generic __{,test_and_}{set,clear,change}_bit() and test_bit() Akinobu Mita
2006-02-01 9:02 ` [patch 07/44] generic __ffs() Akinobu Mita
2006-02-01 9:02 ` [patch 08/44] generic ffz() Akinobu Mita
2006-02-01 9:02 ` [patch 09/44] generic fls() Akinobu Mita
2006-02-01 9:02 ` [patch 10/44] generic fls64() Akinobu Mita
2006-02-01 9:02 ` [patch 11/44] generic find_{next,first}{,_zero}_bit() Akinobu Mita
2006-02-01 9:02 ` [patch 12/44] generic sched_find_first_bit() Akinobu Mita
2006-02-03 3:58 ` [parisc-linux] " Grant Grundler
2006-02-01 9:02 ` [patch 13/44] generic ffs() Akinobu Mita
2006-02-01 9:02 ` [patch 14/44] generic hweight{64,32,16,8}() Akinobu Mita
2006-02-01 9:06 ` Andi Kleen
2006-02-01 9:26 ` Michael Tokarev
2006-02-01 10:24 ` Andi Kleen
2006-02-02 12:50 ` Akinobu Mita
2006-02-09 5:55 ` Akinobu Mita [this message]
2006-02-09 19:12 ` [PATCH] alpha: remove __alpha_cix__ and __alpha_fix__ Richard Henderson
2006-02-10 5:40 ` Akinobu Mita
2006-02-02 1:26 ` [patch 14/44] generic hweight{64,32,16,8}() Gabriel Paubert
2006-02-06 11:52 ` Akinobu Mita
2006-02-03 8:31 ` Ulrich Eckhardt
2006-02-01 9:02 ` [patch 15/44] generic ext2_{set,clear,test,find_first_zero,find_next_zero}_bit() Akinobu Mita
2006-02-01 11:27 ` Roman Zippel
2006-02-06 11:47 ` Akinobu Mita
2006-02-08 10:41 ` Akinobu Mita
2006-02-01 9:02 ` [patch 16/44] generic ext2_{set,clear}_bit_atomic() Akinobu Mita
2006-02-01 9:02 ` [patch 17/44] generic minix_{test,set,test_and_clear,test,find_first_zero}_bit() Akinobu Mita
2006-02-01 9:02 ` [patch 18/44] alpha: use generic bitops Akinobu Mita
2006-02-01 9:02 ` [patch 19/44] arm: " Akinobu Mita
2006-02-01 9:02 ` [patch 20/44] arm26: " Akinobu Mita
2006-02-01 9:02 ` [patch 21/44] cris: " Akinobu Mita
2006-02-01 9:02 ` [patch 22/44] frv: " Akinobu Mita
2006-02-01 9:02 ` [patch 23/44] h8300: " Akinobu Mita
2006-02-01 9:02 ` [patch 24/44] i386: " Akinobu Mita
2006-02-01 9:02 ` [patch 25/44] ia64: " Akinobu Mita
2006-02-01 9:02 ` [patch 26/44] m32r: " Akinobu Mita
2006-02-01 9:02 ` [patch 27/44] m68k: " Akinobu Mita
2006-02-01 9:02 ` [patch 28/44] m68knommu: " Akinobu Mita
2006-02-01 9:02 ` [patch 29/44] mips: " Akinobu Mita
2006-02-01 9:02 ` [patch 30/44] parisc: " Akinobu Mita
2006-02-01 9:02 ` [patch 31/44] powerpc: " Akinobu Mita
2006-02-01 9:02 ` [patch 32/44] s390: " Akinobu Mita
2006-02-01 9:02 ` [patch 33/44] sh: " Akinobu Mita
2006-02-01 9:02 ` [patch 34/44] sh64: " Akinobu Mita
2006-02-01 9:02 ` [patch 35/44] sparc: " Akinobu Mita
2006-02-01 9:03 ` [patch 36/44] sparc64: " Akinobu Mita
2006-02-01 9:03 ` [patch 37/44] v850: " Akinobu Mita
2006-02-01 9:03 ` [patch 38/44] x86_64: " Akinobu Mita
2006-02-01 9:03 ` [patch 39/44] xtensa: " Akinobu Mita
2006-02-01 9:03 ` [patch 40/44] update include/asm-generic/bitops.h Akinobu Mita
2006-02-01 9:03 ` [patch 41/44] make thread_info.flags an unsigned long Akinobu Mita
2006-02-01 9:03 ` [patch 42/44] ia64: make partial_page.bitmap " Akinobu Mita
2006-02-01 9:03 ` [patch 43/44] ntfs: remove generic_ffs() Akinobu Mita
2006-02-01 9:03 ` [patch 44/44] remove unused generic bitops in include/linux/bitops.h Akinobu Mita
2006-02-06 10:26 ` [patch 11/44] generic find_{next,first}{,_zero}_bit() David Howells
2006-02-07 2:02 ` Akinobu Mita
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20060209055531.GA2642@miraclelinux.com \
--to=mita@miraclelinux.com \
--cc=ak@suse.de \
--cc=ink@jurassic.park.msu.ru \
--cc=linux-kernel@vger.kernel.org \
--cc=rth@twiddle.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome