This is the mail archive of the ecos-patches@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug 1001275] Cortex-M (armV7) architecture endian instructions / Applied on lwIP


Please do not reply to this email. Use the web interface provided at:
http://bugs.ecos.sourceware.org/show_bug.cgi?id=1001275

--- Comment #8 from Ilija Kocho <ilijak@siva.com.mk> 2011-08-21 14:46:27 BST ---
Sergei

I did testing and I have working code, but I would postpone patch generation
because of the question below.

(In reply to comment #6)
> (In reply to comment #5)
> > (In reply to comment #4)
> > Personally I would like CYGARC_SWAPxx(), but since CYG_SWAPxx() are
> > already present in hal_endian.h let's use them. It will propagate REV
> > instructions in other parts of code that may benefit (i guess it is
> > safe).

hal_endian.h has a provision CYGBLD_HAL_ENDIAN_H for include of architecture
specific CYGARC_SWAPxx(). This is what I put in hal_cortexm.cdl:

    define_proc {
        puts $::cdl_system_header "#define CYGBLD_HAL_ENDIAN_H \
                <cyg/hal/cortexm_endian.h>"
    }

Now cortexm_endian.h is a new header that contains the CYGARC_SWAPxx() macros
and corresponding inline functions. I added this file in order to avoid include
of complete hal_arch.h

For me it is OK to add this header in arch/include but there may be a better
proposal. Please comment.

Ilija

-- 
Configure bugmail: http://bugs.ecos.sourceware.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]