Mark SoftwareSerial::tx_pin_write as "always_inline"
Somehow gcc 4.8 doesn't inline this function, even though it is always called with constant arguments and can be reduced to just a few instructions when inlined. Adding the always_inline attribute makes gcc inline it, saving 46 bytes on the Arduino uno. gcc 4.3 already inlined this function, so there are no space savings there.
This commit is contained in:
parent
ba3f733493
commit
dd21593b53
|
@ -71,7 +71,7 @@ private:
|
|||
// private methods
|
||||
void recv();
|
||||
uint8_t rx_pin_read();
|
||||
void tx_pin_write(uint8_t pin_state);
|
||||
void tx_pin_write(uint8_t pin_state) __attribute__((__always_inline__));
|
||||
void setTX(uint8_t transmitPin);
|
||||
void setRX(uint8_t receivePin);
|
||||
void setRxIntMsk(bool enable);
|
||||
|
|
Loading…
Reference in New Issue