Age | Commit message (Collapse) | Author |
|
Add pie support for mips
|
|
as the flags for all calls to 'as'
|
|
>>>>> On Tue, 19 Oct 2004 13:28:34 -0600, Erik Andersen <andersen@codepoet.org> said:
>> BTW, top of uClibc TODO list is "Fix syscall() on mips". What is a
>> problem?
andersen> It appears that uClibc's syscall() for mips works ok for
andersen> syscalls with a few arguments. But as I recall, it does not
andersen> work properly with _syscall5, _syscall6, _syscall7, etc.
andersen> Perhaps there is some mistake in its assumptions about the
andersen> mips/linux ABI regarding which syscall arguments are passed
andersen> via register vs which syscall arguments are passed on the
andersen> stack.
Hmm... I found a old fix in uClibc ML archive.
http://www.uclibc.org/lists/uclibc/2002-September/004459.html
But it seems somewhat broken. How about this fix instead? I tested
mmap with syscall() in mips. mips64 is not tested.
|
|
In a recent post to linux-mips ML (and libc-alpha ML), a problem with
inline syscalls was reported.
http://www.linux-mips.org/archives/linux-mips/2004-10/msg00142.html
It seems uClibc should be fixed also for newer gcc. Here is a patch.
|
|
size and performance penalty to profiling applications this way, as well as
Heisenberg effects, where the act of measuring changes what is measured.
There are better tools for doing profiling, such as OProfile, that do not
require gcc to instrument the application code.
-Erik
|
|
|
|
-Erik
|
|
the comment, newer kernels appended "64" to __NR_pread and __NR_pwrite.
|
|
instruction errors. Disable it for now.
|
|
Some utilities, such as valgrind, have a legitimate reason to know the address
of the current brk. Since we know such utils will peek under our skirt, we
might as well give them what they expect and not use a gratuitously different
symbol name.
-Erik
|
|
others.
|
|
|
|
This is a patch for uClibc/libc/sysdeps/linux/mips/sys/procfs.h pulled
from glibc CVS.
This fixes gdb with threaded application (with glibc environment).
Although debugging threaded programs seems not working on uClibc/mips
yet, this patch will be required when it becomes working.
This patch can be applied to any version of uClibc (including current
CVS).
|
|
have it. It is used by the boehm gc, amoung other things.
|
|
which prevents libthread_db (used by gdb) from compiling. Include a
copy within include/sys/user.h for mips, per what was done in glibc.
|
|
|
|
|
|
|
|
|
|
'__kernel_old_dev_t'. And of course there is no good way to know
which is in use except checking linux/version.h. Grumble.
This is rather lame, but for now, define __kernel_old_dev_t to be
the same as __kernel_dev_t. This will want to be revisited soon.
-Erik
|
|
|
|
-Erik
|
|
|
|
|
|
|
|
|
|
used to generate the crti.S and crtn.S files. Since we don't use that
anymore, keeping the workaround makes no sense.
Furthermore, in most cases, SAFECFLAGS was not picking up all the
needed flags, causing crti.o and crtn.o to not be built PIC.
Which is very bad. Removing SAFECFLAGS and using CFLAGS fixes
that as well.
|
|
broke a couple of days ago. :-(
|
|
|
|
ln.patch:
* Define $(LN) as ln in Rules.mak.
* Change all occurrences of ln into $(LN).
* Change all constructs like (cd path && ln -sf foo/file file)
into $(LN) -sf foo/file path/file. The latter construct is
already used in a number of places so it should not be
an additional compatibility problem.
|
|
rm.patch:
* Define $(RM) as rm -f in Rules.mak and test/Rules.mak
(this is the same definition as gmake uses by default).
* Change all occurrences of rm and rm -f into $(RM).
|
|
Current uClibc contains only one fpu_control.h and it is i386 version.
This is a patch to use platform specific fpu_control.h. All new files
come from glibc 2.3.2. This patch is against 0.9.21 but also can be
applied to CVS as is.
|
|
fixes it again so it both compiles and works,
-Erik
|
|
|
|
I found that current pread/pwrite is broken on mips.
On mips, kernel needs 6 arguments for pread/pwrite system call. (3
words for first 3 arguments + 1 padding word + 2 words for last 64bit
argument). Also, mips64 kernel needs just 4 arguments so no wrapper
will be required.
This is a patch against 0.9.20.
|
|
match the kernel type exactly.
|
|
common ipc.h header and struct definitions.
-Erik
|
|
one which now uses the kernel structs
-Erik
|
|
should instead have been testing for '#ifdef __PIC__'. This resulted in
NON-PIC code getting mixed into the shared library. Oops!!!
-Erik
|
|
newer gcc versions.
|
|
|
|
to have 'issues' (i.e. it doesn't work 100% properly).
-Erik
|
|
|
|
-Erik
|
|
-Erik
|
|
|
|
|
|
|
|
|
|
pipe.c for mips was broken with freeswan. No error checking.
|