ObjFW  Check-in [0c332aa2d2]

Overview
Comment:Rework forwarding API and ABI.

It matches the Apple API and ABI now and the forwarding handler itself
determines whether it should forward or not.

This moves handling of +[resolve{Class,Instance}Method:] to the runtime
and allows adding new kinds of forwarding without changing the runtime.

Also fixes a potential stack problem in the forwarding for MIPS.

Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 0c332aa2d2fbd36a76322a7e3e30228078384f576cf1933c75e860e3239edc7f
User & Date: js on 2013-12-27 02:07:14
Other Links: manifest | tags
Context
2013-12-30
13:47
Don't enter tests/plugin twice. check-in: 72c41bbf69 user: js tags: trunk
2013-12-27
02:07
Rework forwarding API and ABI. check-in: 0c332aa2d2 user: js tags: trunk
2013-12-25
14:34
PLATFORMS.md: Add a section about forwarding. check-in: 5f2b90222e user: js tags: trunk
Changes

Modified src/OFObject.m from [e741aba66a] to [a55f4922cc].    [diff]

Modified src/forwarding/apple-forwarding-arm.S from [71a0f74942] to [a9ffa0e379].    [diff]

Modified src/forwarding/apple-forwarding-arm64.S from [bd6425afa7] to [8cba7c9e68].    [diff]

Modified src/forwarding/apple-forwarding-i386.S from [8a15676211] to [d1c0103e06].    [diff]

Modified src/forwarding/apple-forwarding-ppc.S from [a34378a6db] to [744faa6cfb].    [diff]

Modified src/forwarding/apple-forwarding-x86_64.S from [b4c76d8ed5] to [541a8f5d95].    [diff]

Modified src/forwarding/forwarding-amd64-elf.S from [6c6e2ed7b7] to [55f7a74c19].    [diff]

Modified src/forwarding/forwarding-arm-elf.S from [78ba43410f] to [81907b6d08].    [diff]

Modified src/forwarding/forwarding-mips-elf.S from [ee8ef78a0b] to [685a078982].    [diff]

Modified src/forwarding/forwarding-ppc-elf.S from [8b57a5618e] to [09cadab137].    [diff]

Modified src/forwarding/forwarding-x86-elf.S from [79691a7caf] to [0ee5fb8e08].    [diff]

Modified src/forwarding/forwarding-x86-win32.S from [972226c4ef] to [8abd7a71aa].    [diff]

Modified src/runtime/lookup-asm/lookup-asm-amd64-elf.S from [0076c67932] to [6dd8fa4deb].    [diff]

Modified src/runtime/lookup-asm/lookup-asm-amd64-macho.S from [9f2fcb9422] to [9d19d61727].    [diff]

Modified src/runtime/lookup-asm/lookup-asm-arm-elf.S from [79afacfbeb] to [3a32fa73f7].    [diff]

Modified src/runtime/lookup-asm/lookup-asm-mips-elf.S from [48cdec849d] to [45689ef5fd].    [diff]

Modified src/runtime/lookup-asm/lookup-asm-ppc-elf.S from [43dfa59b3f] to [69f3a9eceb].    [diff]

Modified src/runtime/lookup-asm/lookup-asm-x86-elf.S from [537ccf37ee] to [ea4c3fd137].    [diff]

Modified src/runtime/lookup-asm/lookup-asm-x86-win32.S from [33d9469129] to [a61203a836].    [diff]

Modified src/runtime/lookup.m from [1c3a42c0f8] to [5baad6528e].    [diff]

Modified src/runtime/runtime.h from [bd61ad8aad] to [86f17c06b0].    [diff]

Modified tests/ForwardingTests.m from [9c077ad9ee] to [aba6c5c543].    [diff]