Status: New
Owner: robhamerling
Labels: Type-Enhancement Priority-Medium Component-Device

New issue 159 by sebastien.lelong: Jallib device files optimization
http://code.google.com/p/jallib/issues/detail?id=159

Gordon says:

"""
A suggestion to simplify and optimize the Jallib device files:

Currently there are things like:

procedure _PORTA_flush() is
pragma inline
PORTA = _PORTA_shadow
end procedure

procedure PORTA'put(byte in x) is
pragma inline
_PORTA_shadow = x
_PORTA_flush()
end procedure

You can clarify things by getting rid of the flush. You can speed things up
by using "at" in the argument. The "at" will make it shorter and faster
assembler. Therefore the above becomes:

procedure PORTA'put(byte in x at _PORTA_shadow ) is
pragma inline
PORTA = _PORTA_shadow
end procedure

The "at" means that the x value will be put directly into the _PORTA_shadow
register rather than it going into a temp and that temp being copied into
the _PORTA_shadow register.

"at" is currently being used for the pins, but it got missed for the ports
"""

then, about 18F family:

"""
I'm just starting to look at the Pic18 devices. It looks like you can do
the same thing to speed things up.



procedure PORTA'put(byte in x) is
pragma inline
LATA = x
end procedure

could be changed to

procedure PORTA'put(byte in x at LATA) is
pragma inline
end procedure

Would this be optimized away?
"""

--
You received this message because you are subscribed to the Google Groups 
"jallib" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/jallib?hl=en.

Reply via email to