ਮਾਈਕ੍ਰੋਚਿੱਪ MPLAB XC8 C ਕੰਪਾਈਲਰ ਸਾਫਟਵੇਅਰ
ਮਾਈਕ੍ਰੋਚਿੱਪ AVR ਡਿਵਾਈਸਾਂ ਨੂੰ ਨਿਸ਼ਾਨਾ ਬਣਾਉਣ ਵੇਲੇ ਇਸ ਦਸਤਾਵੇਜ਼ ਵਿੱਚ MPLAB XC8 C ਕੰਪਾਈਲਰ ਨਾਲ ਸਬੰਧਤ ਮਹੱਤਵਪੂਰਨ ਜਾਣਕਾਰੀ ਸ਼ਾਮਲ ਹੈ।
ਕਿਰਪਾ ਕਰਕੇ ਇਸ ਸੌਫਟਵੇਅਰ ਨੂੰ ਚਲਾਉਣ ਤੋਂ ਪਹਿਲਾਂ ਇਸਨੂੰ ਪੜ੍ਹੋ। ਜੇਕਰ ਤੁਸੀਂ 8-ਬਿੱਟ ਤਸਵੀਰ ਡਿਵਾਈਸਾਂ ਲਈ ਕੰਪਾਈਲਰ ਦੀ ਵਰਤੋਂ ਕਰ ਰਹੇ ਹੋ ਤਾਂ PIC ਦਸਤਾਵੇਜ਼ ਲਈ MPLAB XC8 C ਕੰਪਾਈਲਰ ਰੀਲੀਜ਼ ਨੋਟਸ ਦੇਖੋ।
ਵੱਧview
ਜਾਣ-ਪਛਾਣ
ਮਾਈਕ੍ਰੋਚਿੱਪ MPLAB® XC8 C ਕੰਪਾਈਲਰ ਦੇ ਇਸ ਰੀਲੀਜ਼ ਵਿੱਚ ਕਈ ਨਵੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ, ਬੱਗ ਫਿਕਸ ਅਤੇ ਨਵੀਂ ਡਿਵਾਈਸ ਸਹਾਇਤਾ ਸ਼ਾਮਲ ਹੈ।
ਬਣਾਉਣ ਦੀ ਮਿਤੀ
ਇਸ ਕੰਪਾਈਲਰ ਸੰਸਕਰਣ ਦੀ ਅਧਿਕਾਰਤ ਬਿਲਡ ਮਿਤੀ 3 ਜੁਲਾਈ 2022 ਹੈ।
ਪਿਛਲਾ ਸੰਸਕਰਣ
ਪਿਛਲਾ MPLAB XC8 C ਕੰਪਾਈਲਰ ਸੰਸਕਰਣ 2.39 ਸੀ, ਇੱਕ ਕਾਰਜਸ਼ੀਲ ਸੁਰੱਖਿਆ ਕੰਪਾਈਲਰ, 27 ਜਨਵਰੀ 2022 ਨੂੰ ਬਣਾਇਆ ਗਿਆ ਸੀ। ਪਿਛਲਾ ਮਿਆਰੀ ਕੰਪਾਈਲਰ ਸੰਸਕਰਣ 2.36 ਸੀ, ਜੋ 27 ਜਨਵਰੀ 2022 ਨੂੰ ਬਣਾਇਆ ਗਿਆ ਸੀ।
ਕਾਰਜਾਤਮਕ ਸੁਰੱਖਿਆ ਮੈਨੂਅਲ
MPLAB XC ਕੰਪਾਈਲਰਾਂ ਲਈ ਇੱਕ ਫੰਕਸ਼ਨਲ ਸੇਫਟੀ ਮੈਨੂਅਲ ਦਸਤਾਵੇਜ਼ ਪੈਕੇਜ ਵਿੱਚ ਉਪਲਬਧ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਤੁਸੀਂ ਇੱਕ ਕਾਰਜਸ਼ੀਲ ਸੁਰੱਖਿਆ ਲਾਇਸੈਂਸ ਖਰੀਦਦੇ ਹੋ।
ਕੰਪੋਨੈਂਟ ਲਾਇਸੰਸ ਅਤੇ ਸੰਸਕਰਣ
AVR MCUs ਟੂਲਸ ਲਈ MPLAB® XC8 C ਕੰਪਾਈਲਰ GNU ਜਨਰਲ ਪਬਲਿਕ ਲਾਈਸੈਂਸ (GPL) ਦੇ ਤਹਿਤ ਲਿਖਿਆ ਅਤੇ ਵੰਡਿਆ ਜਾਂਦਾ ਹੈ ਜਿਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਇਸਦਾ ਸਰੋਤ ਕੋਡ ਮੁਫਤ ਵਿੱਚ ਵੰਡਿਆ ਗਿਆ ਹੈ ਅਤੇ ਜਨਤਾ ਲਈ ਉਪਲਬਧ ਹੈ। GNU GPL ਦੇ ਅਧੀਨ ਟੂਲਸ ਲਈ ਸਰੋਤ ਕੋਡ ਮਾਈਕ੍ਰੋਚਿੱਪ ਤੋਂ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਡਾਊਨਲੋਡ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ webਸਾਈਟ. ਤੁਸੀਂ ਵਿੱਚ GNU GPL ਪੜ੍ਹ ਸਕਦੇ ਹੋ file ਨਾਮ ਤੁਹਾਡੀ ਇੰਸਟਾਲ ਡਾਇਰੈਕਟਰੀ ਦੀ ਸਬ-ਡਾਇਰੈਕਟਰੀ ਸਥਿਤ ਹੈ। GPL ਦੇ ਅਧੀਨ ਸਿਧਾਂਤਾਂ ਦੀ ਇੱਕ ਆਮ ਚਰਚਾ ਇੱਥੇ ਪਾਈ ਜਾ ਸਕਦੀ ਹੈ। ਸਿਰਲੇਖ ਲਈ ਸਹਾਇਤਾ ਕੋਡ ਪ੍ਰਦਾਨ ਕੀਤਾ ਗਿਆ ਹੈ files, ਲਿੰਕਰ ਸਕ੍ਰਿਪਟਾਂ, ਅਤੇ ਰਨਟਾਈਮ ਲਾਇਬ੍ਰੇਰੀਆਂ ਮਲਕੀਅਤ ਕੋਡ ਹਨ ਅਤੇ GPL ਦੇ ਅਧੀਨ ਨਹੀਂ ਆਉਂਦੇ ਹਨ।
ਇਹ ਕੰਪਾਈਲਰ GCC ਸੰਸਕਰਣ 5.4.0, binutils ਸੰਸਕਰਣ 2.26, ਅਤੇ avr-libc ਸੰਸਕਰਣ 2.0.0 ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ।
ਸਿਸਟਮ ਦੀਆਂ ਲੋੜਾਂ
MPLAB XC8 C ਕੰਪਾਈਲਰ ਅਤੇ ਲਾਇਸੈਂਸਿੰਗ ਸੌਫਟਵੇਅਰ ਜੋ ਇਸ ਦੁਆਰਾ ਵਰਤੇ ਜਾਂਦੇ ਹਨ, ਕਈ ਤਰ੍ਹਾਂ ਦੇ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮਾਂ ਲਈ ਉਪਲਬਧ ਹਨ, ਜਿਸ ਵਿੱਚ ਹੇਠਾਂ ਦਿੱਤੇ 64-ਬਿੱਟ ਸੰਸਕਰਣ ਸ਼ਾਮਲ ਹਨ: Microsoft Windows 10 ਦੇ ਪੇਸ਼ੇਵਰ ਐਡੀਸ਼ਨ; ਉਬੰਟੂ 18.04; ਅਤੇ macOS 10.15.5. ਵਿੰਡੋਜ਼ ਲਈ ਬਾਈਨਰੀਆਂ ਕੋਡ-ਦਸਤਖਤ ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ। ਮੈਕ ਲਈ ਬਾਈਨਰੀਆਂ ਕੋਡ-ਦਸਤਖਤ ਅਤੇ ਨੋਟਰਾਈਜ਼ ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ।
ਜੇਕਰ ਤੁਸੀਂ ਇੱਕ ਨੈੱਟਵਰਕ ਲਾਇਸੈਂਸ ਸਰਵਰ ਚਲਾ ਰਹੇ ਹੋ, ਤਾਂ ਲਾਇਸੈਂਸ ਸਰਵਰ ਦੀ ਮੇਜ਼ਬਾਨੀ ਕਰਨ ਲਈ ਕੰਪਾਈਲਰ ਦੁਆਰਾ ਸਮਰਥਿਤ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਵਾਲੇ ਕੰਪਿਊਟਰ ਹੀ ਵਰਤੇ ਜਾ ਸਕਦੇ ਹਨ। xclm ਸੰਸਕਰਣ 2.0 ਦੇ ਅਨੁਸਾਰ, ਨੈਟਵਰਕ ਲਾਈਸੈਂਸ ਸਰਵਰ ਨੂੰ ਮਾਈਕ੍ਰੋਸਾਫਟ ਵਿੰਡੋਜ਼ ਸਰਵਰ ਪਲੇਟਫਾਰਮ 'ਤੇ ਸਥਾਪਿਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਪਰ ਲਾਇਸੈਂਸ ਸਰਵਰ ਨੂੰ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਦੇ ਸਰਵਰ ਸੰਸਕਰਣ 'ਤੇ ਚਲਾਉਣ ਦੀ ਜ਼ਰੂਰਤ ਨਹੀਂ ਹੈ।
ਜੰਤਰ ਸਹਿਯੋਗੀ
ਇਹ ਕੰਪਾਈਲਰ ਰੀਲੀਜ਼ ਦੇ ਸਮੇਂ ਜਾਣੇ ਜਾਂਦੇ ਸਾਰੇ 8-ਬਿੱਟ AVR MCU ਡਿਵਾਈਸਾਂ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ। ਸਾਰੇ ਸਮਰਥਿਤ ਡਿਵਾਈਸਾਂ ਦੀ ਸੂਚੀ ਲਈ (ਕੰਪਾਈਲਰ ਦੀ ਡੌਕ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ) ਵੇਖੋ। ਇਹ files ਹਰੇਕ ਡਿਵਾਈਸ ਲਈ ਸੰਰਚਨਾ ਬਿੱਟ ਸੈਟਿੰਗਾਂ ਨੂੰ ਵੀ ਸੂਚੀਬੱਧ ਕਰਦਾ ਹੈ।
ਐਡੀਸ਼ਨ ਅਤੇ ਲਾਇਸੰਸ ਅੱਪਗਰੇਡ
MPLAB XC8 ਕੰਪਾਈਲਰ ਨੂੰ ਇੱਕ ਲਾਇਸੰਸਸ਼ੁਦਾ (PRO) ਜਾਂ ਬਿਨਾਂ ਲਾਇਸੈਂਸ (ਮੁਫ਼ਤ) ਉਤਪਾਦ ਵਜੋਂ ਕਿਰਿਆਸ਼ੀਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਤੁਹਾਨੂੰ ਆਪਣੇ ਕੰਪਾਈਲਰ ਨੂੰ ਲਾਇਸੈਂਸ ਦੇਣ ਲਈ ਇੱਕ ਐਕਟੀਵੇਸ਼ਨ ਕੁੰਜੀ ਖਰੀਦਣ ਦੀ ਲੋੜ ਹੈ। ਇੱਕ ਲਾਇਸੰਸ ਮੁਫਤ ਉਤਪਾਦ ਦੀ ਤੁਲਨਾ ਵਿੱਚ ਉੱਚ ਪੱਧਰ ਦੇ ਅਨੁਕੂਲਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। ਬਿਨਾਂ ਲਾਇਸੈਂਸ ਵਾਲੇ ਕੰਪਾਈਲਰ ਨੂੰ ਬਿਨਾਂ ਲਾਇਸੈਂਸ ਦੇ ਅਣਮਿੱਥੇ ਸਮੇਂ ਲਈ ਚਲਾਇਆ ਜਾ ਸਕਦਾ ਹੈ।
ਇੱਕ MPLAB XC8 ਫੰਕਸ਼ਨਲ ਸੇਫਟੀ ਕੰਪਾਈਲਰ ਨੂੰ ਮਾਈਕ੍ਰੋਚਿੱਪ ਤੋਂ ਖਰੀਦੇ ਗਏ ਇੱਕ ਫੰਕਸ਼ਨਲ ਸੇਫਟੀ ਲਾਇਸੈਂਸ ਨਾਲ ਐਕਟੀਵੇਟ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। ਕੰਪਾਈਲਰ ਇਸ ਲਾਇਸੈਂਸ ਤੋਂ ਬਿਨਾਂ ਕੰਮ ਨਹੀਂ ਕਰੇਗਾ। ਇੱਕ ਵਾਰ ਕਿਰਿਆਸ਼ੀਲ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਤੁਸੀਂ ਕਿਸੇ ਵੀ ਅਨੁਕੂਲਨ ਪੱਧਰ ਦੀ ਚੋਣ ਕਰ ਸਕਦੇ ਹੋ ਅਤੇ ਸਾਰੀਆਂ ਕੰਪਾਈਲਰ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ। MPLAB XC ਫੰਕਸ਼ਨਲ ਸੇਫਟੀ ਕੰਪਾਈਲਰ ਦਾ ਇਹ ਰੀਲੀਜ਼ ਨੈੱਟਵਰਕ ਸਰਵਰ ਲਾਈਸੈਂਸ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ।
ਲਾਇਸੈਂਸ ਦੀਆਂ ਕਿਸਮਾਂ ਅਤੇ ਲਾਇਸੈਂਸ ਦੇ ਨਾਲ ਕੰਪਾਈਲਰ ਦੀ ਸਥਾਪਨਾ ਬਾਰੇ ਜਾਣਕਾਰੀ ਲਈ MPLAB XC C ਕੰਪਾਈਲਰ (DS50002059) ਨੂੰ ਸਥਾਪਿਤ ਕਰਨਾ ਅਤੇ ਲਾਇਸੈਂਸ ਦੇਣਾ ਦਸਤਾਵੇਜ਼ ਦੇਖੋ।
ਇੰਸਟਾਲੇਸ਼ਨ ਅਤੇ ਸਰਗਰਮ
ਇਸ ਕੰਪਾਈਲਰ ਵਿੱਚ ਸ਼ਾਮਲ ਨਵੀਨਤਮ ਲਾਇਸੈਂਸ ਮੈਨੇਜਰ ਬਾਰੇ ਮਹੱਤਵਪੂਰਨ ਜਾਣਕਾਰੀ ਲਈ ਮਾਈਗ੍ਰੇਸ਼ਨ ਮੁੱਦੇ ਅਤੇ ਸੀਮਾਵਾਂ ਸੈਕਸ਼ਨ ਵੀ ਦੇਖੋ।
ਜੇਕਰ MPLAB IDE ਦੀ ਵਰਤੋਂ ਕਰ ਰਹੇ ਹੋ, ਤਾਂ ਇਸ ਟੂਲ ਨੂੰ ਸਥਾਪਿਤ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਨਵੀਨਤਮ MPLAB X IDE ਸੰਸਕਰਣ 5.0 ਜਾਂ ਇਸ ਤੋਂ ਬਾਅਦ ਦੇ ਸੰਸਕਰਣ ਨੂੰ ਸਥਾਪਿਤ ਕਰਨਾ ਯਕੀਨੀ ਬਣਾਓ। ਕੰਪਾਈਲਰ ਸਥਾਪਤ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ IDE ਨੂੰ ਛੱਡ ਦਿਓ। .exe (Windows), .run (Linux) ਜਾਂ ਐਪ (macOS) ਕੰਪਾਈਲਰ ਇੰਸਟਾਲਰ ਐਪਲੀਕੇਸ਼ਨ ਚਲਾਓ, ਜਿਵੇਂ ਕਿ XC8-1.00.11403-windows.exe ਅਤੇ ਸਕ੍ਰੀਨ 'ਤੇ ਨਿਰਦੇਸ਼ਾਂ ਦੀ ਪਾਲਣਾ ਕਰੋ।
ਡਿਫਾਲਟ ਇੰਸਟਾਲੇਸ਼ਨ ਡਾਇਰੈਕਟਰੀ ਦੀ ਸਿਫਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਜੇਕਰ ਤੁਸੀਂ ਲੀਨਕਸ ਦੀ ਵਰਤੋਂ ਕਰ ਰਹੇ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ ਕੰਪਾਈਲਰ ਨੂੰ ਟਰਮੀਨਲ ਅਤੇ ਰੂਟ ਖਾਤੇ ਤੋਂ ਇੰਸਟਾਲ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ। ਪ੍ਰਸ਼ਾਸਕ ਦੇ ਅਧਿਕਾਰਾਂ ਦੇ ਨਾਲ ਇੱਕ macOS ਖਾਤੇ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸਥਾਪਿਤ ਕਰੋ।
ਸਰਗਰਮੀ ਹੁਣ ਇੰਸਟਾਲੇਸ਼ਨ ਲਈ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਵਧੇਰੇ ਜਾਣਕਾਰੀ ਲਈ MPLAB® XC C ਕੰਪਾਈਲਰ (DS52059) ਲਈ ਦਸਤਾਵੇਜ਼ ਲਾਇਸੈਂਸ ਮੈਨੇਜਰ ਦੇਖੋ।
ਜੇਕਰ ਤੁਸੀਂ ਮੁਲਾਂਕਣ ਲਾਇਸੰਸ ਦੇ ਤਹਿਤ ਕੰਪਾਈਲਰ ਚਲਾਉਣ ਦੀ ਚੋਣ ਕਰਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ ਹੁਣ ਸੰਕਲਨ ਦੇ ਦੌਰਾਨ ਇੱਕ ਚੇਤਾਵਨੀ ਮਿਲੇਗੀ ਜਦੋਂ ਤੁਸੀਂ ਆਪਣੀ ਮੁਲਾਂਕਣ ਦੀ ਮਿਆਦ ਦੇ ਅੰਤ ਦੇ 14 ਦਿਨਾਂ ਦੇ ਅੰਦਰ ਹੋਵੋਗੇ। ਇਹੀ ਚੇਤਾਵਨੀ ਜਾਰੀ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜੇਕਰ ਤੁਸੀਂ ਆਪਣੀ HPA ਗਾਹਕੀ ਦੀ ਸਮਾਪਤੀ ਦੇ 14 ਦਿਨਾਂ ਦੇ ਅੰਦਰ ਹੋ।
XC ਨੈੱਟਵਰਕ ਲਾਇਸੈਂਸ ਸਰਵਰ ਇੱਕ ਵੱਖਰਾ ਇੰਸਟਾਲਰ ਹੈ ਅਤੇ ਸਿੰਗਲ-ਯੂਜ਼ਰ ਕੰਪਾਈਲਰ ਇੰਸਟੌਲਰ ਵਿੱਚ ਸ਼ਾਮਲ ਨਹੀਂ ਹੈ।
ਐਕਸਸੀ ਲਾਇਸੈਂਸ ਮੈਨੇਜਰ ਹੁਣ ਫਲੋਟਿੰਗ ਨੈੱਟਵਰਕ ਲਾਇਸੈਂਸਾਂ ਦੀ ਰੋਮਿੰਗ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ। ਮੋਬਾਈਲ ਉਪਭੋਗਤਾਵਾਂ ਦੇ ਉਦੇਸ਼ ਨਾਲ, ਇਹ ਵਿਸ਼ੇਸ਼ਤਾ ਇੱਕ ਫਲੋਟਿੰਗ ਲਾਇਸੈਂਸ ਨੂੰ ਥੋੜੇ ਸਮੇਂ ਲਈ ਨੈਟਵਰਕ ਤੋਂ ਬਾਹਰ ਜਾਣ ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ। ਇਸ ਵਿਸ਼ੇਸ਼ਤਾ ਦੀ ਵਰਤੋਂ ਕਰਕੇ, ਤੁਸੀਂ ਨੈੱਟਵਰਕ ਤੋਂ ਡਿਸਕਨੈਕਟ ਕਰ ਸਕਦੇ ਹੋ ਅਤੇ ਫਿਰ ਵੀ ਆਪਣੇ MPLAB XC ਕੰਪਾਈਲਰ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ। ਇਸ ਵਿਸ਼ੇਸ਼ਤਾ ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ XCLM ਸਥਾਪਨਾ ਦਾ ਦਸਤਾਵੇਜ਼ ਫੋਲਡਰ ਦੇਖੋ। MPLAB X IDE ਵਿੱਚ ਰੋਮਿੰਗ ਨੂੰ ਦ੍ਰਿਸ਼ਟੀਗਤ ਰੂਪ ਵਿੱਚ ਪ੍ਰਬੰਧਿਤ ਕਰਨ ਲਈ ਇੱਕ ਲਾਇਸੈਂਸ ਵਿੰਡੋ (ਟੂਲਜ਼ > ਲਾਇਸੈਂਸ) ਸ਼ਾਮਲ ਹੈ।
ਇੰਸਟਾਲੇਸ਼ਨ ਮੁੱਦਿਆਂ ਨੂੰ ਹੱਲ ਕਰਨਾ
ਜੇਕਰ ਤੁਹਾਨੂੰ ਕਿਸੇ ਵੀ ਵਿੰਡੋਜ਼ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਦੇ ਅਧੀਨ ਕੰਪਾਈਲਰ ਨੂੰ ਸਥਾਪਿਤ ਕਰਨ ਵਿੱਚ ਮੁਸ਼ਕਲ ਆਉਂਦੀ ਹੈ, ਤਾਂ ਹੇਠਾਂ ਦਿੱਤੇ ਸੁਝਾਵਾਂ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ।
- ਇੱਕ ਪ੍ਰਬੰਧਕ ਦੇ ਤੌਰ ਤੇ ਇੰਸਟਾਲ ਚਲਾਓ.
- ਇੰਸਟਾਲਰ ਐਪਲੀਕੇਸ਼ਨ ਦੀਆਂ ਅਨੁਮਤੀਆਂ ਨੂੰ 'ਪੂਰਾ ਕੰਟਰੋਲ' 'ਤੇ ਸੈੱਟ ਕਰੋ। (ਸੱਜਾ-ਕਲਿੱਕ ਕਰੋ file, ਵਿਸ਼ੇਸ਼ਤਾ ਚੁਣੋ, ਸੁਰੱਖਿਆ ਟੈਬ, ਉਪਭੋਗਤਾ ਚੁਣੋ, ਸੰਪਾਦਨ ਕਰੋ।)
- ਟੈਂਪ ਫੋਲਡਰ ਦੀਆਂ ਅਨੁਮਤੀਆਂ ਨੂੰ "ਪੂਰਾ ਨਿਯੰਤਰਣ!
ਟੈਂਪ ਫੋਲਡਰ ਦੀ ਸਥਿਤੀ ਦਾ ਪਤਾ ਲਗਾਉਣ ਲਈ, Run ਕਮਾਂਡ (Windows logo key + R) ਵਿੱਚ %temp% ਟਾਈਪ ਕਰੋ। ਇਸ ਨਾਲ ਏ file ਐਕਸਪਲੋਰਰ ਡਾਇਲਾਗ ਉਸ ਡਾਇਰੈਕਟਰੀ ਨੂੰ ਦਿਖਾ ਰਿਹਾ ਹੈ ਅਤੇ ਤੁਹਾਨੂੰ ਉਸ ਫੋਲਡਰ ਦਾ ਮਾਰਗ ਨਿਰਧਾਰਤ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦੇਵੇਗਾ।
ਕੰਪਾਈਲਰ ਦਸਤਾਵੇਜ਼ੀ
ਕੰਪਾਈਲਰ ਦੇ ਉਪਭੋਗਤਾ ਦੀਆਂ ਗਾਈਡਾਂ ਨੂੰ HTML ਪੰਨੇ ਤੋਂ ਖੋਲ੍ਹਿਆ ਜਾ ਸਕਦਾ ਹੈ ਜੋ ਤੁਹਾਡੇ ਬ੍ਰਾਊਜ਼ਰ ਵਿੱਚ ਖੁੱਲ੍ਹਦਾ ਹੈ ਜਦੋਂ MPLAB X IDE ਡੈਸ਼ਬੋਰਡ ਵਿੱਚ ਨੀਲੇ ਹੈਲਪ ਬਟਨ ਨੂੰ ਕਲਿੱਕ ਕਰਦੇ ਹਨ, ਜਿਵੇਂ ਕਿ ਸਕ੍ਰੀਨਸ਼ੌਟ ਵਿੱਚ ਦਰਸਾਇਆ ਗਿਆ ਹੈ।
ਜੇਕਰ ਤੁਸੀਂ 8-ਬਿੱਟ AVR ਟੀਚਿਆਂ ਲਈ ਨਿਰਮਾਣ ਕਰ ਰਹੇ ਹੋ, ਤਾਂ AVR® MCU ਲਈ MPLAB® XC8 C ਕੰਪਾਈਲਰ ਉਪਭੋਗਤਾ ਦੀ ਗਾਈਡ ਵਿੱਚ ਉਹਨਾਂ ਕੰਪਾਈਲਰ ਵਿਕਲਪਾਂ ਅਤੇ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬਾਰੇ ਜਾਣਕਾਰੀ ਸ਼ਾਮਲ ਹੈ ਜੋ ਇਸ ਆਰਕੀਟੈਕਚਰ 'ਤੇ ਲਾਗੂ ਹਨ।
ਗਾਹਕ ਸਹਾਇਤਾ
ਮਾਈਕ੍ਰੋਚਿੱਪ ਇਸ ਕੰਪਾਈਲਰ ਸੰਸਕਰਣ ਦੇ ਸੰਬੰਧ ਵਿੱਚ ਬੱਗ ਰਿਪੋਰਟਾਂ, ਸੁਝਾਵਾਂ ਜਾਂ ਟਿੱਪਣੀਆਂ ਦਾ ਸੁਆਗਤ ਕਰਦੀ ਹੈ। ਕਿਰਪਾ ਕਰਕੇ ਕਿਸੇ ਵੀ ਬੱਗ ਰਿਪੋਰਟਾਂ ਜਾਂ ਵਿਸ਼ੇਸ਼ਤਾ ਬੇਨਤੀਆਂ ਨੂੰ ਸਪੋਰਟ ਸਿਸਟਮ ਰਾਹੀਂ ਨਿਰਦੇਸ਼ਿਤ ਕਰੋ।
ਦਸਤਾਵੇਜ਼ੀ ਅੱਪਡੇਟ
MPLAB XC8 ਦਸਤਾਵੇਜ਼ਾਂ ਦੇ ਆਨ-ਲਾਈਨ ਅਤੇ ਅੱਪ-ਟੂ-ਡੇਟ ਸੰਸਕਰਣਾਂ ਲਈ, ਕਿਰਪਾ ਕਰਕੇ ਮਾਈਕ੍ਰੋਚਿੱਪ ਦੇ ਔਨਲਾਈਨ ਤਕਨੀਕੀ ਦਸਤਾਵੇਜ਼ਾਂ 'ਤੇ ਜਾਓ। webਸਾਈਟ.
ਇਸ ਰੀਲੀਜ਼ ਵਿੱਚ ਨਵੇਂ ਜਾਂ ਅੱਪਡੇਟ ਕੀਤੇ AVR ਦਸਤਾਵੇਜ਼:
- MUSL ਕਾਪੀਰਾਈਟ ਨੋਟਿਸ
- MPLAB XC C ਕੰਪਾਈਲਰ (ਸੰਸ਼ੋਧਨ M) ਨੂੰ ਸਥਾਪਿਤ ਕਰਨਾ ਅਤੇ ਲਾਇਸੈਂਸ ਦੇਣਾ
- ਐਮਬੈੱਡਡ ਇੰਜੀਨੀਅਰਾਂ ਲਈ MPLAB XC8 ਉਪਭੋਗਤਾ ਦੀ ਗਾਈਡ - AVR MCUs (ਰਿਵੀਜ਼ਨ A)
- AVR MCU (ਸੰਸ਼ੋਧਨ F) ਲਈ MPLAB XC8 C ਕੰਪਾਈਲਰ ਉਪਭੋਗਤਾ ਦੀ ਗਾਈਡ
- ਮਾਈਕ੍ਰੋਚਿੱਪ ਯੂਨੀਫਾਈਡ ਸਟੈਂਡਰਡ ਲਾਇਬ੍ਰੇਰੀ ਰੈਫਰੈਂਸ ਗਾਈਡ (ਸੰਸ਼ੋਧਨ ਬੀ)
ਮਾਈਕ੍ਰੋਚਿੱਪ ਯੂਨੀਫਾਈਡ ਸਟੈਂਡਰਡ ਲਾਇਬ੍ਰੇਰੀ ਰੈਫਰੈਂਸ ਗਾਈਡ ਮਾਈਕ੍ਰੋਚਿੱਪ ਯੂਨੀਫਾਈਡ ਸਟੈਂਡਰਡ ਲਾਇਬ੍ਰੇਰੀ ਦੁਆਰਾ ਪਰਿਭਾਸ਼ਿਤ ਫੰਕਸ਼ਨਾਂ ਦੇ ਵਿਵਹਾਰ ਅਤੇ ਇੰਟਰਫੇਸ ਦੇ ਨਾਲ-ਨਾਲ ਲਾਇਬ੍ਰੇਰੀ ਕਿਸਮਾਂ ਅਤੇ ਮੈਕਰੋਜ਼ ਦੀ ਉਦੇਸ਼ਿਤ ਵਰਤੋਂ ਦਾ ਵਰਣਨ ਕਰਦੀ ਹੈ। ਇਸ ਵਿੱਚੋਂ ਕੁਝ ਜਾਣਕਾਰੀ ਪਹਿਲਾਂ AVR® MCU ਲਈ MPLAB® XC8 C ਕੰਪਾਈਲਰ ਉਪਭੋਗਤਾ ਦੀ ਗਾਈਡ ਵਿੱਚ ਸ਼ਾਮਲ ਸੀ। ਡਿਵਾਈਸ-ਵਿਸ਼ੇਸ਼ ਲਾਇਬ੍ਰੇਰੀ ਜਾਣਕਾਰੀ ਅਜੇ ਵੀ ਇਸ ਕੰਪਾਈਲਰ ਗਾਈਡ ਵਿੱਚ ਸ਼ਾਮਲ ਹੈ।
ਜੇਕਰ ਤੁਸੀਂ ਹੁਣੇ ਹੀ 8-ਬਿੱਟ ਡਿਵਾਈਸਾਂ ਅਤੇ MPLAB XC8 C ਕੰਪਾਈਲਰ ਨਾਲ ਸ਼ੁਰੂਆਤ ਕਰ ਰਹੇ ਹੋ, ਤਾਂ MPLAB® XC8 ਯੂਜ਼ਰ! ਦੀ ਗਾਈਡ ਫਾਰ ਏਮਬੇਡਡ ਇੰਜੀਨੀਅਰ - AVR® MCUs (DS50003108) ਕੋਲ MPLAB X IDE ਵਿੱਚ ਪ੍ਰੋਜੈਕਟ ਸਥਾਪਤ ਕਰਨ ਅਤੇ ਕੋਡ ਲਿਖਣ ਬਾਰੇ ਜਾਣਕਾਰੀ ਹੈ। ਤੁਹਾਡੇ ਪਹਿਲੇ MPLAB XC8 C ਪ੍ਰੋਜੈਕਟ ਲਈ। ਇਹ ਗਾਈਡ ਹੁਣ ਕੰਪਾਈਲਰ ਨਾਲ ਵੰਡੀ ਗਈ ਹੈ।
ਹੈਮੇਟ ਯੂਜ਼ਰਸ ਗਾਈਡ ਨੂੰ ਇਸ ਰੀਲੀਜ਼ ਵਿੱਚ ਡੌਕਸ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ ਹੈ। ਇਹ ਗਾਈਡ ਉਹਨਾਂ ਲਈ ਤਿਆਰ ਕੀਤੀ ਗਈ ਹੈ ਜੋ ਹੈਮੇਟ ਨੂੰ ਇਕੱਲੇ ਐਪਲੀਕੇਸ਼ਨ ਵਜੋਂ ਚਲਾ ਰਹੇ ਹਨ।
ਨਵਾਂ ਕੀ ਹੈ
ਹੇਠਾਂ ਦਿੱਤੀਆਂ ਨਵੀਆਂ AVR-ਟਾਰਗੇਟ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਹਨ ਜਿਨ੍ਹਾਂ ਦਾ ਕੰਪਾਈਲਰ ਹੁਣ ਸਮਰਥਨ ਕਰਦਾ ਹੈ। ਉਪ-ਸਿਰਲੇਖਾਂ ਵਿੱਚ ਵਰਜਨ ਨੰਬਰ ਉਹਨਾਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦਾ ਸਮਰਥਨ ਕਰਨ ਲਈ ਪਹਿਲੇ ਕੰਪਾਈਲਰ ਸੰਸਕਰਣ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ ਜੋ ਬਾਅਦ ਵਿੱਚ ਆਉਂਦੀਆਂ ਹਨ।
ਸੰਸਕਰਣ 2.40
ਨਵੀਂ ਡਿਵਾਈਸ ਸਪੋਰਟ ਸਮਰਥਨ ਹੁਣ ਹੇਠਾਂ ਦਿੱਤੇ AVR ਭਾਗਾਂ ਲਈ ਉਪਲਬਧ ਹੈ: AT90PWM3, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR64, AVR28, AVR64, AVR32 ਅਤੇ AVR64EA48.
ਸੁਧਾਰੀ ਪ੍ਰਕਿਰਿਆ ਸੰਬੰਧੀ ਐਬਸਟਰੈਕਸ਼ਨ ਪਰੋਸੀਜਰਲ ਐਬਸਟਰੈਕਸ਼ਨ (PA) ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਟੂਲ ਵਿੱਚ ਸੁਧਾਰ ਕੀਤਾ ਗਿਆ ਹੈ ਤਾਂ ਕਿ ਇੱਕ ਫੰਕਸ਼ਨ ਕਾਲ ਇੰਸਟ੍ਰਕਸ਼ਨ (ਕਾਲ ਰੀਕਾਲ ) ) ਵਾਲੇ ਕੋਡ ਦੀ ਰੂਪਰੇਖਾ ਤਿਆਰ ਕੀਤੀ ਜਾ ਸਕੇ। ਇਹ ਉਦੋਂ ਹੀ ਵਾਪਰੇਗਾ ਜੇਕਰ ਸਟੈਕ ਦੀ ਵਰਤੋਂ ਆਰਗੂਮੈਂਟਾਂ ਨੂੰ ਪਾਸ ਕਰਨ ਜਾਂ ਫੰਕਸ਼ਨ ਤੋਂ ਵਾਪਸੀ ਮੁੱਲ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ। ਸਟੈਕ ਦੀ ਵਰਤੋਂ ਵੇਰੀਏਬਲ ਆਰਗੂਮੈਂਟ ਸੂਚੀ ਦੇ ਨਾਲ ਕਿਸੇ ਫੰਕਸ਼ਨ ਨੂੰ ਕਾਲ ਕਰਨ ਵੇਲੇ ਜਾਂ ਕਿਸੇ ਅਜਿਹੇ ਫੰਕਸ਼ਨ ਨੂੰ ਕਾਲ ਕਰਨ ਵੇਲੇ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜੋ ਇਸ ਉਦੇਸ਼ ਲਈ ਮਨੋਨੀਤ ਰਜਿਸਟਰਾਂ ਨਾਲੋਂ ਜ਼ਿਆਦਾ ਆਰਗੂਮੈਂਟ ਲੈਂਦਾ ਹੈ। ਇਸ ਵਿਸ਼ੇਸ਼ਤਾ ਨੂੰ monk-pa-outline-calls ਵਿਕਲਪ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਅਯੋਗ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜਾਂ ਵਿਧੀਗਤ ਐਬਸਟਰੈਕਸ਼ਨ ਨੂੰ ਕਿਸੇ ਵਸਤੂ ਲਈ ਪੂਰੀ ਤਰ੍ਹਾਂ ਅਯੋਗ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। file ਜਾਂ -monk-pa-on- ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਫੰਕਸ਼ਨfile ਅਤੇ -mo.-pa-on-ਫੰਕਸ਼ਨ ਕ੍ਰਮਵਾਰ, ਜਾਂ ਫੰਕਸ਼ਨਾਂ ਦੇ ਨਾਲ ਚੋਣਵੇਂ ਤੌਰ 'ਤੇ nipa ਗੁਣ ( nipa ਨਿਰਧਾਰਕ) ਦੀ ਵਰਤੋਂ ਕਰਕੇ
ਕੋਡ ਕਵਰੇਜ ਮੈਕਰੋ ਕੰਪਾਈਲਰ ਹੁਣ ਮੈਕਰੋ __CODECOV ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦਾ ਹੈ ਜੇਕਰ ਇੱਕ ਵੈਧ mcodecov ਵਿਕਲਪ ਦਿੱਤਾ ਗਿਆ ਹੈ।
ਮੈਮੋਰੀ ਰਿਜ਼ਰਵੇਸ਼ਨ ਵਿਕਲਪ xc8-cc ਡਰਾਈਵਰ ਹੁਣ -mreserve=space@start: end ਵਿਕਲਪ ਨੂੰ ਸਵੀਕਾਰ ਕਰੇਗਾ ਜਦੋਂ AVR ਟੀਚਿਆਂ ਲਈ ਨਿਰਮਾਣ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ। ਇਹ ਵਿਕਲਪ ਡੇਟਾ ਜਾਂ ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਸਪੇਸ ਵਿੱਚ ਖਾਸ ਮੈਮੋਰੀ ਰੇਂਜ ਨੂੰ ਰਾਖਵਾਂ ਰੱਖਦਾ ਹੈ, ਲਿੰਕਰ ਨੂੰ ਇਸ ਖੇਤਰ ਵਿੱਚ ਕੋਡ ਜਾਂ ਵਸਤੂਆਂ ਨੂੰ ਭਰਨ ਤੋਂ ਰੋਕਦਾ ਹੈ।
ਚੁਸਤ ਸਮਾਰਟ IO ਸਮਾਰਟ IO ਫੰਕਸ਼ਨਾਂ ਵਿੱਚ ਕਈ ਸੁਧਾਰ ਕੀਤੇ ਗਏ ਹਨ, ਜਿਸ ਵਿੱਚ ਪ੍ਰਿੰਟਫ ਕੋਰ ਕੋਡ ਵਿੱਚ ਆਮ ਟਵੀਕਸ, %n ਪਰਿਵਰਤਨ ਨਿਰਧਾਰਕ ਨੂੰ ਇੱਕ ਸੁਤੰਤਰ ਰੂਪ ਵਜੋਂ ਮੰਨਣਾ, ਮੰਗ 'ਤੇ ਵਰਾਗ ਪੌਪ ਰੁਟੀਨ ਵਿੱਚ ਲਿੰਕ ਕਰਨਾ, IO ਫੰਕਸ਼ਨ ਆਰਗੂਮੈਂਟਾਂ ਨੂੰ ਸੰਭਾਲਣ ਲਈ ਜਿੱਥੇ ਵੀ ਸੰਭਵ ਹੋ ਸਕੇ ਛੋਟੇ ਡੇਟਾ ਕਿਸਮਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਸ਼ਾਮਲ ਹੈ। , ਅਤੇ ਫੀਲਡ ਚੌੜਾਈ ਅਤੇ ਸ਼ੁੱਧਤਾ ਹੈਂਡਲਿੰਗ ਵਿੱਚ ਆਮ ਕੋਡ ਨੂੰ ਫੈਕਟਰ ਕਰਨਾ। ਇਸ ਦੇ ਨਤੀਜੇ ਵਜੋਂ ਮਹੱਤਵਪੂਰਨ ਕੋਡ ਅਤੇ ਡਾਟਾ ਬਚਤ ਹੋ ਸਕਦੀ ਹੈ, ਨਾਲ ਹੀ IO ਦੀ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਸਪੀਡ ਵੀ ਵਧ ਸਕਦੀ ਹੈ।
ਸੰਸਕਰਣ 2.39 (ਕਾਰਜਸ਼ੀਲ ਸੁਰੱਖਿਆ ਰੀਲੀਜ਼)
ਨੈੱਟਵਰਕ ਸਰਵਰ ਲਾਇਸੰਸ MPLAB XC8 ਫੰਕਸ਼ਨਲ ਸੇਫਟੀ ਕੰਪਾਈਲਰ ਦਾ ਇਹ ਰੀਲੀਜ਼ ਨੈੱਟਵਰਕ ਸਰਵਰ ਲਾਈਸੈਂਸ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ।
ਸੰਸਕਰਣ 2.36
ਕੋਈ ਨਹੀਂ।
ਸੰਸਕਰਣ 2.35
ਨਵੀਂ ਡਿਵਾਈਸ ਸਪੋਰਟ ਹੇਠਲੇ AVR ਭਾਗਾਂ ਲਈ ਸਹਾਇਤਾ ਉਪਲਬਧ ਹੈ: ATTINY3224, ATTINY3226, ATTINY3227, AVR64DD14, AVR64DD20, AVR64DD28, ਅਤੇ AVR64DD32।
ਸੰਦਰਭ ਬਦਲਣ ਵਿੱਚ ਸੁਧਾਰ ਕੀਤਾ ਗਿਆ ਹੈ ਨਵਾਂ -mcall-isr-prologues ਵਿਕਲਪ ਬਦਲਦਾ ਹੈ ਕਿ ਕਿਵੇਂ ਇੰਟਰੱਪਟ ਫੰਕਸ਼ਨ ਐਂਟਰੀ 'ਤੇ ਰਜਿਸਟਰਾਂ ਨੂੰ ਸੁਰੱਖਿਅਤ ਕਰਦੇ ਹਨ ਅਤੇ ਕਿਵੇਂ ਉਹ ਰਜਿਸਟਰਾਂ ਨੂੰ ਮੁੜ ਬਹਾਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਇੰਟਰੱਪਟ ਰੁਟੀਨ ਸਮਾਪਤ ਹੁੰਦਾ ਹੈ। ਇਹ -mcall-prologues ਵਿਕਲਪ ਦੇ ਸਮਾਨ ਤਰੀਕੇ ਨਾਲ ਕੰਮ ਕਰਦਾ ਹੈ, ਪਰ ਸਿਰਫ ਇੰਟਰੱਪਟ ਫੰਕਸ਼ਨਾਂ (ISRs) ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕਰਦਾ ਹੈ।
ਹੋਰ ਵੀ ਬਿਹਤਰ ਸੰਦਰਭ ਸਵਿਚਿੰਗ ਨਵਾਂ -mgas-isr-prologues ਵਿਕਲਪ ਛੋਟੇ ਇੰਟਰੱਪਟ ਸਰਵਿਸ ਰੂਟੀਨਾਂ ਲਈ ਤਿਆਰ ਸੰਦਰਭ ਖਾਰਸ਼ ਕੋਡ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਦਾ ਹੈ। ਜਦੋਂ ਚਾਲੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਇਹ ਵਿਸ਼ੇਸ਼ਤਾ ਰਜਿਸਟਰ ਵਰਤੋਂ ਲਈ ਅਸੈਂਬਲਰ ਕੋਲ ISR ਨੂੰ ਸਕੈਨ ਕਰੇਗੀ ਅਤੇ ਲੋੜ ਪੈਣ 'ਤੇ ਹੀ ਇਹਨਾਂ ਵਰਤੇ ਗਏ ਰਜਿਸਟਰਾਂ ਨੂੰ ਸੁਰੱਖਿਅਤ ਕਰੇਗੀ।
ਕੌਂਫਿਗਰੇਬਲ ਫਲੈਸ਼ ਮੈਪਿੰਗ AVR DA ਅਤੇ AVR DB ਪਰਿਵਾਰ ਵਿੱਚ ਕੁਝ ਡਿਵਾਈਸਾਂ ਵਿੱਚ ਇੱਕ SFR (ਉਦਾਹਰਨ ਲਈ FLMAP) ਹੁੰਦਾ ਹੈ ਜੋ ਦੱਸਦਾ ਹੈ ਕਿ ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਦੇ ਕਿਹੜੇ 32k ਭਾਗ ਨੂੰ ਡੇਟਾ ਮੈਮੋਰੀ ਵਿੱਚ ਮੈਪ ਕੀਤਾ ਜਾਵੇਗਾ। ਨਵੇਂ – mconst-data-in-config-mapped-proem ਵਿਕਲਪ ਦੀ ਵਰਤੋਂ ਲਿੰਕਰ ਨੂੰ ਇੱਕ 32k ਭਾਗ ਵਿੱਚ ਸਾਰੇ ਕੰਸ ਯੋਗ ਡੇਟਾ ਰੱਖਣ ਲਈ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ ਅਤੇ ਇਹ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਕਿ ਇਹ ਡੇਟਾ ਡੇਟਾ ਮੈਮੋਰੀ ਸਪੇਸ ਵਿੱਚ ਮੈਪ ਕੀਤਾ ਗਿਆ ਹੈ, ਸੰਬੰਧਿਤ SFR ਰਜਿਸਟਰ ਨੂੰ ਸਵੈਚਲਿਤ ਤੌਰ 'ਤੇ ਸ਼ੁਰੂ ਕਰ ਸਕਦਾ ਹੈ। , ਜਿੱਥੇ ਇਸ ਨੂੰ ਹੋਰ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਢੰਗ ਨਾਲ ਐਕਸੈਸ ਕੀਤਾ ਜਾਵੇਗਾ।
ਮਾਈਕ੍ਰੋਚਿੱਪ ਯੂਨੀਫਾਈਡ ਸਟੈਂਡਰਡ ਲਾਇਬ੍ਰੇਰੀਆਂ ਸਾਰੇ MPLAB XC ਕੰਪਾਈਲਰ ਇੱਕ ਮਾਈਕ੍ਰੋਚਿੱਪ ਯੂਨੀਫਾਈਡ ਸਟੈਂਡਰਡ ਲਾਇਬ੍ਰੇਰੀ ਨੂੰ ਸਾਂਝਾ ਕਰਨਗੇ, ਜੋ ਹੁਣ MPLAB XC8 ਦੇ ਇਸ ਰੀਲੀਜ਼ ਨਾਲ ਉਪਲਬਧ ਹੈ। MPLAB® XC8 C ਕੰਪਾਈਲਰ ਉਪਭੋਗਤਾ ਦੀ ਗਾਈਡ/ਜਾਂ AVR® MCU ਵਿੱਚ ਹੁਣ ਇਹਨਾਂ ਮਿਆਰੀ ਫੰਕਸ਼ਨਾਂ ਲਈ ਦਸਤਾਵੇਜ਼ ਸ਼ਾਮਲ ਨਹੀਂ ਹਨ। ਇਹ ਜਾਣਕਾਰੀ ਹੁਣ ਮਾਈਕ੍ਰੋਚਿੱਪ ਯੂਨੀਫਾਈਡ ਸਟੈਂਡਰਡ ਲਾਇਬ੍ਰੇਰੀ ਰੈਫਰੈਂਸ ਗਾਈਡ ਵਿੱਚ ਲੱਭੀ ਜਾ ਸਕਦੀ ਹੈ। ਨੋਟ ਕਰੋ ਕਿ avr-libc ਦੁਆਰਾ ਪਹਿਲਾਂ ਪਰਿਭਾਸ਼ਿਤ ਕੁਝ ਕਾਰਜਕੁਸ਼ਲਤਾ ਹੁਣ ਉਪਲਬਧ ਨਹੀਂ ਹੈ। (ਲਾਇਬ੍ਰਰ ਦੇਖੋ):'. ਕਾਰਜਕੁਸ਼ਲਤਾ...)
ਸਮਾਰਟ ਆਈ.ਓ ਨਵੀਆਂ ਯੂਨੀਫਾਈਡ ਲਾਇਬ੍ਰੇਰੀਆਂ ਦੇ ਹਿੱਸੇ ਵਜੋਂ, ਪ੍ਰਿੰਟ ਅਤੇ ਸਕੈਨ ਪਰਿਵਾਰਾਂ ਵਿੱਚ IO ਫੰਕਸ਼ਨ ਹੁਣ ਹਰੇਕ ਬਿਲਡ 'ਤੇ ਕਸਟਮ ਤਿਆਰ ਕੀਤੇ ਗਏ ਹਨ, ਇਸ ਆਧਾਰ 'ਤੇ ਕਿ ਇਹ ਫੰਕਸ਼ਨਾਂ ਪ੍ਰੋਗਰਾਮ ਵਿੱਚ ਕਿਵੇਂ ਵਰਤੇ ਜਾਂਦੇ ਹਨ। ਇਹ ਪ੍ਰੋਗਰਾਮ ਦੁਆਰਾ ਵਰਤੇ ਜਾਣ ਵਾਲੇ ਸਰੋਤਾਂ ਨੂੰ ਕਾਫ਼ੀ ਹੱਦ ਤੱਕ ਘਟਾ ਸਕਦਾ ਹੈ।
ਸਮਾਰਟ IO ਸਹਾਇਤਾ ਵਿਕਲਪ ਸਮਾਰਟ IO ਫੰਕਸ਼ਨਾਂ (ਜਿਵੇਂ ਕਿ printf () ਜਾਂ scanf () ਲਈ ਕਾਲਾਂ ਦਾ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਦੇ ਸਮੇਂ, ਕੰਪਾਈਲਰ ਹਮੇਸ਼ਾਂ ਫਾਰਮੈਟ ਸਟ੍ਰਿੰਗ ਤੋਂ ਪਤਾ ਨਹੀਂ ਲਗਾ ਸਕਦਾ ਜਾਂ ਕਾਲ ਦੁਆਰਾ ਲੋੜੀਂਦੇ ਪਰਿਵਰਤਨ ਨਿਰਧਾਰਕ ਆਰਗੂਮੈਂਟਾਂ ਤੋਂ ਅਨੁਮਾਨ ਨਹੀਂ ਲਗਾ ਸਕਦਾ ਹੈ। ਪਹਿਲਾਂ, ਕੰਪਾਈਲਰ ਹਮੇਸ਼ਾ ਕੋਈ ਧਾਰਨਾ ਨਹੀਂ ਬਣਾਉਂਦਾ ਸੀ ਅਤੇ ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਸੀ ਕਿ ਪੂਰੀ ਤਰ੍ਹਾਂ ਕਾਰਜਸ਼ੀਲ IO ਫੰਕਸ਼ਨ ਫਾਈਨਲ ਪ੍ਰੋਗਰਾਮ ਚਿੱਤਰ ਨਾਲ ਜੁੜੇ ਹੋਏ ਸਨ। ਇੱਕ ਨਵਾਂ – msmart-io-format=fmt ਵਿਕਲਪ ਜੋੜਿਆ ਗਿਆ ਹੈ ਤਾਂ ਕਿ ਕੰਪਾਈਲਰ ਨੂੰ ਸਮਾਰਟ IO ਫੰਕਸ਼ਨਾਂ ਦੁਆਰਾ ਵਰਤੇ ਜਾਣ ਵਾਲੇ ਪਰਿਵਰਤਨ ਨਿਰਧਾਰਕਾਂ ਦੇ ਉਪਭੋਗਤਾ ਦੁਆਰਾ ਸੂਚਿਤ ਕੀਤਾ ਜਾ ਸਕੇ ਜਿਸਦੀ ਵਰਤੋਂ ਅਸਪਸ਼ਟ ਹੈ, ਬਹੁਤ ਜ਼ਿਆਦਾ ਲੰਬੇ IO ਰੂਟੀਨਾਂ ਨੂੰ ਲਿੰਕ ਹੋਣ ਤੋਂ ਰੋਕਦਾ ਹੈ। (ਵਧੇਰੇ ਵੇਰਵਿਆਂ ਲਈ ਸਮਾਰਟ-ਆਈਓ-ਫਾਰਮੈਟ ਵਿਕਲਪ ਦੇਖੋ।)
ਕਸਟਮ ਸੈਕਸ਼ਨ ਲਗਾਉਣਾ ਪਹਿਲਾਂ, -Wl, -section-start ਵਿਕਲਪ ਸਿਰਫ ਬੇਨਤੀ ਕੀਤੇ ਪਤੇ 'ਤੇ ਦਿੱਤੇ ਗਏ ਭਾਗ ਨੂੰ ਰੱਖਦਾ ਸੀ ਜਦੋਂ ਲਿੰਕਰ ਸਕ੍ਰਿਪਟ ਉਸੇ ਨਾਮ ਨਾਲ ਇੱਕ ਆਉਟਪੁੱਟ ਭਾਗ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੀ ਸੀ। ਜਦੋਂ ਅਜਿਹਾ ਨਹੀਂ ਸੀ, ਤਾਂ ਭਾਗ ਨੂੰ ਲਿੰਕਰ ਦੁਆਰਾ ਚੁਣੇ ਗਏ ਪਤੇ 'ਤੇ ਰੱਖਿਆ ਗਿਆ ਸੀ ਅਤੇ ਵਿਕਲਪ ਨੂੰ ਜ਼ਰੂਰੀ ਤੌਰ 'ਤੇ ਅਣਡਿੱਠ ਕੀਤਾ ਗਿਆ ਸੀ। ਹੁਣ ਵਿਕਲਪ ਨੂੰ ਸਾਰੇ ਕਸਟਮ ਸੈਕਸ਼ਨਾਂ ਲਈ ਸਨਮਾਨਿਤ ਕੀਤਾ ਜਾਵੇਗਾ, ਭਾਵੇਂ ਲਿੰਕਰ ਸਕ੍ਰਿਪਟ ਸੈਕਸ਼ਨ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਨਾ ਕਰੇ। ਨੋਟ ਕਰੋ, ਹਾਲਾਂਕਿ, ਮਿਆਰੀ ਭਾਗਾਂ ਲਈ, ਜਿਵੇਂ ਕਿ . ਟੈਕਸਟ, . bss ਜਾਂ . ਡੇਟਾ, ਸਭ ਤੋਂ ਵਧੀਆ ਫਿਟ ਐਲੋਕਟਰ ਦਾ ਅਜੇ ਵੀ ਉਹਨਾਂ ਦੀ ਪਲੇਸਮੈਂਟ 'ਤੇ ਪੂਰਾ ਨਿਯੰਤਰਣ ਹੋਵੇਗਾ, ਅਤੇ ਵਿਕਲਪ ਦਾ ਕੋਈ ਪ੍ਰਭਾਵ ਨਹੀਂ ਹੋਵੇਗਾ। -Wl, -Tsection=add ਵਿਕਲਪ ਦੀ ਵਰਤੋਂ ਕਰੋ, ਜਿਵੇਂ ਕਿ ਉਪਭੋਗਤਾ ਦੀ ਗਾਈਡ ਵਿੱਚ ਦੱਸਿਆ ਗਿਆ ਹੈ।
ਸੰਸਕਰਣ 2.32
ਸਟੈਕ ਗਾਈਡੈਂਸ ਇੱਕ PRO ਕੰਪਾਈਲਰ ਲਾਇਸੈਂਸ ਦੇ ਨਾਲ ਉਪਲਬਧ, ਕੰਪਾਈਲਰ ਦੀ ਸਟੈਕ ਮਾਰਗਦਰਸ਼ਨ ਵਿਸ਼ੇਸ਼ਤਾ ਦੀ ਵਰਤੋਂ ਪ੍ਰੋਗਰਾਮ ਦੁਆਰਾ ਵਰਤੇ ਗਏ ਕਿਸੇ ਵੀ ਸਟੈਕ ਦੀ ਵੱਧ ਤੋਂ ਵੱਧ ਡੂੰਘਾਈ ਦਾ ਅੰਦਾਜ਼ਾ ਲਗਾਉਣ ਲਈ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ। ਇਹ ਇੱਕ ਪ੍ਰੋਗਰਾਮ ਦੇ ਕਾਲ ਗ੍ਰਾਫ ਦਾ ਨਿਰਮਾਣ ਅਤੇ ਵਿਸ਼ਲੇਸ਼ਣ ਕਰਦਾ ਹੈ, ਹਰੇਕ ਫੰਕਸ਼ਨ ਦੀ ਸਟੈਕ ਵਰਤੋਂ ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ, ਅਤੇ ਇੱਕ ਰਿਪੋਰਟ ਤਿਆਰ ਕਰਦਾ ਹੈ, ਜਿਸ ਤੋਂ ਪ੍ਰੋਗਰਾਮ ਦੁਆਰਾ ਵਰਤੇ ਗਏ ਸਟੈਕ ਦੀ ਡੂੰਘਾਈ ਦਾ ਅਨੁਮਾਨ ਲਗਾਇਆ ਜਾ ਸਕਦਾ ਹੈ। ਇਹ ਵਿਸ਼ੇਸ਼ਤਾ -mchp-stack-usage ਕਮਾਂਡ-ਲਾਈਨ ਵਿਕਲਪ ਰਾਹੀਂ ਯੋਗ ਕੀਤੀ ਗਈ ਹੈ। ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਤੋਂ ਬਾਅਦ ਸਟੈਕ ਵਰਤੋਂ ਦਾ ਸੰਖੇਪ ਛਾਪਿਆ ਜਾਂਦਾ ਹੈ। ਇੱਕ ਵਿਸਤ੍ਰਿਤ ਸਟੈਕ ਰਿਪੋਰਟ ਨਕਸ਼ੇ ਵਿੱਚ ਉਪਲਬਧ ਹੈ file, ਜਿਸ ਦੀ ਆਮ ਤਰੀਕੇ ਨਾਲ ਬੇਨਤੀ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ।
ਨਵੀਂ ਡਿਵਾਈਸ ਸਪੋਰਟ ਸਪੋਰਟ ਹੇਠਾਂ ਦਿੱਤੇ AVR ਭਾਗਾਂ ਲਈ ਉਪਲਬਧ ਹੈ: ATTINY 427, ATTINY 424, ATTINY 426, ATTINY827, ATTINY824, ATTINY826, AVR32DB32, AVR64DB48, AVR64DB64, AVR64DB28, AVR32DB28, AVR64DB32, AVR32DV48, AVRXNUMXDBXNUMX।
ਵਾਪਿਸ ਲਿਆ ਗਿਆ ਡਿਵਾਈਸ ਸਪੋਰਟ ਸਪੋਰਟ ਹੇਠਾਂ ਦਿੱਤੇ AVR ਭਾਗਾਂ ਲਈ ਹੁਣ ਉਪਲਬਧ ਨਹੀਂ ਹੈ: AVR16DA28, AVR16DA32 ਅਤੇ, AVR16DA48।
ਸੰਸਕਰਣ 2.31
ਕੋਈ ਨਹੀਂ।
ਸੰਸਕਰਣ 2.30
ਡਾਟਾ ਸ਼ੁਰੂ ਹੋਣ ਤੋਂ ਰੋਕਣ ਲਈ ਨਵਾਂ ਵਿਕਲਪ ਇੱਕ ਨਵਾਂ -mno-data-ini t ਡਰਾਈਵਰ ਵਿਕਲਪ ਡਾਟਾ ਦੀ ਸ਼ੁਰੂਆਤ ਅਤੇ bss ਭਾਗਾਂ ਨੂੰ ਕਲੀਅਰ ਕਰਨ ਤੋਂ ਰੋਕਦਾ ਹੈ। ਇਹ ਅਸੈਂਬਲੀ ਵਿੱਚ do_ copy_ ਡੇਟਾ ਅਤੇ d o_ clear_ bss ਚਿੰਨ੍ਹ ਦੇ ਆਉਟਪੁੱਟ ਨੂੰ ਦਬਾ ਕੇ ਕੰਮ ਕਰਦਾ ਹੈ files, ਜੋ ਬਦਲੇ ਵਿੱਚ ਲਿੰਕਰ ਦੁਆਰਾ ਉਹਨਾਂ ਰੁਟੀਨਾਂ ਨੂੰ ਸ਼ਾਮਲ ਕਰਨ ਤੋਂ ਰੋਕਦਾ ਹੈ।
ਵਿਸਤ੍ਰਿਤ ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਬਹੁਤ ਸਾਰੇ ਅਨੁਕੂਲਤਾ ਸੁਧਾਰ ਕੀਤੇ ਗਏ ਹਨ, ਜਿਸ ਵਿੱਚ ਬੇਲੋੜੇ ਵਾਪਸੀ ਨਿਰਦੇਸ਼ਾਂ ਨੂੰ ਹਟਾਉਣਾ, ਇੱਕ skip-if-bit-is ਹਦਾਇਤਾਂ ਤੋਂ ਬਾਅਦ ਕੁਝ ਜੰਪਾਂ ਨੂੰ ਹਟਾਉਣਾ, ਅਤੇ ਪ੍ਰਕਿਰਿਆਤਮਕ ਐਬਸਟਰੈਕਸ਼ਨ ਵਿੱਚ ਸੁਧਾਰ ਅਤੇ ਇਸ ਪ੍ਰਕਿਰਿਆ ਨੂੰ ਦੁਹਰਾਉਣ ਦੀ ਯੋਗਤਾ ਸ਼ਾਮਲ ਹੈ।
ਇਹਨਾਂ ਵਿੱਚੋਂ ਕੁਝ ਓਪਟੀਮਾਈਜੇਸ਼ਨਾਂ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਨ ਲਈ ਵਾਧੂ ਵਿਕਲਪ ਹੁਣ ਉਪਲਬਧ ਹਨ, ਖਾਸ ਤੌਰ 'ਤੇ -f ਭਾਗ ਐਂਕਰ, ਜੋ ਕਿ ਇੱਕ ਚਿੰਨ੍ਹ ਦੇ ਅਨੁਸਾਰੀ ਸਥਿਰ ਵਸਤੂਆਂ ਦੀ ਪਹੁੰਚ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ; -mpai derations=n, ਜੋ ਕਿ 2 ਦੇ ਡਿਫੌਲਟ ਤੋਂ ਪਰੋਸੀਜਰਲ ਐਬਸਟਰੈਕਸ਼ਨ ਦੁਹਰਾਓ ਦੀ ਸੰਖਿਆ ਨੂੰ ਬਦਲਣ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ; ਅਤੇ, -mpa- ਕਾਲ ਲਾਗਤ- ਸ਼ਾਰਟਕਾਲ, ਜੋ ਵਧੇਰੇ ਹਮਲਾਵਰ ਪ੍ਰਕਿਰਿਆਤਮਕ ਐਬਸਟਰੈਕਸ਼ਨ ਕਰਦਾ ਹੈ, ਇਸ ਉਮੀਦ ਵਿੱਚ ਕਿ ਲਿੰਕਰ ਲੰਬੀਆਂ ਕਾਲਾਂ ਨੂੰ ਆਰਾਮ ਦੇ ਸਕਦਾ ਹੈ। ਇਹ ਆਖਰੀ ਵਿਕਲਪ ਕੋਡ ਦਾ ਆਕਾਰ ਵਧਾ ਸਕਦਾ ਹੈ ਜੇਕਰ ਅੰਡਰਲਾਈੰਗ ਧਾਰਨਾਵਾਂ ਨੂੰ ਪੂਰਾ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।
ਨਵੀਂ ਡਿਵਾਈਸ ਸਪੋਰਟ ਹੇਠਾਂ ਦਿੱਤੇ AVR ਹਿੱਸਿਆਂ ਲਈ ਸਹਾਇਤਾ ਉਪਲਬਧ ਹੈ: AVR16DA28, AVR16DA32,
AVR16DA48, AVR32DA28, AVR32DA32, AVR32DA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVRXNUMXDBXNUMX, AVRXNUMX
ਵਾਪਿਸ ਲਿਆ ਗਿਆ ਡਿਵਾਈਸ ਸਪੋਰਟ ਹੇਠਾਂ ਦਿੱਤੇ AVR ਭਾਗਾਂ ਲਈ ਸਮਰਥਨ ਹੁਣ ਉਪਲਬਧ ਨਹੀਂ ਹੈ: ATA5272, ATA5790, ATA5790N,ATA5791,ATA5795,ATA6285,ATA6286,ATA6612C,ATA6613C,ATA6614Q, ATA6616C, ATA6617C, ATA664251C, ATAXNUMXQ, ATAXNUMXN.
ਸੰਸਕਰਣ 2.29 (ਕਾਰਜਸ਼ੀਲ ਸੁਰੱਖਿਆ ਰੀਲੀਜ਼)
ਸਿਰਲੇਖ file ਕੰਪਾਈਲਰ ਬਿਲਟ-ਇਨ ਲਈ ਇਹ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਕਿ ਕੰਪਾਈਲਰ ਭਾਸ਼ਾ ਦੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਜਿਵੇਂ ਕਿ MISRA, ਸਿਰਲੇਖ file, ਜੋ ਕਿ ਆਟੋਮੈਟਿਕਲੀ ਦੁਆਰਾ ਸ਼ਾਮਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ , ਅੱਪਡੇਟ ਕੀਤਾ ਗਿਆ ਹੈ। ਇਸ ਸਿਰਲੇਖ ਵਿੱਚ ਸਾਰੇ ਇਨ-ਬਿਲਟ ਫੰਕਸ਼ਨਾਂ ਲਈ ਪ੍ਰੋਟੋਟਾਈਪ ਸ਼ਾਮਲ ਹਨ, ਜਿਵੇਂ ਕਿ _buil tin _avrnop () ਅਤੇ _buil tin_ avr delay_ cycles ()। ਕੁਝ ਬਿਲਟ-ਇਨ MISRA ਅਨੁਕੂਲ ਨਹੀਂ ਹੋ ਸਕਦੇ ਹਨ; ਇਹਨਾਂ ਨੂੰ ਕੰਪਾਈਲਰ ਕਮਾਂਡ ਲਾਈਨ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ _Xe_ STRICT_ MISRA ਜੋੜ ਕੇ ਛੱਡਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਬਿਲਟ-ਇਨ ਅਤੇ ਉਹਨਾਂ ਦੀਆਂ ਘੋਸ਼ਣਾਵਾਂ ਨੂੰ ਸਥਿਰ-ਚੌੜਾਈ ਕਿਸਮਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ ਅੱਪਡੇਟ ਕੀਤਾ ਗਿਆ ਹੈ।
ਸੰਸਕਰਣ 2.20
ਨਵੀਂ ਡਿਵਾਈਸ ਸਪੋਰਟ ਹੇਠਾਂ ਦਿੱਤੇ AVR ਭਾਗਾਂ ਲਈ ਸਹਾਇਤਾ ਉਪਲਬਧ ਹੈ: ATTINY1624, ATTINY1626, ਅਤੇ ATTINY1627।
ਬਿਹਤਰ ਵਧੀਆ ਫਿੱਟ ਵੰਡ ਕੰਪਾਈਲਰ ਵਿੱਚ ਸਭ ਤੋਂ ਵਧੀਆ ਫਿਟ ਅਲੋਕੇਟਰ (BFA) ਵਿੱਚ ਸੁਧਾਰ ਕੀਤਾ ਗਿਆ ਹੈ ਤਾਂ ਜੋ ਭਾਗਾਂ ਨੂੰ ਇੱਕ ਕ੍ਰਮ ਵਿੱਚ ਅਲਾਟ ਕੀਤਾ ਜਾਵੇ ਜੋ ਬਿਹਤਰ ਅਨੁਕੂਲਤਾ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। BFA ਹੁਣ ਨਾਮਿਤ ਐਡਰੈੱਸ ਸਪੇਸ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ ਅਤੇ ਡਾਟਾ ਅਰੰਭਕਰਨ ਨੂੰ ਬਿਹਤਰ ਢੰਗ ਨਾਲ ਸੰਭਾਲਦਾ ਹੈ।
ਸੁਧਾਰੀ ਪ੍ਰਕਿਰਿਆ ਸੰਬੰਧੀ ਐਬਸਟਰੈਕਸ਼ਨ ਪਰੋਸੀਜਰਲ ਐਬਸਟਰੈਕਸ਼ਨ ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਹੁਣ ਹੋਰ ਕੋਡ ਕ੍ਰਮਾਂ 'ਤੇ ਕੀਤੇ ਜਾਂਦੇ ਹਨ। ਪਿਛਲੀਆਂ ਸਥਿਤੀਆਂ ਜਿੱਥੇ ਇਸ ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਨੇ ਕੋਡ ਦਾ ਆਕਾਰ ਵਧਾਇਆ ਹੋ ਸਕਦਾ ਹੈ ਉਹਨਾਂ ਨੂੰ ਲਿੰਕਰ ਦੀ ਕੂੜਾ ਇਕੱਠਾ ਕਰਨ ਦੀ ਪ੍ਰਕਿਰਿਆ ਬਾਰੇ ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਕੋਡ ਨੂੰ ਜਾਣੂ ਕਰਵਾ ਕੇ ਸੰਬੋਧਿਤ ਕੀਤਾ ਗਿਆ ਹੈ।
AVR ਅਸੈਂਬਲਰ ਦੀ ਗੈਰਹਾਜ਼ਰੀ AVR ਅਸੈਂਬਲਰ ਹੁਣ ਇਸ ਵੰਡ ਵਿੱਚ ਸ਼ਾਮਲ ਨਹੀਂ ਹੈ।
ਸੰਸਕਰਣ 2.19 (ਕਾਰਜਸ਼ੀਲ ਸੁਰੱਖਿਆ ਰੀਲੀਜ਼)
ਕੋਈ ਨਹੀਂ।
ਸੰਸਕਰਣ 2.10
ਕੋਡ ਕਵਰੇਜ ਇਸ ਰੀਲੀਜ਼ ਵਿੱਚ ਇੱਕ ਕੋਡ ਕਵਰੇਜ ਵਿਸ਼ੇਸ਼ਤਾ ਸ਼ਾਮਲ ਹੈ ਜੋ ਇੱਕ ਪ੍ਰੋਜੈਕਟ ਦੇ ਸਰੋਤ ਕੋਡ ਨੂੰ ਲਾਗੂ ਕਰਨ ਦੀ ਹੱਦ ਤੱਕ ਵਿਸ਼ਲੇਸ਼ਣ ਦੀ ਸਹੂਲਤ ਦਿੰਦਾ ਹੈ। ਇਸਨੂੰ ਯੋਗ ਕਰਨ ਲਈ ਵਿਕਲਪ -mcodecov=ram ਦੀ ਵਰਤੋਂ ਕਰੋ। ਤੁਹਾਡੇ ਹਾਰਡਵੇਅਰ 'ਤੇ ਪ੍ਰੋਗਰਾਮ ਦੇ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਤੋਂ ਬਾਅਦ, ਕੋਡ ਕਵਰੇਜ ਜਾਣਕਾਰੀ ਨੂੰ ਡਿਵਾਈਸ ਵਿੱਚ ਇਕੱਠਾ ਕੀਤਾ ਜਾਵੇਗਾ, ਅਤੇ ਇਸਨੂੰ MPLAB X IDE ਦੁਆਰਾ ਇੱਕ ਕੋਡ ਕਵਰੇਜ ਪਲੱਗਇਨ ਦੁਆਰਾ ਟ੍ਰਾਂਸਫਰ ਅਤੇ ਪ੍ਰਦਰਸ਼ਿਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਇਸ ਪਲੱਗਇਨ ਬਾਰੇ ਜਾਣਕਾਰੀ ਲਈ IDE ਦਸਤਾਵੇਜ਼ ਵੇਖੋ। #pragma mcodecov ਨੂੰ ਕਵਰੇਜ ਵਿਸ਼ਲੇਸ਼ਣ ਤੋਂ ਬਾਅਦ ਦੇ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਬਾਹਰ ਕੱਢਣ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ। ਆਦਰਸ਼ਕ ਤੌਰ 'ਤੇ ਪ੍ਰੈਗਮਾ ਨੂੰ ਸ਼ੁਰੂ ਵਿੱਚ ਜੋੜਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ file ਉਸ ਪੂਰੇ ਨੂੰ ਬਾਹਰ ਕਰਨ ਲਈ file ਕਵਰੇਜ ਵਿਸ਼ਲੇਸ਼ਣ ਤੋਂ ਵਿਕਲਪਕ ਤੌਰ 'ਤੇ, ਵਿਸ਼ੇਸ਼ਤਾ ( (mcodecov) ) ਦੀ ਵਰਤੋਂ ਕਵਰੇਜ ਵਿਸ਼ਲੇਸ਼ਣ ਤੋਂ ਕਿਸੇ ਖਾਸ ਫੰਕਸ਼ਨ ਨੂੰ ਬਾਹਰ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ।
ਡਿਵਾਈਸ ਦਾ ਵੇਰਵਾ files ਇੱਕ ਨਵਾਂ ਯੰਤਰ file avr chipinfo ਕਹਿੰਦੇ ਹਨ। html ਕੰਪਾਈਲਰ ਡਿਸਟਰੀਬਿਊਸ਼ਨ ਦੀ ਡੌਕਸ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਸਥਿਤ ਹੈ। ਇਹ file ਕੰਪਾਈਲਰ ਦੁਆਰਾ ਸਮਰਥਿਤ ਸਾਰੇ ਡਿਵਾਈਸਾਂ ਨੂੰ ਸੂਚੀਬੱਧ ਕਰਦਾ ਹੈ। ਇੱਕ ਡਿਵਾਈਸ ਦੇ ਨਾਮ 'ਤੇ ਕਲਿੱਕ ਕਰੋ, ਅਤੇ ਇਹ ਇੱਕ ਪੰਨਾ ਖੋਲ੍ਹੇਗਾ ਜੋ ਉਸ ਡਿਵਾਈਸ ਲਈ ਸਾਰੀਆਂ ਮਨਜ਼ੂਰਸ਼ੁਦਾ ਸੰਰਚਨਾ ਬਿੱਟ ਸੈਟਿੰਗ/ਮੁੱਲ ਜੋੜਿਆਂ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ, ਸਾਬਕਾ ਦੇ ਨਾਲamples.
ਵਿਧੀਗਤ ਐਬਸਟਰੈਕਸ਼ਨ ਪਰੋਸੀਜਰਲ ਐਬਸਟਰੈਕਸ਼ਨ ਓਪਟੀਮਾਈਜੇਸ਼ਨ, ਜੋ ਕਿ ਅਸੈਂਬਲੀ ਕੋਡ ਦੇ ਆਮ ਬਲਾਕਾਂ ਨੂੰ ਉਸ ਬਲਾਕ ਦੀ ਐਕਸਟਰੈਕਟ ਕੀਤੀ ਕਾਪੀ ਲਈ ਕਾਲਾਂ ਨਾਲ ਬਦਲਦੇ ਹਨ, ਨੂੰ ਕੰਪਾਈਲਰ ਵਿੱਚ ਜੋੜਿਆ ਗਿਆ ਹੈ। ਇਹ ਇੱਕ ਵੱਖਰੀ ਐਪਲੀਕੇਸ਼ਨ ਦੁਆਰਾ ਕੀਤੇ ਜਾਂਦੇ ਹਨ, ਜੋ ਕਿ ਪੱਧਰ 2, 3 ਜਾਂ ਓਪਟੀਮਾਈਜੇਸ਼ਨਾਂ ਦੀ ਚੋਣ ਕਰਨ ਵੇਲੇ ਕੰਪਾਈਲਰ ਦੁਆਰਾ ਆਪਣੇ ਆਪ ਬੁਲਾਇਆ ਜਾਂਦਾ ਹੈ। ਇਹ ਅਨੁਕੂਲਤਾ ਕੋਡ ਦਾ ਆਕਾਰ ਘਟਾਉਂਦੀ ਹੈ, ਪਰ ਇਹ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਸਪੀਡ ਅਤੇ ਕੋਡ ਡੀਬੱਗਬਿਲਟੀ ਨੂੰ ਘਟਾ ਸਕਦੇ ਹਨ।
ਵਿਧੀਗਤ ਐਬਸਟਰੈਕਸ਼ਨ ਨੂੰ ਵਿਕਲਪ -mno-pa ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਉੱਚ ਅਨੁਕੂਲਤਾ ਪੱਧਰਾਂ 'ਤੇ ਅਯੋਗ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜਾਂ -mpa ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਹੇਠਲੇ ਅਨੁਕੂਲਨ ਪੱਧਰਾਂ (ਤੁਹਾਡੇ ਲਾਇਸੰਸ ਦੇ ਅਧੀਨ) 'ਤੇ ਸਮਰੱਥ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। ਇਸਨੂੰ ਕਿਸੇ ਵਸਤੂ ਲਈ ਅਯੋਗ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ file -mno-pa-on- ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏfile=fileਫੰਕਸ਼ਨ= ਫੰਕਸ਼ਨ ਉੱਤੇ -mno-pa ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇੱਕ ਫੰਕਸ਼ਨ ਲਈ ਨਾਮ, ਜਾਂ ਅਯੋਗ ਕੀਤਾ ਗਿਆ ਹੈ।
ਤੁਹਾਡੇ ਸਰੋਤ ਕੋਡ ਦੇ ਅੰਦਰ, ਫੰਕਸ਼ਨ ਦੀ ਪਰਿਭਾਸ਼ਾ ਦੇ ਨਾਲ _attribute_ ( (nopa)) ਦੀ ਵਰਤੋਂ ਕਰਕੇ, ਜਾਂ _nopa ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇੱਕ ਫੰਕਸ਼ਨ ਲਈ ਪ੍ਰਕਿਰਿਆਤਮਕ ਐਬਸਟਰੈਕਸ਼ਨ ਨੂੰ ਅਸਮਰੱਥ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜੋ ਵਿਸ਼ੇਸ਼ਤਾ ( (nopa, noinline)) ਤੱਕ ਫੈਲਦਾ ਹੈ ਅਤੇ ਇਸ ਤਰ੍ਹਾਂ ਫੰਕਸ਼ਨ ਇਨਲਾਈਨਿੰਗ ਨੂੰ ਹੋਣ ਤੋਂ ਰੋਕਦਾ ਹੈ। ਅਤੇ ਇਨਲਾਈਨ ਕੋਡ ਦਾ ਐਬਸਟਰੈਕਸ਼ਨ ਹੋਣਾ।
ਪ੍ਰੈਗਮਾ ਵਿੱਚ ਲਾਕ ਬਿੱਟ ਸਮਰਥਨ #pragma ਕੌਂਫਿਗਰੇਸ਼ਨ ਹੁਣ AVR ਲਾਕ ਬਿੱਟਾਂ ਦੇ ਨਾਲ-ਨਾਲ ਹੋਰ ਸੰਰਚਨਾ ਬਿੱਟਾਂ ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਨ ਲਈ ਵਰਤੀ ਜਾ ਸਕਦੀ ਹੈ। ਏਵੀਆਰ ਚਿੱਪ ਜਾਣਕਾਰੀ ਦੀ ਜਾਂਚ ਕਰੋ। html file (ਉੱਪਰ ਜ਼ਿਕਰ ਕੀਤਾ) ਇਸ ਪ੍ਰੈਗਮਾ ਨਾਲ ਵਰਤਣ ਲਈ ਸੈਟਿੰਗ/ਮੁੱਲ ਜੋੜਿਆਂ ਲਈ।
ਨਵੀਂ ਡਿਵਾਈਸ ਸਪੋਰਟ ਹੇਠਲੇ ਭਾਗਾਂ ਲਈ ਸਹਾਇਤਾ ਉਪਲਬਧ ਹੈ: AVR28DA128, AVR64DA128, AVR32DA128, ਅਤੇ AVR48DA128।
ਸੰਸਕਰਣ 2.05
ਤੁਹਾਡੇ ਪੈਸੇ ਲਈ ਹੋਰ ਬਿੱਟ ਇਸ ਕੰਪਾਈਲਰ ਅਤੇ ਲਾਇਸੈਂਸ ਮੈਨੇਜਰ ਦਾ macOS ਸੰਸਕਰਣ ਹੁਣ ਇੱਕ 64-ਬਿੱਟ ਐਪਲੀਕੇਸ਼ਨ ਹੈ। ਇਹ ਯਕੀਨੀ ਬਣਾਏਗਾ ਕਿ ਕੰਪਾਈਲਰ ਮੈਕੋਸ ਦੇ ਤਾਜ਼ਾ ਸੰਸਕਰਣਾਂ 'ਤੇ ਬਿਨਾਂ ਚੇਤਾਵਨੀਆਂ ਦੇ ਸਥਾਪਿਤ ਅਤੇ ਚੱਲੇਗਾ।
ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਵਿੱਚ ਕੌਂਸਟ ਆਬਜੈਕਟ ਕੰਪਾਈਲਰ ਹੁਣ RAM ਵਿੱਚ ਸਥਿਤ ਹੋਣ ਦੀ ਬਜਾਏ, ਪ੍ਰੋਗਰਾਮ ਫਲੈਸ਼ ਮੈਮੋਰੀ ਵਿੱਚ const-ਯੋਗ ਵਸਤੂਆਂ ਨੂੰ ਰੱਖ ਸਕਦਾ ਹੈ। ਕੰਪਾਈਲਰ ਨੂੰ ਸੰਸ਼ੋਧਿਤ ਕੀਤਾ ਗਿਆ ਹੈ ਤਾਂ ਜੋ ਕੰਸਟ-ਕੁਆਲੀਫਾਈਡ ਗਲੋਬਲ ਡੇਟਾ ਪ੍ਰੋਗਰਾਮ ਫਲੈਸ਼ ਮੈਮੋਰੀ ਵਿੱਚ ਸਟੋਰ ਕੀਤਾ ਜਾ ਸਕੇ ਅਤੇ ਇਸ ਡੇਟਾ ਨੂੰ ਸਿੱਧੇ ਅਤੇ ਅਸਿੱਧੇ ਤੌਰ 'ਤੇ ਉਚਿਤ ਪ੍ਰੋਗਰਾਮ-ਮੈਮੋਰੀ ਨਿਰਦੇਸ਼ਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਐਕਸੈਸ ਕੀਤਾ ਜਾ ਸਕੇ। ਇਹ ਨਵੀਂ ਵਿਸ਼ੇਸ਼ਤਾ ਮੂਲ ਰੂਪ ਵਿੱਚ ਸਮਰੱਥ ਹੈ ਪਰ -mno-const-data-in-progmem ਵਿਕਲਪ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇਸਨੂੰ ਅਯੋਗ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। avrxmega3 ਅਤੇ avrtiny ਆਰਕੀਟੈਕਚਰ ਲਈ, ਇਸ ਵਿਸ਼ੇਸ਼ਤਾ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ ਅਤੇ ਇਹ ਹਮੇਸ਼ਾ ਅਯੋਗ ਹੁੰਦੀ ਹੈ, ਕਿਉਂਕਿ ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਨੂੰ ਇਹਨਾਂ ਡਿਵਾਈਸਾਂ ਲਈ ਡਾਟਾ ਐਡਰੈੱਸ ਸਪੇਸ ਵਿੱਚ ਮੈਪ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।
ਮਿਆਰੀ ਮੁਫ਼ਤ ਲਈ ਇਸ ਕੰਪਾਈਲਰ ਦੇ ਬਿਨਾਂ ਲਾਇਸੈਂਸ ਵਾਲੇ (ਮੁਫ਼ਤ) ਸੰਸਕਰਣ ਹੁਣ ਲੈਵਲ 2 ਤੱਕ ਅਤੇ ਇਸ ਵਿੱਚ ਸ਼ਾਮਲ ਕਰਨ ਲਈ ਅਨੁਕੂਲਤਾ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦੇ ਹਨ। ਇਹ ਇੱਕ ਸਮਾਨ ਦੀ ਇਜਾਜ਼ਤ ਦੇਵੇਗਾ, ਹਾਲਾਂਕਿ ਇੱਕੋ ਜਿਹਾ ਨਹੀਂ, ਇੱਕ ਸਟੈਂਡਰਡ ਲਾਇਸੈਂਸ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪਹਿਲਾਂ ਸੰਭਵ ਸੀ।
AVRASM2 ਦਾ ਸੁਆਗਤ ਹੈ 2-ਬਿੱਟ ਜੰਤਰਾਂ ਲਈ AVRASM8 ਅਸੈਂਬਲਰ ਹੁਣ XC8 ਕੰਪਾਈਲਰ ਇੰਸਟਾਲਰ ਵਿੱਚ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ ਹੈ। ਇਹ ਅਸੈਂਬਲਰ XC8 ਕੰਪਾਈਲਰ ਦੁਆਰਾ ਨਹੀਂ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਪਰ ਹੱਥ ਲਿਖਤ ਅਸੈਂਬਲੀ ਸਰੋਤ ਦੇ ਅਧਾਰ ਤੇ ਪ੍ਰੋਜੈਕਟਾਂ ਲਈ ਉਪਲਬਧ ਹੈ।
ਨਵੀਂ ਡਿਵਾਈਸ ਸਪੋਰਟ ਹੇਠਲੇ ਭਾਗਾਂ ਲਈ ਸਹਾਇਤਾ ਉਪਲਬਧ ਹੈ: ATMEGA1608, ATMEGA1609, ATMEGA808, ਅਤੇ ATMEGA809।
ਸੰਸਕਰਣ 2.00
ਸਿਖਰ-ਪੱਧਰ ਦਾ ਡਰਾਈਵਰ ਇੱਕ ਨਵਾਂ ਡਰਾਈਵਰ, ਜਿਸਨੂੰ xc8-cc ਕਿਹਾ ਜਾਂਦਾ ਹੈ, ਹੁਣ ਪਿਛਲੇ avr-gcc ਡਰਾਈਵਰ ਅਤੇ xc8 ਡਰਾਈਵਰ ਦੇ ਉੱਪਰ ਬੈਠਦਾ ਹੈ, ਅਤੇ ਇਹ ਟਾਰਗੇਟ ਜੰਤਰ ਦੀ ਚੋਣ ਦੇ ਅਧਾਰ 'ਤੇ ਢੁਕਵੇਂ ਕੰਪਾਈਲਰ ਨੂੰ ਕਾਲ ਕਰ ਸਕਦਾ ਹੈ। ਇਹ ਡਰਾਈਵਰ GCC-ਸ਼ੈਲੀ ਚੋਣਾਂ ਨੂੰ ਸਵੀਕਾਰ ਕਰਦਾ ਹੈ, ਜੋ ਜਾਂ ਤਾਂ ਕੰਪਾਈਲਰ ਲਈ ਅਨੁਵਾਦ ਕੀਤੇ ਜਾਂਦੇ ਹਨ ਜਾਂ ਚਲਾਏ ਜਾ ਰਹੇ ਹਨ। ਇਹ ਡ੍ਰਾਈਵਰ ਕਿਸੇ ਵੀ AVR ਜਾਂ PIC ਟਾਰਗਿਟ ਦੇ ਨਾਲ ਸਮਾਨ ਅਰਥ ਵਿਗਿਆਨ ਵਾਲੇ ਵਿਕਲਪਾਂ ਦੇ ਸਮਾਨ ਸੈੱਟ ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ ਅਤੇ ਇਸ ਤਰ੍ਹਾਂ ਕੰਪਾਈਲਰ ਨੂੰ ਸ਼ੁਰੂ ਕਰਨ ਦਾ ਸਿਫ਼ਾਰਿਸ਼ ਕੀਤਾ ਤਰੀਕਾ ਹੈ। ਜੇਕਰ ਲੋੜ ਹੋਵੇ, ਪੁਰਾਣੇ avr-gcc ਡਰਾਈਵਰ ਨੂੰ ਪੁਰਾਣੇ ਕੰਪਾਈਲਰ ਸੰਸਕਰਣਾਂ ਵਿੱਚ ਸਵੀਕਾਰ ਕੀਤੇ ਪੁਰਾਣੇ-ਸ਼ੈਲੀ ਵਿਕਲਪਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸਿੱਧਾ ਕਾਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।
ਆਮ C ਇੰਟਰਫੇਸ ਇਹ ਕੰਪਾਈਲਰ ਹੁਣ MPLAB ਕਾਮਨ C ਇੰਟਰਫੇਸ ਦੇ ਅਨੁਕੂਲ ਹੋ ਸਕਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਸਰੋਤ ਕੋਡ ਨੂੰ ਸਾਰੇ MPLAB XC ਕੰਪਾਈਲਰ ਵਿੱਚ ਆਸਾਨੀ ਨਾਲ ਪੋਰਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ। -mext=cci ਵਿਕਲਪ ਇਸ ਵਿਸ਼ੇਸ਼ਤਾ ਲਈ ਬੇਨਤੀ ਕਰਦਾ ਹੈ, ਕਈ ਭਾਸ਼ਾ ਐਕਸਟੈਂਸ਼ਨਾਂ ਲਈ ਵਿਕਲਪਕ ਸੰਟੈਕਸ ਨੂੰ ਸਮਰੱਥ ਬਣਾਉਂਦਾ ਹੈ।
ਨਵਾਂ ਲਾਇਬ੍ਰੇਰੀਅਨ ਡਰਾਈਵਰ ਇੱਕ ਨਵਾਂ ਲਾਇਬ੍ਰੇਰੀਅਨ ਡਰਾਈਵਰ ਪਿਛਲੇ PIC ਲਾਇਬ੍ਰੇਰੀਅਨ ਅਤੇ AVR avr-ar ਲਾਇਬ੍ਰੇਰੀਅਨ ਤੋਂ ਉੱਪਰ ਹੈ। ਇਹ ਡ੍ਰਾਈਵਰ GCC-archiver-ਸ਼ੈਲੀ ਵਿਕਲਪਾਂ ਨੂੰ ਸਵੀਕਾਰ ਕਰਦਾ ਹੈ, ਜੋ ਜਾਂ ਤਾਂ ਲਾਇਬ੍ਰੇਰੀਅਨ ਲਈ ਅਨੁਵਾਦ ਕੀਤੇ ਜਾਂਦੇ ਹਨ ਜਾਂ ਉਹਨਾਂ ਨੂੰ ਚਲਾਏ ਜਾ ਰਹੇ ਹਨ। ਨਵਾਂ ਡਰਾਈਵਰ ਕਿਸੇ ਵੀ PIC ਜਾਂ AVR ਲਾਇਬ੍ਰੇਰੀ ਨੂੰ ਬਣਾਉਣ ਜਾਂ ਹੇਰਾਫੇਰੀ ਕਰਨ ਲਈ ਸਮਾਨ ਅਰਥ ਵਿਗਿਆਨ ਵਾਲੇ ਵਿਕਲਪਾਂ ਦੇ ਸਮਾਨ ਸੈੱਟ ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। file ਅਤੇ ਇਸ ਤਰ੍ਹਾਂ ਲਾਇਬ੍ਰੇਰੀਅਨ ਨੂੰ ਬੁਲਾਉਣ ਦਾ ਸਿਫ਼ਾਰਿਸ਼ ਕੀਤਾ ਤਰੀਕਾ ਹੈ। ਜੇਕਰ ਪੁਰਾਤਨ ਪ੍ਰੋਜੈਕਟਾਂ ਲਈ ਲੋੜੀਂਦਾ ਹੈ, ਤਾਂ ਪਿਛਲੇ ਲਾਇਬ੍ਰੇਰੀਅਨ ਨੂੰ ਪੁਰਾਣੇ ਕੰਪਾਈਲਰ ਸੰਸਕਰਣਾਂ ਵਿੱਚ ਸਵੀਕਾਰ ਕੀਤੇ ਪੁਰਾਣੇ-ਸ਼ੈਲੀ ਵਿਕਲਪਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸਿੱਧਾ ਬੁਲਾਇਆ ਜਾ ਸਕਦਾ ਹੈ।
ਮਾਈਗ੍ਰੇਸ਼ਨ ਮੁੱਦੇ
ਹੇਠਾਂ ਦਿੱਤੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਹਨ ਜੋ ਹੁਣ ਕੰਪਾਈਲਰ ਦੁਆਰਾ ਵੱਖਰੇ ਢੰਗ ਨਾਲ ਸੰਭਾਲੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। ਇਹਨਾਂ ਤਬਦੀਲੀਆਂ ਲਈ ਤੁਹਾਡੇ ਸਰੋਤ ਕੋਡ ਵਿੱਚ ਸੋਧ ਦੀ ਲੋੜ ਹੋ ਸਕਦੀ ਹੈ ਜੇਕਰ ਕੋਡ ਨੂੰ ਇਸ ਕੰਪਾਈਲਰ ਸੰਸਕਰਣ ਵਿੱਚ ਪੋਰਟ ਕਰਨਾ ਹੈ। ਉਪ-ਸਿਰਲੇਖਾਂ ਵਿੱਚ ਸੰਸਕਰਣ ਨੰਬਰ ਬਾਅਦ ਵਿੱਚ ਹੋਣ ਵਾਲੀਆਂ ਤਬਦੀਲੀਆਂ ਦਾ ਸਮਰਥਨ ਕਰਨ ਲਈ ਪਹਿਲੇ ਕੰਪਾਈਲਰ ਸੰਸਕਰਣ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ।
ਸੰਸਕਰਣ 2.40
ਕੋਈ ਨਹੀਂ।
ਸੰਸਕਰਣ 2.39 (ਕਾਰਜਸ਼ੀਲ ਸੁਰੱਖਿਆ ਰੀਲੀਜ਼)
ਕੋਈ ਨਹੀਂ।
ਸੰਸਕਰਣ 2.36
ਕੋਈ ਨਹੀਂ।
ਸੰਸਕਰਣ 2.35
ਸਟਰਿੰਗ-ਟੂ ਬੇਸ (XCS-2420) ਦਾ ਪ੍ਰਬੰਧਨ ਦੂਜੇ XC ਕੰਪਾਈਲਰਾਂ ਨਾਲ ਇਕਸਾਰਤਾ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ, XC8 ਸਟ੍ਰਿੰਗ-ਟੂ ਫੰਕਸ਼ਨ, ਜਿਵੇਂ ਕਿ strtol () ਆਦਿ, ਹੁਣ ਕਿਸੇ ਇਨਪੁਟ ਸਟ੍ਰਿੰਗ ਨੂੰ ਬਦਲਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਨਹੀਂ ਕਰਨਗੇ ਜੇਕਰ ਨਿਰਧਾਰਿਤ ਅਧਾਰ 36 ਤੋਂ ਵੱਡਾ ਹੈ ਅਤੇ ਇਸ ਦੀ ਬਜਾਏ EINVAL 'ਤੇ errno ਸੈੱਟ ਕਰੇਗਾ। C ਸਟੈਂਡਰਡ ਫੰਕਸ਼ਨਾਂ ਦੇ ਵਿਹਾਰ ਨੂੰ ਨਿਰਧਾਰਤ ਨਹੀਂ ਕਰਦਾ ਹੈ ਜਦੋਂ ਇਹ ਅਧਾਰ ਮੁੱਲ ਵੱਧ ਜਾਂਦਾ ਹੈ।
ਅਣਉਚਿਤ ਗਤੀ ਅਨੁਕੂਲਨ ਲੈਵਲ 3 ਓਪਟੀਮਾਈਜੇਸ਼ਨ (-03) ਦੀ ਚੋਣ ਕਰਦੇ ਸਮੇਂ ਵਿਧੀਗਤ ਐਬਸਟਰੈਕਸ਼ਨ ਅਨੁਕੂਲਤਾ ਨੂੰ ਸਮਰੱਥ ਬਣਾਇਆ ਜਾ ਰਿਹਾ ਸੀ। ਇਹ ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਕੋਡ ਦੀ ਗਤੀ ਦੇ ਖਰਚੇ 'ਤੇ ਕੋਡ ਦਾ ਆਕਾਰ ਘਟਾਉਂਦੇ ਹਨ, ਇਸ ਲਈ ਅਜਿਹਾ ਨਹੀਂ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਸੀ। ਇਸ ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਪੱਧਰ ਦੀ ਵਰਤੋਂ ਕਰਨ ਵਾਲੇ ਪ੍ਰੋਜੈਕਟ ਇਸ ਰੀਲੀਜ਼ ਦੇ ਨਾਲ ਬਣਾਏ ਜਾਣ 'ਤੇ ਕੋਡ ਆਕਾਰ ਅਤੇ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਸਪੀਡ ਵਿੱਚ ਅੰਤਰ ਦੇਖ ਸਕਦੇ ਹਨ।
ਲਾਇਬ੍ਰੇਰੀ ਕਾਰਜਕੁਸ਼ਲਤਾ ਬਹੁਤ ਸਾਰੇ ਸਟੈਂਡਰਡ C ਲਾਇਬ੍ਰੇਰੀ ਫੰਕਸ਼ਨਾਂ ਲਈ ਕੋਡ ਹੁਣ ਮਾਈਕ੍ਰੋਚਿੱਪ ਦੀ ਯੂਨੀਫਾਈਡ ਸਟੈਂਡਰਡ ਲਾਇਬ੍ਰੇਰੀ ਤੋਂ ਆਉਂਦਾ ਹੈ, ਜੋ ਕਿ ਸਾਬਕਾ avr-libc ਲਾਇਬ੍ਰੇਰੀ ਦੁਆਰਾ ਪ੍ਰਦਾਨ ਕੀਤੀ ਗਈ ਤੁਲਨਾ ਵਿੱਚ ਕੁਝ ਹਾਲਾਤਾਂ ਵਿੱਚ ਵੱਖਰਾ ਵਿਵਹਾਰ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰ ਸਕਦਾ ਹੈ। ਸਾਬਕਾ ਲਈample, lprintf_flt ਲਾਇਬ੍ਰੇਰੀ (-print _flt ਵਿਕਲਪ) ਵਿੱਚ ਲਿੰਕ ਕਰਨ ਲਈ ਹੁਣ ਫਲੋਟ-ਫਾਰਮੈਟ ਨਿਰਧਾਰਕਾਂ ਲਈ ਫਾਰਮੈਟ ਕੀਤੇ IO ਸਮਰਥਨ ਨੂੰ ਚਾਲੂ ਕਰਨ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ। ਮਾਈਕ੍ਰੋਚਿੱਪ ਯੂਨੀਫਾਈਡ ਸਟੈਂਡਰਡ ਲਾਇਬ੍ਰੇਰੀ ਦੀਆਂ ਸਮਾਰਟ IO ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਇਸ ਵਿਕਲਪ ਨੂੰ ਬੇਲੋੜਾ ਬਣਾਉਂਦੀਆਂ ਹਨ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਸਟ੍ਰਿੰਗ ਅਤੇ ਮੈਮੋਰੀ ਫੰਕਸ਼ਨਾਂ (ਜਿਵੇਂ ਕਿ strcpy_P () ਆਦਿ .. ) ਲਈ _p ਪਿਛੇਤਰ ਰੁਟੀਨ ਦੀ ਵਰਤੋਂ ਜੋ ਫਲੈਸ਼ ਵਿੱਚ ਕੰਸਟ ਸਟ੍ਰਿੰਗਾਂ 'ਤੇ ਕੰਮ ਕਰਦੇ ਹਨ, ਦੀ ਹੁਣ ਲੋੜ ਨਹੀਂ ਹੈ। ਸਟੈਂਡਰਡ C ਰੁਟੀਨ (ਜਿਵੇਂ ਕਿ strcpy ()) ਅਜਿਹੇ ਡੇਟਾ ਨਾਲ ਸਹੀ ਢੰਗ ਨਾਲ ਕੰਮ ਕਰਨਗੇ ਜਦੋਂ const-data-in-program-memory ਵਿਸ਼ੇਸ਼ਤਾ ਯੋਗ ਹੁੰਦੀ ਹੈ।
ਸੰਸਕਰਣ 2.32
ਕੋਈ ਨਹੀਂ।
ਸੰਸਕਰਣ 2.31
ਕੋਈ ਨਹੀਂ।
ਸੰਸਕਰਣ 2.30
ਕੋਈ ਨਹੀਂ।
ਸੰਸਕਰਣ 2.29 (ਕਾਰਜਸ਼ੀਲ ਸੁਰੱਖਿਆ ਰੀਲੀਜ਼)
ਕੋਈ ਨਹੀਂ।
ਸੰਸਕਰਣ 2.20
ਬਦਲਿਆ ਗਿਆ DFP ਖਾਕਾ ਕੰਪਾਈਲਰ ਹੁਣ DFPs (ਡਿਵਾਈਸ ਫੈਮਿਲੀ ਪੈਕ) ਦੁਆਰਾ ਵਰਤੇ ਗਏ ਇੱਕ ਵੱਖਰੇ ਖਾਕੇ ਨੂੰ ਮੰਨਦਾ ਹੈ। ਇਸਦਾ ਮਤਲਬ ਇਹ ਹੋਵੇਗਾ ਕਿ ਇੱਕ ਪੁਰਾਣਾ DFP ਇਸ ਰੀਲੀਜ਼ ਨਾਲ ਕੰਮ ਨਹੀਂ ਕਰ ਸਕਦਾ ਹੈ, ਅਤੇ ਪੁਰਾਣੇ ਕੰਪਾਈਲਰ ਨਵੀਨਤਮ DFPs ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੇ ਯੋਗ ਨਹੀਂ ਹੋਣਗੇ।
ਸੰਸਕਰਣ 2.19 (ਕਾਰਜਸ਼ੀਲ ਸੁਰੱਖਿਆ ਰੀਲੀਜ਼)
ਕੋਈ ਨਹੀਂ।
ਸੰਸਕਰਣ 2.10
ਕੋਈ ਨਹੀਂ
ਸੰਸਕਰਣ 2.05
ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਵਿੱਚ ਕੰਸਟ ਆਬਜੈਕਟ ਨੋਟ ਕਰੋ ਕਿ ਮੂਲ ਰੂਪ ਵਿੱਚ, const-ਕੁਆਲੀਫਾਈਡ ਆਬਜੈਕਟ ਰੱਖੇ ਜਾਣਗੇ ਅਤੇ ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਵਿੱਚ ਐਕਸੈਸ ਕੀਤੇ ਜਾਣਗੇ (ਜਿਵੇਂ ਕਿ ਇੱਥੇ ਦੱਸਿਆ ਗਿਆ ਹੈ)। ਇਹ ਤੁਹਾਡੇ ਪ੍ਰੋਜੈਕਟ ਦੇ ਆਕਾਰ ਅਤੇ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਦੀ ਗਤੀ ਨੂੰ ਪ੍ਰਭਾਵਤ ਕਰੇਗਾ, ਪਰ ਰੈਮ ਦੀ ਵਰਤੋਂ ਨੂੰ ਘੱਟ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ। ਇਸ ਵਿਸ਼ੇਸ਼ਤਾ ਨੂੰ ਅਯੋਗ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜੇਕਰ ਲੋੜ ਹੋਵੇ, -mnoconst-da ta-in-progmem ਵਿਕਲਪ ਦੀ ਵਰਤੋਂ ਕਰਕੇ।
ਸੰਸਕਰਣ 2.00
ਸੰਰਚਨਾ ਫਿਊਜ਼ ਜੰਤਰ ਸੰਰਚਨਾ ਫਿਊਜ਼ ਹੁਣ ਇੱਕ ਸੰਰਚਨਾ ਪ੍ਰੈਗਮਾ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪ੍ਰੋਗਰਾਮ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ ਜਿਸ ਤੋਂ ਬਾਅਦ ਫਿਊਜ਼ ਸਥਿਤੀ ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਨ ਲਈ ਸੈੱਟ-ਵੈਲਯੂ ਜੋੜਿਆਂ ਦੁਆਰਾ, ਜਿਵੇਂ ਕਿ
#pragma config WDT0N = SET
#pragma config B0DLEVEL = B0DLEVEL_4V3
ਸੰਪੂਰਨ ਵਸਤੂਆਂ ਅਤੇ ਕਾਰਜ ਵਸਤੂਆਂ ਅਤੇ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਹੁਣ CCI _at (ਐਡਰੈੱਸ) ਨਿਰਧਾਰਕ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਮੈਮੋਰੀ ਵਿੱਚ ਖਾਸ ਪਤੇ 'ਤੇ ਰੱਖਿਆ ਜਾ ਸਕਦਾ ਹੈ, ਸਾਬਕਾ ਲਈample: #ਸ਼ਾਮਲ int foobar at(Ox800100); char at(Ox250) get ID(int offset) { … } ਇਸ ਨਿਰਧਾਰਕ ਲਈ ਆਰਗੂਮੈਂਟ ਇੱਕ ਸਥਿਰ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਜੋ ਉਸ ਪਤੇ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ ਜਿਸ 'ਤੇ ਪਹਿਲੀ ਬਾਈਟ ਜਾਂ ਹਦਾਇਤ ਰੱਖੀ ਜਾਵੇਗੀ। RAM ਪਤੇ 0x800000 ਦੇ ਆਫਸੈੱਟ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਦਰਸਾਏ ਗਏ ਹਨ। ਇਸ ਵਿਸ਼ੇਸ਼ਤਾ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ CCI ਨੂੰ ਸਮਰੱਥ ਬਣਾਓ।
ਨਵਾਂ ਇੰਟਰੱਪਟ ਫੰਕਸ਼ਨ ਸਿੰਟੈਕਸ ਕੰਪਾਈਲਰ ਹੁਣ CCI ਇੰਟਰੱਪਟ (num) ਨਿਰਧਾਰਕ ਨੂੰ ਇਹ ਦਰਸਾਉਣ ਲਈ ਸਵੀਕਾਰ ਕਰਦਾ ਹੈ ਕਿ C ਫੰਕਸ਼ਨ ਇੰਟਰੱਪਟ ਹੈਂਡਲਰ ਹਨ। ਸਪੈਸੀਫਾਇਰ ਇੱਕ ਇੰਟਰੱਪਟ ਨੰਬਰ ਲੈਂਦਾ ਹੈ, ਉਦਾਹਰਨ ਲਈample: #ਸ਼ਾਮਲ void interrupt(SPI STC_ vect _num) spi Isr(void) { … }
ਸਥਿਰ ਮੁੱਦੇ
ਹੇਠਾਂ ਦਿੱਤੇ ਸੁਧਾਰ ਹਨ ਜੋ ਕੰਪਾਈਲਰ ਵਿੱਚ ਕੀਤੇ ਗਏ ਹਨ। ਇਹ ਤਿਆਰ ਕੀਤੇ ਕੋਡ ਵਿੱਚ ਬੱਗ ਠੀਕ ਕਰ ਸਕਦੇ ਹਨ ਜਾਂ ਕੰਪਾਈਲਰ ਦੇ ਓਪਰੇਸ਼ਨ ਨੂੰ ਬਦਲ ਸਕਦੇ ਹਨ ਜੋ ਉਪਭੋਗਤਾ ਦੀ ਗਾਈਡ ਦੁਆਰਾ ਇਰਾਦਾ ਜਾਂ ਨਿਰਧਾਰਿਤ ਕੀਤਾ ਗਿਆ ਸੀ। ਉਪ-ਸਿਰਲੇਖਾਂ ਵਿੱਚ ਸੰਸਕਰਣ ਨੰਬਰ ਪਹਿਲੇ ਕੰਪਾਈਲਰ ਸੰਸਕਰਣ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ ਜਿਸ ਵਿੱਚ ਆਉਣ ਵਾਲੀਆਂ ਸਮੱਸਿਆਵਾਂ ਲਈ ਫਿਕਸ ਸ਼ਾਮਲ ਹਨ। ਸਿਰਲੇਖ ਵਿੱਚ ਬਰੈਕਟ ਕੀਤੇ ਲੇਬਲ(ਲੇ) ਟਰੈਕਿੰਗ ਡੇਟਾਬੇਸ ਵਿੱਚ ਮੁੱਦੇ ਦੀ ਪਛਾਣ ਹਨ। ਇਹ ਉਪਯੋਗੀ ਹੋ ਸਕਦੇ ਹਨ ਜੇਕਰ ਤੁਹਾਨੂੰ ਸਹਾਇਤਾ ਨਾਲ ਸੰਪਰਕ ਕਰਨ ਦੀ ਲੋੜ ਹੈ।
ਨੋਟ ਕਰੋ ਕਿ ਡਿਵਾਈਸ ਨਾਲ ਸੰਬੰਧਿਤ ਡਿਵਾਈਸ ਫੈਮਿਲੀ ਪੈਕ (DFP) ਵਿੱਚ ਕੁਝ ਡਿਵਾਈਸ-ਵਿਸ਼ੇਸ਼ ਸਮੱਸਿਆਵਾਂ ਨੂੰ ਠੀਕ ਕੀਤਾ ਗਿਆ ਹੈ। DFP ਵਿੱਚ ਕੀਤੀਆਂ ਤਬਦੀਲੀਆਂ ਬਾਰੇ ਜਾਣਕਾਰੀ ਲਈ ਅਤੇ ਨਵੀਨਤਮ ਪੈਕ ਡਾਊਨਲੋਡ ਕਰਨ ਲਈ MPLAB ਪੈਕ ਮੈਨੇਜਰ ਨੂੰ ਦੇਖੋ।
ਸੰਸਕਰਣ 2.40
ਬਹੁਤ ਆਰਾਮਦਾਇਕ (XCS-2876) -mrelax ਵਿਕਲਪ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਸਮੇਂ, ਕੰਪਾਈਲਰ ਕੁਝ ਭਾਗਾਂ ਨੂੰ ਇਕੱਠੇ ਨਹੀਂ ਨਿਰਧਾਰਤ ਕਰ ਰਿਹਾ ਸੀ, ਨਤੀਜੇ ਵਜੋਂ ਘੱਟ ਅਨੁਕੂਲ ਕੋਡ ਆਕਾਰ ਹੁੰਦਾ ਹੈ। ਇਹ ਨਵੀਂ MUSL ਲਾਇਬ੍ਰੇਰੀਆਂ ਜਾਂ ਕਮਜ਼ੋਰ ਚਿੰਨ੍ਹਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨ ਵਾਲੇ ਕੋਡ ਨਾਲ ਹੋ ਸਕਦਾ ਹੈ।
ਚੇਤਾਵਨੀ ਵਿੱਚ ਦੱਸੇ ਅਨੁਸਾਰ ਮੈਪਿੰਗ ਵਿਸ਼ੇਸ਼ਤਾ ਅਯੋਗ ਨਹੀਂ ਹੈ (XCS-2875) ਲਾਗਤ-ਡਾਟਾ-ਇਨ-ਸੰਰਚਨਾ ਮੈਪਡਪ੍ਰੋਗਮੇਮ ਵਿਸ਼ੇਸ਼ਤਾ ਸਮਰੱਥ ਕੀਤੀ ਜਾ ਰਹੀ ਲਾਗਤ-ਡਾਟਾ-ਇਨ-ਪ੍ਰੋਮ ਵਿਸ਼ੇਸ਼ਤਾ 'ਤੇ ਨਿਰਭਰ ਕਰਦੀ ਹੈ। ਜੇਕਰ cost-data-ipconfig-mapped-proem ਵਿਸ਼ੇਸ਼ਤਾ ਵਿਕਲਪ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸਪੱਸ਼ਟ ਤੌਰ 'ਤੇ ਸਮਰੱਥ ਕੀਤੀ ਗਈ ਸੀ ਅਤੇ ਲਾਗਤ-ਡਾਟਾ-ਇਨਪ੍ਰੋਗਮੇਮ ਵਿਸ਼ੇਸ਼ਤਾ ਨੂੰ ਅਸਮਰੱਥ ਕੀਤਾ ਗਿਆ ਸੀ, ਤਾਂ ਲਿੰਕ ਸਟੈਪ ਅਸਫਲ ਹੋ ਗਿਆ ਸੀ, ਇੱਕ ਚੇਤਾਵਨੀ ਸੰਦੇਸ਼ ਦੇ ਬਾਵਜੂਦ, ਜੋ ਕਿ ਡੇਟਾ-ਇਨ-ਕਨਫਿਗ-ਮੈਪਡ- proem ਵਿਸ਼ੇਸ਼ਤਾ ਆਪਣੇ ਆਪ ਹੀ ਅਯੋਗ ਕਰ ਦਿੱਤੀ ਗਈ ਸੀ, ਜੋ ਕਿ ਪੂਰੀ ਤਰ੍ਹਾਂ ਸਹੀ ਨਹੀਂ ਸੀ। const-data-in-config-mapped-proem ਵਿਸ਼ੇਸ਼ਤਾ ਹੁਣ ਇਸ ਸਥਿਤੀ ਵਿੱਚ ਪੂਰੀ ਤਰ੍ਹਾਂ ਅਯੋਗ ਹੈ।
NVMCTRL (XCS-2848) ਨੂੰ ਸਹੀ ਢੰਗ ਨਾਲ ਐਕਸੈਸ ਕਰਨ ਲਈ DFP ਬਦਲਦਾ ਹੈ AVR64EA ਡਿਵਾਈਸਾਂ ਦੁਆਰਾ ਵਰਤੇ ਗਏ ਰਨਟਾਈਮ ਸਟਾਰਟਅਪ ਕੋਡ ਨੇ ਇਸ ਗੱਲ ਨੂੰ ਧਿਆਨ ਵਿੱਚ ਨਹੀਂ ਰੱਖਿਆ ਕਿ NVMCTRL ਰਜਿਸਟਰ ਕੌਂਫਿਗਰੇਸ਼ਨ ਚੇਂਜ ਪ੍ਰੋਟੈਕਸ਼ਨ (ਸੀਸੀਪੀ) ਦੇ ਅਧੀਨ ਸੀ ਅਤੇ IO SFR ਨੂੰ const-data-in configmapped-proem ਕੰਪਾਈਲਰ ਦੁਆਰਾ ਵਰਤੇ ਗਏ ਪੰਨੇ 'ਤੇ ਸੈੱਟ ਕਰਨ ਦੇ ਯੋਗ ਨਹੀਂ ਸੀ। ਵਿਸ਼ੇਸ਼ਤਾ. AVR-Ex_DFP ਸੰਸਕਰਣ 2.2.55 ਵਿੱਚ ਕੀਤੀਆਂ ਤਬਦੀਲੀਆਂ ਰਨਟਾਈਮ ਸਟਾਰਟਅੱਪ ਕੋਡ ਨੂੰ ਇਸ ਰਜਿਸਟਰ ਵਿੱਚ ਸਹੀ ਢੰਗ ਨਾਲ ਲਿਖਣ ਦੀ ਆਗਿਆ ਦੇਵੇਗੀ।
ਫਲੈਸ਼ ਮੈਪਿੰਗ ਤੋਂ ਬਚਣ ਲਈ DFP ਬਦਲਾਅ (XCS-2847) AVR128DA28/32/48/64 ਸਿਲੀਕਾਨ ਇਰੱਟਾ (DS80000882) ਵਿੱਚ ਰਿਪੋਰਟ ਕੀਤੀ ਗਈ ਫਲੈਸ਼ ਮੈਪਿੰਗ ਡਿਵਾਈਸ ਵਿਸ਼ੇਸ਼ਤਾ ਦੇ ਨਾਲ ਇੱਕ ਸਮੱਸਿਆ ਲਈ ਇੱਕ ਕੰਮ-ਕਾਰ ਲਾਗੂ ਕੀਤਾ ਗਿਆ ਹੈ। const-data-in-config-mapped-proem ਕੰਪਾਈਲਰ ਵਿਸ਼ੇਸ਼ਤਾ ਪ੍ਰਭਾਵਿਤ ਡਿਵਾਈਸਾਂ ਲਈ ਮੂਲ ਰੂਪ ਵਿੱਚ ਲਾਗੂ ਨਹੀਂ ਕੀਤੀ ਜਾਵੇਗੀ, ਅਤੇ ਇਹ ਤਬਦੀਲੀ AVR-Ex_DFP ਸੰਸਕਰਣ 2.2.160 ਵਿੱਚ ਦਿਖਾਈ ਦੇਵੇਗੀ।
sinhf ਜਾਂ coshf (XCS-2834) ਨਾਲ ਗਲਤੀ ਬਣਾਓ sinhf () ਜਾਂ coshf () ਲਾਇਬ੍ਰੇਰੀ ਫੰਕਸ਼ਨਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੀਆਂ ਕੋਸ਼ਿਸ਼ਾਂ ਦੇ ਨਤੀਜੇ ਵਜੋਂ ਇੱਕ ਅਣ-ਪ੍ਰਭਾਸ਼ਿਤ ਸੰਦਰਭ ਦਾ ਵਰਣਨ ਕਰਦੇ ਹੋਏ ਇੱਕ ਲਿੰਕ ਗਲਤੀ ਹੋਈ। ਹਵਾਲਾ ਦਿੱਤੇ ਗੁੰਮ ਫੰਕਸ਼ਨ ਨੂੰ ਹੁਣ ਕੰਪਾਈਲਰ ਡਿਸਟਰੀਬਿਊਸ਼ਨ ਵਿੱਚ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ ਹੈ।
nopa (XCS-2833) ਨਾਲ ਗਲਤੀਆਂ ਬਣਾਓ nopa ਵਿਸ਼ੇਸ਼ਤਾ ਨੂੰ ਇੱਕ ਫੰਕਸ਼ਨ ਦੇ ਨਾਲ ਵਰਤਣਾ ਜਿਸਦਾ ਅਸੈਂਬਲਰ ਨਾਮ () ਦੇ ਰੂਪ ਵਿੱਚ ਨਿਰਧਾਰਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਅਸੈਂਬਲਰ ਤੋਂ ਗਲਤੀ ਸੁਨੇਹਿਆਂ ਨੂੰ ਚਾਲੂ ਕੀਤਾ ਹੈ। ਇਹ ਸੁਮੇਲ ਸੰਭਵ ਨਹੀਂ ਹੈ।
ਪੁਆਇੰਟਰ ਆਰਗੂਮੈਂਟਸ (XCS-2755, XCS-2731) ਦੇ ਨਾਲ ਵਿਭਿੰਨ ਫੰਕਸ਼ਨ ਅਸਫਲਤਾ ਆਰਗੂਮੈਂਟਾਂ ਦੀ ਇੱਕ ਵੇਰੀਏਬਲ ਸੰਖਿਆ ਵਾਲੇ ਫੰਕਸ਼ਨ 24-ਬਿੱਟ (_ਮੇਮੋ ਕਿਸਮ) ਪੁਆਇੰਟਰ ਨੂੰ ਵੇਰੀਏਬਲ ਆਰਗੂਮੈਂਟ ਸੂਚੀ ਵਿੱਚ ਪਾਸ ਕੀਤੇ ਜਾਣ ਦੀ ਉਮੀਦ ਕਰਦੇ ਹਨ ਜਦੋਂ ਲਾਗਤ-ਡਾਟਾ-ਇਨ-ਪ੍ਰੋਮ ਵਿਸ਼ੇਸ਼ਤਾ ਸਮਰੱਥ ਹੁੰਦੀ ਹੈ। ਆਰਗੂਮੈਂਟਸ ਜੋ ਡੇਟਾ ਮੈਮੋਰੀ ਲਈ ਪੁਆਇੰਟਰ ਸਨ 16-ਬਿੱਟ ਆਬਜੈਕਟ ਦੇ ਤੌਰ ਤੇ ਪਾਸ ਕੀਤੇ ਜਾ ਰਹੇ ਸਨ, ਜਿਸ ਕਾਰਨ ਕੋਡ ਅਸਫਲ ਹੋ ਗਿਆ ਜਦੋਂ ਉਹਨਾਂ ਨੂੰ ਅੰਤ ਵਿੱਚ ਪੜ੍ਹਿਆ ਗਿਆ। ਜਦੋਂ ਕੰਸ ਡੇਟਾ-ਇਨ-ਪ੍ਰੋਇਮ ਵਿਸ਼ੇਸ਼ਤਾ ਸਮਰੱਥ ਹੁੰਦੀ ਹੈ, ਤਾਂ ਸਾਰੇ 16-ਬਿੱਟ ਪੁਆਇੰਟਰ ਆਰਗੂਮੈਂਟਾਂ ਨੂੰ ਹੁਣ 24-ਬਿੱਟ ਪੁਆਇੰਟਰਾਂ ਵਿੱਚ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ। strtoxxx ਲਾਇਬ੍ਰੇਰੀ ਫੰਕਸ਼ਨ ਫੇਲ ਹੋ ਰਿਹਾ ਹੈ (XCS-2620) ਜਦੋਂ const-data-in-proem ਵਿਸ਼ੇਸ਼ਤਾ ਨੂੰ ਸਮਰੱਥ ਬਣਾਇਆ ਗਿਆ ਸੀ, strtoxxx ਲਾਇਬ੍ਰੇਰੀ ਫੰਕਸ਼ਨਾਂ ਵਿੱਚ ਐਂਟਰ ਪੈਰਾਮੀਟਰ ਨੂੰ ਪ੍ਰੋਗ੍ਰਾਮ ਮੈਮੋਰੀ ਵਿੱਚ ਨਾ ਹੋਣ ਵਾਲੇ ਸਰੋਤ ਸਤਰ ਆਰਗੂਮੈਂਟਾਂ ਲਈ ਸਹੀ ਢੰਗ ਨਾਲ ਅੱਪਡੇਟ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਸੀ।
ਅਵੈਧ ਕਾਸਟਾਂ ਲਈ ਚੇਤਾਵਨੀਆਂ (XCS-2612) ਕੰਪਾਈਲਰ ਹੁਣ ਇੱਕ ਤਰੁੱਟੀ ਜਾਰੀ ਕਰੇਗਾ ਜੇਕਰ ਲਾਗਤ-ਇਨ-ਪ੍ਰੋਮ ਵਿਸ਼ੇਸ਼ਤਾ ਸਮਰੱਥ ਹੈ ਅਤੇ ਇੱਕ ਸਟ੍ਰਿੰਗ ਲਿਟਰਲ ਦਾ ਪਤਾ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ ਡੇਟਾ ਐਡਰੈੱਸ ਸਪੇਸ (ਕਾਂਸਟ ਕੁਆਲੀਫਾਇਰ ਨੂੰ ਛੱਡਣਾ) ਵਿੱਚ ਕਾਸਟ ਕੀਤਾ ਗਿਆ ਹੈ, ਸਾਬਕਾ ਲਈample, (uint8 t *) “ਹੈਲੋ ਵਰਲਡ!”। ਇੱਕ ਚੇਤਾਵਨੀ ਇੱਕ ਮੁੱਦਾ ਹੈ ਜੇਕਰ ਪਤਾ ਅਵੈਧ ਹੋ ਸਕਦਾ ਹੈ ਜਦੋਂ ਇੱਕ const ਡੇਟਾ ਪੁਆਇੰਟਰ ਨੂੰ ਸਪਸ਼ਟ ਤੌਰ ਤੇ ਡੇਟਾ ਐਡਰੈੱਸ ਸਪੇਸ ਵਿੱਚ ਕਾਸਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।
ਅਣ-ਸ਼ੁਰੂਆਤੀ ਕੰਸਟ ਵਸਤੂਆਂ ਦੀ ਪਲੇਸਮੈਂਟ (XCS-2408) ਅਣ-ਸ਼ੁਰੂਆਤੀ const ਅਤੇ const v olatile ਆਬਜੈਕਟ ਉਹਨਾਂ ਡਿਵਾਈਸਾਂ ਤੇ ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਵਿੱਚ ਨਹੀਂ ਰੱਖੇ ਜਾ ਰਹੇ ਸਨ ਜੋ ਉਹਨਾਂ ਦੀ ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਦੇ ਸਾਰੇ ਜਾਂ ਹਿੱਸੇ ਨੂੰ ਡੇਟਾ ਐਡਰੈੱਸ ਸਪੇਸ ਵਿੱਚ ਮੈਪ ਕਰਦੇ ਹਨ। ਇਹਨਾਂ ਡਿਵਾਈਸਾਂ ਲਈ, ਅਜਿਹੀਆਂ ਵਸਤੂਆਂ ਨੂੰ ਹੁਣ ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਵਿੱਚ ਰੱਖਿਆ ਗਿਆ ਹੈ, ਉਹਨਾਂ ਦੇ ਕੰਮ ਨੂੰ ਹੋਰ ਡਿਵਾਈਸਾਂ ਦੇ ਨਾਲ ਇਕਸਾਰ ਬਣਾਉਂਦੇ ਹੋਏ।
ਸੰਸਕਰਣ 2.39 (ਕਾਰਜਸ਼ੀਲ ਸੁਰੱਖਿਆ ਰੀਲੀਜ਼)
ਕੋਈ ਨਹੀਂ।
ਸੰਸਕਰਣ 2.36
ਦੇਰੀ ਕਰਨ ਵੇਲੇ ਗਲਤੀ (XCS-2774) ਡਿਫੌਲਟ ਫਰੀ ਮੋਡ ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਵਿੱਚ ਮਾਮੂਲੀ ਤਬਦੀਲੀਆਂ ਨੇ ਬਿਲਟ-ਇਨ ਫੰਕਸ਼ਨਾਂ ਵਿੱਚ ਦੇਰੀ ਵਿੱਚ ਓਪਰੇਂਡ ਸਮੀਕਰਨਾਂ ਨੂੰ ਲਗਾਤਾਰ ਫੋਲਡ ਕਰਨ ਤੋਂ ਰੋਕਿਆ, ਨਤੀਜੇ ਵਜੋਂ ਉਹਨਾਂ ਨੂੰ ਗੈਰ-ਸੰਪਰਕ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਗਲਤੀ ਨੂੰ ਟਰਿੱਗਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ: _buil tin avr delay_ cycles ac oppile ਦੀ ਉਮੀਦ ਕਰਦਾ ਹੈ ਸਮਾਂ ਪੂਰਨ ਅੰਕ ਸਥਿਰ।
ਸੰਸਕਰਣ 2.35
_at (XCS-2653) ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਨਿਰੰਤਰ ਵੰਡ ਇੱਕੋ ਨਾਮ ਵਾਲੇ ਭਾਗ ਵਿੱਚ ਮਲਟੀਪਲ ਆਬਜੈਕਟ ਸਥਾਨਾਂ ਦੀ ਨਿਰੰਤਰ ਵੰਡ ਅਤੇ () ਦੀ ਵਰਤੋਂ ਨਾਲ ਸਹੀ ਢੰਗ ਨਾਲ ਕੰਮ ਨਹੀਂ ਕੀਤਾ। ਸਾਬਕਾ ਲਈample: constchararrl [ ] at tri Butte (sect on(“.misses”))) at (Ox50 0 ) = {Oxo, Ox CD}; ਲਾਗਤ char arr2[ ] at tri Butte ((ਸੈਕਸ਼ਨ(“.my s eke”)))) = {Oxen, Ox FE}; aril ਦੇ ਤੁਰੰਤ ਬਾਅਦ arr2 ਰੱਖਣਾ ਚਾਹੀਦਾ ਹੈ।
ਸੈਕਸ਼ਨ ਸ਼ੁਰੂ ਪਤੇ ਨਿਰਧਾਰਤ ਕਰਨਾ (XCS-2650) -ਵਾਲ, -ਸੈਕਸ਼ਨ-ਸਟਾਰਟ ਵਿਕਲਪ ਨਾਮਜ਼ਦ ਸ਼ੁਰੂਆਤੀ ਪਤੇ 'ਤੇ ਭਾਗਾਂ ਨੂੰ ਰੱਖਣ ਵਿੱਚ ਚੁੱਪਚਾਪ ਅਸਫਲ ਹੋ ਰਿਹਾ ਸੀ। ਇਹ ਮੁੱਦਾ ਕਿਸੇ ਵੀ ਕਸਟਮ-ਨਾਮ ਵਾਲੇ ਭਾਗਾਂ ਲਈ ਹੱਲ ਕੀਤਾ ਗਿਆ ਹੈ; ਹਾਲਾਂਕਿ, ਇਹ ਕਿਸੇ ਵੀ ਮਿਆਰੀ ਭਾਗਾਂ ਲਈ ਕੰਮ ਨਹੀਂ ਕਰੇਗਾ, ਜਿਵੇਂ ਕਿ . ਟੈਕਸਟ ਜਾਂ . bss, ਜਿਸ ਨੂੰ ਇੱਕ -Wl, -T ਵਿਕਲਪ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਰੱਖਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ।
ਆਰਾਮ ਕਰਨ ਵੇਲੇ ਲਿੰਕਰ ਕਰੈਸ਼ ਹੋ ਜਾਂਦਾ ਹੈ (XCS-2647) ਜਦੋਂ -relax ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਨੂੰ ਸਮਰੱਥ ਬਣਾਇਆ ਗਿਆ ਸੀ ਅਤੇ ਕੋਡ ਜਾਂ ਡੇਟਾ ਸੈਕਸ਼ਨ ਸਨ ਜੋ ਉਪਲਬਧ ਮੈਮੋਰੀ ਵਿੱਚ ਫਿੱਟ ਨਹੀਂ ਸਨ, ਲਿੰਕਰ ਕਰੈਸ਼ ਹੋ ਗਿਆ। ਹੁਣ, ਅਜਿਹੀ ਸਥਿਤੀ ਵਿੱਚ, ਇਸ ਦੀ ਬਜਾਏ ਗਲਤੀ ਸੰਦੇਸ਼ ਜਾਰੀ ਕੀਤੇ ਜਾਂਦੇ ਹਨ।
ਖਰਾਬ EEPROM ਪਹੁੰਚ (XCS-2629) ਲੇਪਰੋਮਾ _read_ ਬਲਾਕ ਰੁਟੀਨ ਨੇ ਮੈਗਾ ਡਿਵਾਈਸਾਂ 'ਤੇ ਸਹੀ ਢੰਗ ਨਾਲ ਕੰਮ ਨਹੀਂ ਕੀਤਾ ਜਦੋਂ -monist-data-in-proem ਵਿਕਲਪ ਨੂੰ ਸਮਰੱਥ ਬਣਾਇਆ ਗਿਆ ਸੀ (ਜੋ ਕਿ ਡਿਫਾਲਟ ਸਥਿਤੀ ਹੈ), ਨਤੀਜੇ ਵਜੋਂ EEPROM ਮੈਮੋਰੀ ਸਹੀ ਢੰਗ ਨਾਲ ਨਹੀਂ ਪੜ੍ਹੀ ਜਾ ਰਹੀ ਹੈ।
ਅਵੈਧ ਮੈਮੋਰੀ ਵੰਡ (XCS-2593, XCS-2651) ਜਦੋਂ -ਟੈਕਸਟ ਜਾਂ -ਟਾਟਾ ਲਿੰਕਰ ਵਿਕਲਪ (ਉਦਾਹਰਨ ਲਈample ਇੱਕ -Wl ਡਰਾਈਵਰ ਵਿਕਲਪ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪਾਸ ਕੀਤਾ ਗਿਆ) ਦਿੱਤਾ ਗਿਆ ਹੈ, ਸੰਬੰਧਿਤ ਟੈਕਸਟ/ਡਾਟਾ ਖੇਤਰ ਮੂਲ ਅੱਪਡੇਟ ਕੀਤਾ ਗਿਆ ਸੀ; ਹਾਲਾਂਕਿ, ਅੰਤਮ ਪਤੇ ਨੂੰ ਉਸ ਅਨੁਸਾਰ ਐਡਜਸਟ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਸੀ, ਜਿਸ ਨਾਲ ਖੇਤਰ ਟੀਚਾ ਡਿਵਾਈਸ ਦੀ ਮੈਮੋਰੀ ਰੇਂਜ ਤੋਂ ਵੱਧ ਗਿਆ ਸੀ।
ਅਵੈਧ ATtiny ਇੰਟਰੱਪਟ ਕੋਡ (XCS-2465) ਜਦੋਂ ਟੈਟਿਨ ਡਿਵਾਈਸਾਂ ਲਈ ਬਿਲਡਿੰਗ ਅਤੇ ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਅਸਮਰੱਥ (-00), ਇੰਟਰੱਪਟ ਫੰਕਸ਼ਨਾਂ ਨੇ ਰੇਂਜ ਅਸੈਂਬਲਰ ਸੁਨੇਹਿਆਂ ਤੋਂ ਬਾਹਰ ਓਪਰੇਂਡ ਨੂੰ ਚਾਲੂ ਕੀਤਾ ਹੋ ਸਕਦਾ ਹੈ।
ਵਿਕਲਪ ਪਾਸ ਨਹੀਂ ਕੀਤੇ ਜਾ ਰਹੇ (XCS-2452) ਮਲਟੀਪਲ, ਕਾਮੇ ਨਾਲ ਵੱਖ ਕੀਤੇ ਲਿੰਕਰ ਵਿਕਲਪਾਂ ਦੇ ਨਾਲ -Wl ਵਿਕਲਪ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਸਮੇਂ, ਲਿੰਕਰ ਦੇ ਸਾਰੇ ਵਿਕਲਪ ਲਿੰਕਰ ਨੂੰ ਨਹੀਂ ਦਿੱਤੇ ਜਾ ਰਹੇ ਸਨ।
ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ (XCS-2450) ਨੂੰ ਅਸਿੱਧੇ ਤੌਰ 'ਤੇ ਪੜ੍ਹਨ ਵਿੱਚ ਗਲਤੀ ਕੁਝ ਸਥਿਤੀਆਂ ਵਿੱਚ, ਕੰਪਾਈਲਰ ਨੇ ਇੱਕ ਅੰਦਰੂਨੀ ਗਲਤੀ (ਅਣਪਛਾਣਯੋਗ insn) ਪੈਦਾ ਕੀਤੀ ਜਦੋਂ ਇੱਕ ਪੁਆਇੰਟਰ ਤੋਂ ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਵਿੱਚ ਦੋ ਬਾਈਟ ਮੁੱਲ ਨੂੰ ਪੜ੍ਹਦੇ ਹੋਏ।
ਸੰਸਕਰਣ 2.32
ਲਾਇਬ੍ਰੇਰੀ ਦੀ ਦੂਜੀ ਪਹੁੰਚ ਅਸਫਲ (XCS-2381) xc8-ar ਦੇ ਵਿੰਡੋਜ਼ ਸੰਸਕਰਣ ਨੂੰ ਬੁਲਾਇਆ ਜਾ ਰਿਹਾ ਹੈ। ਮੌਜੂਦਾ ਲਾਇਬ੍ਰੇਰੀ ਆਰਕਾਈਵ ਨੂੰ ਐਕਸੈਸ ਕਰਨ ਲਈ exe ਲਾਇਬ੍ਰੇਰੀ ਆਰਕਾਈਵਰ ਦੂਜੀ ਵਾਰ ਗਲਤੀ ਸੰਦੇਸ਼ ਦਾ ਨਾਮ ਬਦਲਣ ਵਿੱਚ ਅਸਮਰੱਥ ਹੋ ਸਕਦਾ ਹੈ।
ਸੰਸਕਰਣ 2.31
ਅਸਪਸ਼ਟ ਕੰਪਾਈਲਰ ਅਸਫਲਤਾਵਾਂ (XCS-2367) ਵਿੰਡੋਜ਼ ਪਲੇਟਫਾਰਮਾਂ 'ਤੇ ਚੱਲਦੇ ਸਮੇਂ ਜਿਸ ਵਿੱਚ ਸਿਸਟਮ ਅਸਥਾਈ ਡਾਇਰੈਕਟਰੀ ਨੂੰ ਇੱਕ ਮਾਰਗ 'ਤੇ ਸੈੱਟ ਕੀਤਾ ਗਿਆ ਸੀ ਜਿਸ ਵਿੱਚ ਇੱਕ ਬਿੰਦੀ' ਸ਼ਾਮਲ ਹੁੰਦੀ ਹੈ। ਅੱਖਰ, ਕੰਪਾਈਲਰ ਚਲਾਉਣ ਵਿੱਚ ਅਸਫਲ ਹੋ ਸਕਦਾ ਹੈ।
ਸੰਸਕਰਣ 2.30
ਰੂਪਰੇਖਾ (XCS-2299) ਤੋਂ ਬਾਅਦ ਗਲੋਬਲ ਲੇਬਲ ਗੁੰਮ ਗਏ ਹੱਥ-ਲਿਖਤ ਅਸੈਂਬਲੀ ਕੋਡ ਜੋ ਗਲੋਬਲ ਲੇਬਲਾਂ ਨੂੰ ਅਸੈਂਬਲੀ ਕ੍ਰਮਾਂ ਦੇ ਅੰਦਰ ਰੱਖਦਾ ਹੈ ਜੋ ਪ੍ਰਕਿਰਿਆਤਮਕ ਐਬਸਟਰੈਕਸ਼ਨ ਦੁਆਰਾ ਫੈਕਟਰ ਕੀਤੇ ਜਾਂਦੇ ਹਨ, ਸ਼ਾਇਦ ਸਹੀ ਢੰਗ ਨਾਲ ਮੁੜ-ਸਥਾਪਿਤ ਨਾ ਕੀਤੇ ਗਏ ਹੋਣ।
ਇੱਕ ਆਰਾਮਦਾਇਕ ਕਰੈਸ਼ (XCS-2287) -ਮਰਲਾਡ ਵਿਕਲਪ ਦੀ ਵਰਤੋਂ ਕਰਨ ਨਾਲ ਲਿੰਕਰ ਕਰੈਸ਼ ਹੋ ਸਕਦਾ ਹੈ ਜਦੋਂ ਟੇਲ ਜੰਪ ਰਿਲੈਕਸੇਸ਼ਨ ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਨੇ ਰੀਟ ਹਦਾਇਤਾਂ ਨੂੰ ਹਟਾਉਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਜੋ ਇੱਕ ਭਾਗ ਦੇ ਅੰਤ ਵਿੱਚ ਨਹੀਂ ਸਨ।
ਲੇਬਲ ਨੂੰ ਮੁੱਲਾਂ ਵਜੋਂ ਅਨੁਕੂਲ ਬਣਾਉਣ ਵੇਲੇ ਕਰੈਸ਼ (XCS-2282) ਕੋਡ "ਵੈਲਯੂਜ਼ ਦੇ ਤੌਰ 'ਤੇ ਲੇਬਲ" ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ GNU C ਭਾਸ਼ਾ ਐਕਸਟੈਂਸ਼ਨ ਦੇ ਕਾਰਨ ਵਿਧੀਗਤ ਐਬਸਟ੍ਰਕਸ਼ਨ ਓਪਟੀਮਾਈਜੇਸ਼ਨ ਕ੍ਰੈਸ਼ ਹੋ ਸਕਦੀ ਹੈ, ਇੱਕ ਆਉਟਲਾਈਨਡ VMA ਰੇਂਜ ਸਪੈਨਸ ਫਿਕਸਅੱਪ ਗਲਤੀ ਦੇ ਨਾਲ।
ਇੰਨਾ ਸਥਿਰ ਨਹੀਂ (XCS-2271) ਤੋਂ ਸਟਾਰਟ () ਅਤੇ ਹੋਰ ਫੰਕਸ਼ਨਾਂ ਲਈ ਪ੍ਰੋਟੋਟਾਈਪ ਜਦੋਂ -monist-data inprogmem ਵਿਸ਼ੇਸ਼ਤਾ ਅਸਮਰੱਥ ਹੁੰਦੀ ਹੈ ਤਾਂ ਵਾਪਸ ਕੀਤੇ ਸਟ੍ਰਿੰਗ ਪੁਆਇੰਟਰਾਂ 'ਤੇ ਗੈਰ-ਮਿਆਰੀ ਲਾਗਤ ਕੁਆਲੀਫਾਇਰ ਨੂੰ ਹੁਣ ਨਿਰਧਾਰਿਤ ਨਹੀਂ ਕਰਦੇ। ਨੋਟ ਕਰੋ ਕਿ avrxmega3 ਅਤੇ avertin ਡਿਵਾਈਸਾਂ ਦੇ ਨਾਲ, ਇਹ ਵਿਸ਼ੇਸ਼ਤਾ ਸਥਾਈ ਤੌਰ 'ਤੇ ਸਮਰੱਥ ਹੈ।
ਗੁੰਮਸ਼ੁਦਾ ਸ਼ੁਰੂਆਤੀ (XCS-2269) ਜਦੋਂ ਇੱਕ ਅਨੁਵਾਦ ਯੂਨਿਟ ਵਿੱਚ ਇੱਕ ਤੋਂ ਵੱਧ ਵੇਰੀਏਬਲਾਂ ਨੂੰ ਇੱਕ ਭਾਗ ਵਿੱਚ ਰੱਖਿਆ ਗਿਆ ਸੀ (ਭਾਗ ਜਾਂ ਵਿਸ਼ੇਸ਼ਤਾ ((ਸੈਕਸ਼ਨ)) ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ), ਅਤੇ ਪਹਿਲਾ ਅਜਿਹਾ ਵੇਰੀਏਬਲ ਜ਼ੀਰੋ ਇਨੀਸ਼ੀਅਲਾਈਜ਼ਡ ਸੀ ਜਾਂ ਉਸ ਵਿੱਚ ਸ਼ੁਰੂਆਤੀ ਨਹੀਂ ਸੀ, ਉਸੇ ਅਨੁਵਾਦ ਯੂਨਿਟ ਵਿੱਚ ਦੂਜੇ ਵੇਰੀਏਬਲਾਂ ਲਈ ਸ਼ੁਰੂਆਤੀ ਜੋ ਕਿ ਉਸੇ ਭਾਗ ਵਿੱਚ ਰੱਖੇ ਗਏ ਸਨ, ਗੁਆਚ ਗਏ ਸਨ।
ਸੰਸਕਰਣ 2.29 (ਕਾਰਜਸ਼ੀਲ ਸੁਰੱਖਿਆ ਰੀਲੀਜ਼)
ਕੋਈ ਨਹੀਂ।
ਸੰਸਕਰਣ 2.20
ਲੰਬੀਆਂ ਕਮਾਂਡਾਂ ਨਾਲ ਗਲਤੀ (XCS-1983) ਇੱਕ AVR ਟਾਰਗਿਟ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਸਮੇਂ, ਕੰਪਾਈਲਰ ਇੱਕ ਨਾਲ ਬੰਦ ਹੋ ਸਕਦਾ ਹੈ file ਗਲਤੀ ਨਹੀਂ ਮਿਲੀ, ਜੇਕਰ ਕਮਾਂਡ ਲਾਈਨ ਬਹੁਤ ਵੱਡੀ ਸੀ ਅਤੇ ਇਸ ਵਿੱਚ ਵਿਸ਼ੇਸ਼ ਅੱਖਰ ਜਿਵੇਂ ਕਿ ਕੋਟਸ, ਬੈਕਸਲੈਸ਼ ਆਦਿ ਸ਼ਾਮਲ ਸਨ।
ਅਸਾਈਨ ਕੀਤੇ ਰੋਡਾਟਾ ਸੈਕਸ਼ਨ (XCS-1920) AVR ਲਿੰਕਰ avrxmega3 ਅਤੇ avrtiny architects ਲਈ ਬਣਾਉਂਦੇ ਸਮੇਂ ਕਸਟਮ ਰੋਡਾਟਾ ਭਾਗਾਂ ਲਈ ਮੈਮੋਰੀ ਨਿਰਧਾਰਤ ਕਰਨ ਵਿੱਚ ਅਸਫਲ ਰਿਹਾ, ਸੰਭਾਵੀ ਤੌਰ 'ਤੇ ਮੈਮੋਰੀ ਓਵਰਲੈਪ ਗਲਤੀਆਂ ਪੈਦਾ ਕਰਦਾ ਹੈ।
ਸੰਸਕਰਣ 2.19 (ਕਾਰਜਸ਼ੀਲ ਸੁਰੱਖਿਆ ਰੀਲੀਜ਼)
ਕੋਈ ਨਹੀਂ।
ਸੰਸਕਰਣ 2.10
ਮੁੜ-ਸਥਾਨ ਦੀਆਂ ਅਸਫਲਤਾਵਾਂ (XCS-1891) ਸਭ ਤੋਂ ਵਧੀਆ ਫਿੱਟ ਐਲੋਕਟਰ ਲਿੰਕਰ ਆਰਾਮ ਤੋਂ ਬਾਅਦ ਭਾਗਾਂ ਦੇ ਵਿਚਕਾਰ ਮੈਮੋਰੀ 'ਹੋਲ' ਛੱਡ ਰਿਹਾ ਸੀ। ਮੈਮੋਰੀ ਨੂੰ ਖੰਡਿਤ ਕਰਨ ਤੋਂ ਇਲਾਵਾ, ਇਸ ਨੇ ਪੀਸੀ-ਰਿਲੇਟਿਵ ਜੰਪਸ ਜਾਂ ਕਾਲਾਂ ਦਾ ਸੀਮਾ ਤੋਂ ਬਾਹਰ ਹੋਣ ਨਾਲ ਸਬੰਧਤ ਲਿੰਕਰ ਰੀਲੋਕੇਸ਼ਨ ਅਸਫਲਤਾਵਾਂ ਹੋਣ ਦੀ ਸੰਭਾਵਨਾ ਨੂੰ ਵਧਾਇਆ ਹੈ।
ਹਿਦਾਇਤਾਂ ਢਿੱਲ ਨਾਲ ਨਹੀਂ ਬਦਲੀਆਂ (XCS-1889) ਜੰਪ ਜਾਂ ਕਾਲ ਨਿਰਦੇਸ਼ਾਂ ਲਈ ਲਿੰਕਰ ਢਿੱਲ ਨਹੀਂ ਦਿੱਤੀ ਗਈ ਸੀ ਜਿਨ੍ਹਾਂ ਦੇ ਟੀਚੇ ਢਿੱਲੇ ਹੋਣ 'ਤੇ ਪਹੁੰਚਯੋਗ ਹੋ ਜਾਂਦੇ ਹਨ।
ਗੁੰਮ ਹੈ ਕਾਰਜਕੁਸ਼ਲਤਾ (XCSE-388) ਤੋਂ ਕਈ ਪਰਿਭਾਸ਼ਾਵਾਂ , ਜਿਵੇਂ ਕਿ clock_ div_t ਅਤੇ clock_prescale_set (), ਨੂੰ ਡਿਵਾਈਸਾਂ ਲਈ ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਸੀ, ਜਿਸ ਵਿੱਚ ATmega324PB, ATmega328PB, ATtiny441, ਅਤੇ ATtiny841 ਸ਼ਾਮਲ ਹਨ।
ਗਾਇਬ ਮੈਕਰੋ ਪ੍ਰੀਪ੍ਰੋਸੈਸਰ ਮੈਕਰੋਜ਼_ xcs _MODE_, _xcs VERSION, _xc, ਅਤੇ xcs ਕੰਪਾਈਲਰ ਦੁਆਰਾ ਆਪਣੇ ਆਪ ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ ਕੀਤੇ ਗਏ ਸਨ। ਇਹ ਹੁਣ ਉਪਲਬਧ ਹਨ।
ਸੰਸਕਰਣ 2.05
ਅੰਦਰੂਨੀ ਕੰਪਾਈਲਰ ਗਲਤੀ (XCS-1822) ਵਿੰਡੋਜ਼ ਦੇ ਅਧੀਨ ਬਣਾਉਂਦੇ ਸਮੇਂ, ਕੋਡ ਨੂੰ ਅਨੁਕੂਲ ਬਣਾਉਣ ਵੇਲੇ ਇੱਕ ਅੰਦਰੂਨੀ ਕੰਪਾਈਲਰ ਗਲਤੀ ਪੈਦਾ ਹੋ ਸਕਦੀ ਹੈ।
RAM ਓਵਰਫਲੋ ਦਾ ਪਤਾ ਨਹੀਂ ਲੱਗਾ (XCS-1800, XCS-1796) ਕੁਝ ਸਥਿਤੀਆਂ ਵਿੱਚ ਕੰਪਾਈਲਰ ਦੁਆਰਾ ਉਪਲਬਧ RAM ਤੋਂ ਵੱਧ ਪ੍ਰੋਗਰਾਮਾਂ ਦਾ ਪਤਾ ਨਹੀਂ ਲਗਾਇਆ ਗਿਆ ਸੀ, ਨਤੀਜੇ ਵਜੋਂ ਇੱਕ ਰਨਟਾਈਮ ਕੋਡ ਅਸਫਲ ਹੁੰਦਾ ਹੈ।
ਛੱਡੀ ਗਈ ਫਲੈਸ਼ ਮੈਮੋਰੀ (XCS-1792) avrxmega3 ਅਤੇ avrtiny ਡਿਵਾਈਸਾਂ ਲਈ, ਫਲੈਸ਼ ਮੈਮੋਰੀ ਦੇ ਹਿੱਸੇ MPLAB X IDE ਦੁਆਰਾ ਗੈਰ-ਪ੍ਰੋਗਰਾਮ ਕੀਤੇ ਰਹਿ ਸਕਦੇ ਹਨ।
ਮੁੱਖ ਨੂੰ ਚਲਾਉਣ ਵਿੱਚ ਅਸਫਲ (XCS-1788) ਕੁਝ ਸਥਿਤੀਆਂ ਵਿੱਚ ਜਿੱਥੇ ਪ੍ਰੋਗਰਾਮ ਵਿੱਚ ਕੋਈ ਗਲੋਬਲ ਵੇਰੀਏਬਲ ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ ਸਨ, ਰਨਟਾਈਮ ਸਟਾਰਟਅਪ ਕੋਡ ਬਾਹਰ ਨਹੀਂ ਆਇਆ ਅਤੇ ਮੁੱਖ () ਫੰਕਸ਼ਨ ਤੱਕ ਕਦੇ ਨਹੀਂ ਪਹੁੰਚਿਆ।
ਗਲਤ ਮੈਮੋਰੀ ਜਾਣਕਾਰੀ (XCS-1787) avrxmega3 ਅਤੇ avrtiny ਡਿਵਾਈਸਾਂ ਲਈ, avr-ਸਾਈਜ਼ ਪ੍ਰੋਗਰਾਮ ਰਿਪੋਰਟ ਕਰ ਰਿਹਾ ਸੀ ਕਿ ਸਿਰਫ-ਪੜ੍ਹਨ ਲਈ ਡੇਟਾ ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਦੀ ਬਜਾਏ RAM ਦੀ ਖਪਤ ਕਰ ਰਿਹਾ ਸੀ।
ਗਲਤ ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਰੀਡ (XCS-1783) ਡਾਟਾ ਐਡਰੈੱਸ ਸਪੇਸ ਵਿੱਚ ਮੈਪ ਕੀਤੇ ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਵਾਲੇ ਡਿਵਾਈਸਾਂ ਲਈ ਕੰਪਾਇਲ ਕੀਤੇ ਪ੍ਰੋਜੈਕਟ ਅਤੇ ਜੋ PROGMEM ਮੈਕਰੋ/ਵਿਸ਼ੇਸ਼ਤਾ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਆਬਜੈਕਟ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੇ ਹਨ, ਹੋ ਸਕਦਾ ਹੈ ਕਿ ਇਹਨਾਂ ਵਸਤੂਆਂ ਨੂੰ ਗਲਤ ਪਤੇ ਤੋਂ ਪੜ੍ਹਿਆ ਗਿਆ ਹੋਵੇ।
ਗੁਣਾਂ ਨਾਲ ਅੰਦਰੂਨੀ ਤਰੁੱਟੀ (XCS-1773) ਇੱਕ ਅੰਦਰੂਨੀ ਗਲਤੀ ਆਈ ਹੈ ਜੇਕਰ ਤੁਸੀਂ ਪੁਆਇੰਟਰ ਆਬਜੈਕਟ ਨੂੰ ਨਾਲ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਹੈ
_at () ਜਾਂ ਗੁਣ () ਟੋਕਨ ਪੁਆਇੰਟਰ ਨਾਮ ਅਤੇ dereferenced ਕਿਸਮ ਦੇ ਵਿਚਕਾਰ, ਸਾਬਕਾ ਲਈample, char*
_at ( 0x80015 0) cp; ਅਜਿਹੇ ਕੋਡ ਦਾ ਸਾਹਮਣਾ ਕਰਨ 'ਤੇ ਹੁਣ ਚੇਤਾਵਨੀ ਜਾਰੀ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।
ਮੁੱਖ ਨੂੰ ਚਲਾਉਣ ਵਿੱਚ ਅਸਫਲ (XCS-1780, XCS-1767, XCS-1754) EEPROM ਵੇਰੀਏਬਲਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਜਾਂ ਕੌਂਫਿਗ ਪ੍ਰੈਗਮਾ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਫਿਊਜ਼ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਨ ਨਾਲ ਮੁੱਖ () ਤੱਕ ਪਹੁੰਚਣ ਤੋਂ ਪਹਿਲਾਂ, ਰਨਟਾਈਮ ਸਟਾਰਟਅਪ ਕੋਡ ਵਿੱਚ ਗਲਤ ਡੇਟਾ ਸ਼ੁਰੂਆਤੀ ਅਤੇ/ਜਾਂ ਪ੍ਰੋਗਰਾਮ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਨੂੰ ਲਾਕ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।
ਛੋਟੇ ਯੰਤਰਾਂ ਨਾਲ ਫਿਊਜ਼ ਗਲਤੀ (XCS-1778, XCS-1742) attiny4/5/9/10/20/40 ਡਿਵਾਈਸਾਂ ਦੇ ਸਿਰਲੇਖ ਵਿੱਚ ਇੱਕ ਗਲਤ ਫਿਊਜ਼ ਲੰਬਾਈ ਨਿਰਧਾਰਤ ਕੀਤੀ ਗਈ ਸੀ files ਜੋ ਕਿ ਫਿਊਜ਼ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਨ ਵਾਲੇ ਕੋਡ ਨੂੰ ਬਣਾਉਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦੇ ਸਮੇਂ ਲਿੰਕਰ ਗਲਤੀਆਂ ਵੱਲ ਲੈ ਜਾਂਦਾ ਹੈ।
ਵਿਭਾਜਨ ਨੁਕਸ (XCS-1777) ਇੱਕ ਰੁਕ-ਰੁਕ ਕੇ ਵੰਡਣ ਦਾ ਨੁਕਸ ਠੀਕ ਕੀਤਾ ਗਿਆ ਹੈ।
ਅਸੈਂਬਲਰ ਕਰੈਸ਼ (XCS-1761) ਜਦੋਂ ਕੰਪਾਈਲਰ ਉਬੰਟੂ 18 ਦੇ ਅਧੀਨ ਚਲਾਇਆ ਗਿਆ ਸੀ ਤਾਂ avr-as ਅਸੈਂਬਲਰ ਕਰੈਸ਼ ਹੋ ਸਕਦਾ ਸੀ।
ਵਸਤੂਆਂ ਨੂੰ ਸਾਫ਼ ਨਹੀਂ ਕੀਤਾ ਗਿਆ (XCS-1752) ਰਨਟਾਈਮ ਸਟਾਰਟਅਪ ਕੋਡ ਦੁਆਰਾ ਅਣ-ਸ਼ੁਰੂਆਤ ਸਥਿਰ ਸਟੋਰੇਜ ਮਿਆਦ ਦੀਆਂ ਵਸਤੂਆਂ ਨੂੰ ਕਲੀਅਰ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੋ ਸਕਦਾ ਹੈ।
ਵਿਰੋਧੀ ਡਿਵਾਈਸ ਨਿਰਧਾਰਨ ਨੂੰ ਅਣਡਿੱਠ ਕੀਤਾ ਗਿਆ (XCS-1749) ਕੰਪਾਈਲਰ ਇੱਕ ਗਲਤੀ ਪੈਦਾ ਨਹੀਂ ਕਰ ਰਿਹਾ ਸੀ ਜਦੋਂ ਮਲਟੀਪਲ ਡਿਵਾਈਸ ਸਪੈਸੀਫਿਕੇਸ਼ਨ ਵਿਕਲਪ ਵਰਤੇ ਗਏ ਸਨ ਅਤੇ ਵੱਖ-ਵੱਖ ਡਿਵਾਈਸਾਂ ਨੂੰ ਸੰਕੇਤ ਕੀਤਾ ਗਿਆ ਸੀ।
ਹੀਪ ਦੁਆਰਾ ਮੈਮੋਰੀ ਕਰੱਪਸ਼ਨ (XCS-1748) ਹੀਪ_ਸਟਾਰਟ ਚਿੰਨ੍ਹ ਨੂੰ ਗਲਤ ਢੰਗ ਨਾਲ ਸੈੱਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਸੀ, ਨਤੀਜੇ ਵਜੋਂ ਆਮ ਵੇਰੀਏਬਲਾਂ ਦੇ ਹੀਪ ਦੁਆਰਾ ਖਰਾਬ ਹੋਣ ਦੀ ਸੰਭਾਵਨਾ ਹੈ।
ਲਿੰਕਰ ਰੀਲੋਕੇਸ਼ਨ ਗਲਤੀ (XCS-1739) ਇੱਕ ਲਿੰਕਰ ਰੀਲੋਕੇਸ਼ਨ ਗਲਤੀ ਹੋ ਸਕਦੀ ਹੈ ਜਦੋਂ ਕੋਡ ਵਿੱਚ ਇੱਕ rjmp ਜਾਂ rcal ਸੀ ਜਿਸਦਾ ਟੀਚਾ ਬਿਲਕੁਲ 4k ਬਾਈਟ ਦੂਰ ਹੁੰਦਾ ਹੈ।
ਸੰਸਕਰਣ 2.00
ਕੋਈ ਨਹੀਂ।
ਜਾਣੇ-ਪਛਾਣੇ ਮੁੱਦੇ
ਕੰਪਾਈਲਰ ਦੇ ਓਪਰੇਸ਼ਨ ਵਿੱਚ ਹੇਠਾਂ ਦਿੱਤੀਆਂ ਕਮੀਆਂ ਹਨ। ਇਹ ਆਮ ਕੋਡਿੰਗ ਪਾਬੰਦੀਆਂ ਹੋ ਸਕਦੀਆਂ ਹਨ, ਜਾਂ
ਉਪਭੋਗਤਾ ਦੇ ਮੈਨੂਅਲ ਵਿੱਚ ਮੌਜੂਦ ਜਾਣਕਾਰੀ ਤੋਂ ਭਟਕਣਾ। ਸਿਰਲੇਖ ਵਿੱਚ ਬਰੈਕਟ ਕੀਤੇ ਲੇਬਲ(ਲੇ) ਟਰੈਕਿੰਗ ਡੇਟਾਬੇਸ ਵਿੱਚ ਮੁੱਦੇ ਦੀ ਪਛਾਣ ਹਨ। ਇਹ ਲਾਭਦਾਇਕ ਹੋ ਸਕਦਾ ਹੈ ਜੇਕਰ ਤੁਹਾਨੂੰ ਸਹਾਇਤਾ ਨਾਲ ਸੰਪਰਕ ਕਰਨ ਦੀ ਲੋੜ ਹੈ। ਉਹ ਆਈਟਮਾਂ ਜਿਨ੍ਹਾਂ ਵਿੱਚ ਲੇਬਲ ਨਹੀਂ ਹਨ ਉਹ ਸੀਮਾਵਾਂ ਹਨ ਜੋ ਮੋਡ ਓਪਰੇੰਡੀ ਦਾ ਵਰਣਨ ਕਰਦੀਆਂ ਹਨ ਅਤੇ ਜੋ ਸਥਾਈ ਤੌਰ 'ਤੇ ਪ੍ਰਭਾਵੀ ਰਹਿਣ ਦੀ ਸੰਭਾਵਨਾ ਹੈ।
MPLAB X IDE ਏਕੀਕਰਣ
MPLAB IDE ਏਕੀਕਰਣ ਜੇਕਰ ਕੰਪਾਈਲਰ ਨੂੰ MPLAB IDE ਤੋਂ ਵਰਤਿਆ ਜਾਣਾ ਹੈ, ਤਾਂ ਤੁਹਾਨੂੰ ਕੰਪਾਈਲਰ ਨੂੰ ਸਥਾਪਿਤ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ MPLAB IDE ਨੂੰ ਇੰਸਟਾਲ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ।
ਕੋਡ ਜਨਰੇਸ਼ਨ
PA ਮੈਮੋਰੀ ਵੰਡ ਅਸਫਲਤਾ (XCS-2881) ਪ੍ਰੋਸੀਜ਼ਰਲ ਐਬਸਟਰੈਕਸ਼ਨ ਆਪਟੀਮਾਈਜ਼ਰ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਸਮੇਂ, ਲਿੰਕਰ ਮੈਮੋਰੀ ਅਲੋਕੇਸ਼ਨ ਗਲਤੀਆਂ ਦੀ ਰਿਪੋਰਟ ਕਰ ਸਕਦਾ ਹੈ ਜਦੋਂ ਕੋਡ ਦਾ ਆਕਾਰ ਡਿਵਾਈਸ 'ਤੇ ਉਪਲਬਧ ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਦੀ ਮਾਤਰਾ ਦੇ ਨੇੜੇ ਹੁੰਦਾ ਹੈ, ਭਾਵੇਂ ਪ੍ਰੋਗਰਾਮ ਉਪਲਬਧ ਸਪੇਸ ਨੂੰ ਫਿੱਟ ਕਰਨ ਦੇ ਯੋਗ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।
ਇੰਨਾ ਚੁਸਤ ਨਹੀਂ ਸਮਾਰਟ-IO (XCS-2872) ਕੰਪਾਈਲਰ ਦੀ ਸਮਾਰਟ-ਆਈਓ ਵਿਸ਼ੇਸ਼ਤਾ ਸਪ੍ਰਿੰਟ ਫੰਕਸ਼ਨ ਲਈ ਵੈਧ ਪਰ ਉਪ ਅਨੁਕੂਲ ਕੋਡ ਤਿਆਰ ਕਰੇਗੀ ਜੇਕਰ ਕੋਸਟ-ਡੇਟਾ-ਇਨ-ਪ੍ਰੋਮ ਵਿਸ਼ੇਸ਼ਤਾ ਨੂੰ ਅਸਮਰੱਥ ਕਰ ਦਿੱਤਾ ਗਿਆ ਹੈ ਜਾਂ ਜੇ ਡਿਵਾਈਸ ਨੇ ਆਪਣੀ ਸਾਰੀ ਫਲੈਸ਼ ਡਾਟਾ ਮੈਮੋਰੀ ਵਿੱਚ ਮੈਪ ਕੀਤੀ ਹੈ।
ਇਸ ਤੋਂ ਵੀ ਘੱਟ ਸਮਾਰਟ ਸਮਾਰਟ-IO (XCS-2869) ਕੰਪਾਈਲਰ ਦੀ ਸਮਾਰਟ-ਆਈਓ ਵਿਸ਼ੇਸ਼ਤਾ ਵੈਧ ਪਰ ਸਬ-ਅਪਟੀਮਲ ਕੋਡ ਤਿਆਰ ਕਰੇਗੀ ਜਦੋਂ -ਫਲੋ ਅਤੇ -ਫਨੋ-ਬਿਲ ਟੀਨ ਦੋਵੇਂ ਵਿਕਲਪ ਵਰਤੇ ਜਾਣਗੇ।
ਸਬ-ਓਨਲੀ ਰੀਡ-ਓਨਲੀ ਡਾਟਾ ਪਲੇਸਮੈਂਟ (XCS-2849) ਲਿੰਕਰ ਵਰਤਮਾਨ ਵਿੱਚ APPCODE ਅਤੇ APPDATA ਮੈਮੋਰੀ ਸੈਕਸ਼ਨਾਂ ਤੋਂ ਜਾਣੂ ਨਹੀਂ ਹੈ, ਨਾ ਹੀ ਮੈਮੋਰੀ ਮੈਪ ਵਿੱਚ [No-]Read-While-Write Divisions ਬਾਰੇ। ਨਤੀਜੇ ਵਜੋਂ, ਇੱਕ ਛੋਟੀ ਜਿਹੀ ਸੰਭਾਵਨਾ ਹੈ ਕਿ ਲਿੰਕਰ ਮੈਮੋਰੀ ਦੇ ਇੱਕ ਅਣਉਚਿਤ ਖੇਤਰ ਵਿੱਚ ਸਿਰਫ਼-ਪੜ੍ਹਨ ਲਈ ਡਾਟਾ ਨਿਰਧਾਰਤ ਕਰ ਸਕਦਾ ਹੈ। ਜੇਕਰ ਤੱਟ-ਡਾਟਾ-ਇਨ-ਪ੍ਰਾਗਮਾ ਵਿਸ਼ੇਸ਼ਤਾ ਸਮਰਥਿਤ ਹੈ, ਤਾਂ ਗੁੰਮਸ਼ੁਦਾ ਡੇਟਾ ਦੀ ਸੰਭਾਵਨਾ ਵੱਧ ਜਾਂਦੀ ਹੈ, ਖਾਸ ਤੌਰ 'ਤੇ ਜੇਕਰ ਤੱਟ-ਡਾਟਾ-ਇਨ-ਸੰਰਚਨਾ-ਮੈਪਡ-ਪ੍ਰੋਮ ਵਿਸ਼ੇਸ਼ਤਾ ਵੀ ਸਮਰੱਥ ਹੈ। ਜੇਕਰ ਲੋੜ ਹੋਵੇ ਤਾਂ ਇਹਨਾਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ ਅਯੋਗ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।
ਵਸਤੂ file ਪ੍ਰੋਸੈਸਿੰਗ ਆਰਡਰ (XCS-2863) ਉਹ ਕ੍ਰਮ ਜਿਸ ਵਿੱਚ ਵਸਤੂਆਂ files ਨੂੰ ਲਿੰਕਰ ਦੁਆਰਾ ਸੰਸਾਧਿਤ ਕੀਤਾ ਜਾਵੇਗਾ ਪਰੋਸੀਜਰਲ ਐਬਸਟਰੈਕਸ਼ਨ ਓਪਟੀਮਾਈਜੇਸ਼ਨ (-mpa ਵਿਕਲਪ) ਦੀ ਵਰਤੋਂ ਦੇ ਅਧਾਰ ਤੇ ਵੱਖਰਾ ਹੋ ਸਕਦਾ ਹੈ। ਇਹ ਸਿਰਫ ਕੋਡ ਨੂੰ ਪ੍ਰਭਾਵਤ ਕਰੇਗਾ ਜੋ ਕਈ ਮੋਡੀਊਲਾਂ ਵਿੱਚ ਕਮਜ਼ੋਰ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦਾ ਹੈ।
ਪੂਰਨ (XCS-2777) ਨਾਲ ਲਿੰਕਰ ਗਲਤੀ ਜਦੋਂ RAM ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ ਇੱਕ ਪਤੇ 'ਤੇ ਇੱਕ ਵਸਤੂ ਨੂੰ ਸੰਪੂਰਨ ਬਣਾਇਆ ਗਿਆ ਹੈ ਅਤੇ ਅਣ-ਸ਼ੁਰੂਆਤ ਵਸਤੂਆਂ ਨੂੰ ਵੀ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਇੱਕ ਲਿੰਕਰ ਗਲਤੀ ਸ਼ੁਰੂ ਹੋ ਸਕਦੀ ਹੈ।
ਛੋਟੀ ਵੇਕ-ਅੱਪ ਆਈਡੀ (XCS-2775) ATA5700/2 ਡਿਵਾਈਸਾਂ ਲਈ, PHID0/1 ਰਜਿਸਟਰਾਂ ਨੂੰ 16 ਬਿੱਟ ਚੌੜੇ ਦੀ ਬਜਾਏ ਸਿਰਫ਼ 32 ਬਿੱਟ ਚੌੜੇ ਵਜੋਂ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਗਿਆ ਹੈ।
ਚਿੰਨ੍ਹ (XCS-2758) ਨੂੰ ਕਾਲ ਕਰਨ ਵੇਲੇ ਲਿੰਕਰ ਕਰੈਸ਼ ਲਿੰਕਰ ਕਰੈਸ਼ ਹੋ ਸਕਦਾ ਹੈ ਜੇਕਰ -merlad ਡਰਾਈਵਰ ਵਿਕਲਪ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਸਰੋਤ ਕੋਡ ਇੱਕ ਪ੍ਰਤੀਕ ਨੂੰ ਕਾਲ ਕਰਦਾ ਹੈ ਜੋ -Wl, -defsym ਲਿੰਕਰ ਵਿਕਲਪ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਗਿਆ ਹੈ।
ਗਲਤ ਸ਼ੁਰੂਆਤ (XCS-2679) ਡਾਟਾ ਮੈਮੋਰੀ ਵਿੱਚ ਕੁਝ ਗਲੋਬਲ/ਸਟੈਟਿਕ ਬਾਈਟ-ਆਕਾਰ ਦੀਆਂ ਵਸਤੂਆਂ ਲਈ ਸ਼ੁਰੂਆਤੀ ਮੁੱਲ ਕਿੱਥੇ ਰੱਖੇ ਗਏ ਹਨ ਅਤੇ ਰਨਟਾਈਮ 'ਤੇ ਵੇਰੀਏਬਲ ਕਿੱਥੇ ਐਕਸੈਸ ਕੀਤੇ ਜਾਣਗੇ, ਇਸ ਵਿੱਚ ਇੱਕ ਅੰਤਰ ਹੈ।
ਗਲਤ ਢੰਗ ਨਾਲ ਸ਼ੁਰੂ ਕੀਤਾ ਖਾਲੀ ਸੈੱਟ (XCS-2652) ਉਦਾਹਰਨਾਂ ਵਿੱਚ ਜਿੱਥੇ ਦੱਸੇ ਗਏ () ਦੁਆਰਾ ਪਰਿਵਰਤਨ ਲਈ ਇੱਕ ਵਿਸ਼ਾ ਸਤਰ ਵਿੱਚ ਉਹ ਸ਼ਾਮਲ ਹੁੰਦਾ ਹੈ ਜੋ ਘਾਤਕ ਫਾਰਮੈਟ ਵਿੱਚ ਇੱਕ ਫਲੋਟਿੰਗ-ਪੁਆਇੰਟ ਨੰਬਰ ਜਾਪਦਾ ਹੈ ਅਤੇ ਇੱਕ e ਅੱਖਰ ਤੋਂ ਬਾਅਦ ਇੱਕ ਅਚਾਨਕ ਅੱਖਰ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਖਾਲੀ ਪਤਾ, ਜੇਕਰ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਬਾਅਦ ਵਿੱਚ ਅੱਖਰ ਵੱਲ ਇਸ਼ਾਰਾ ਕਰੇਗਾ e ਅਤੇ e ਹੀ ਨਹੀਂ। ਸਾਬਕਾ ਲਈample: ਕਿਹਾ ("ਹੂਏ", ਖਾਲੀ); x ਅੱਖਰ ਵੱਲ ਇਸ਼ਾਰਾ ਕਰਨ ਦੇ ਨਤੀਜੇ ਵਜੋਂ ਖਾਲੀ ਹੋਵੇਗਾ।
ਖਰਾਬ ਅਸਿੱਧੇ ਫੰਕਸ਼ਨ ਕਾਲਾਂ (XCS-2628) ਕੁਝ ਸਥਿਤੀਆਂ ਵਿੱਚ, ਇੱਕ ਢਾਂਚੇ ਦੇ ਹਿੱਸੇ ਵਜੋਂ ਸਟੋਰ ਕੀਤੇ ਫੰਕਸ਼ਨ ਪੁਆਇੰਟਰ ਦੁਆਰਾ ਕੀਤੀਆਂ ਫੰਕਸ਼ਨ ਕਾਲਾਂ ਅਸਫਲ ਹੋ ਸਕਦੀਆਂ ਹਨ।
strtof ਹੈਕਸਾਡੈਸੀਮਲ ਫਲੋਟਸ (XCS-2626) ਲਈ ਜ਼ੀਰੋ ਵਾਪਸ ਕਰਦਾ ਹੈ ਲਾਇਬ੍ਰੇਰੀ ਫੰਕਸ਼ਨ strtof () et al ਅਤੇ scanf () et al, ਹਮੇਸ਼ਾ ਇੱਕ ਹੈਕਸਾਡੈਸੀਮਲ ਫਲੋਟਿੰਗ-ਪੁਆਇੰਟ ਸੰਖਿਆ ਨੂੰ ਬਦਲਦਾ ਹੈ ਜੋ ਕਿਸੇ ਘਾਤਕ ਨੂੰ ਨਿਸ਼ਚਿਤ ਨਹੀਂ ਕਰਦਾ ਹੈ
ਜ਼ੀਰੋ ਸਾਬਕਾ ਲਈample: ਸਟੇਟਰ ("ਉੱਲ", ਅਤੇ ਖਾਲੀ); ਮੁੱਲ 0 ਵਾਪਸ ਕਰੇਗਾ, 1 ਨਹੀਂ।
ਗਲਤ ਸਟੈਕ ਸਲਾਹਕਾਰ ਮੈਸੇਜਿੰਗ (XCS-2542, XCS-2541) ਕੁਝ ਸਥਿਤੀਆਂ ਵਿੱਚ, ਵਰਤੇ ਗਏ ਦੁਹਰਾਓ ਜਾਂ ਅਨਿਸ਼ਚਿਤ ਸਟੈਕ (ਸੰਭਵ ਤੌਰ 'ਤੇ alloca() ਦੀ ਵਰਤੋਂ ਦੁਆਰਾ) ਦੇ ਸਬੰਧ ਵਿੱਚ ਸਟੈਕ ਸਲਾਹਕਾਰ ਚੇਤਾਵਨੀ ਨਹੀਂ ਛੱਡੀ ਜਾਂਦੀ ਹੈ।
ਡੁਪਲੀਕੇਟ ਇੰਟਰੱਪਟ ਕੋਡ (XCS-2421) ਨਾਲ ਅਸਫਲਤਾ ਜਿੱਥੇ ਇੱਕ ਤੋਂ ਵੱਧ ਇੰਟਰੱਪਟ ਫੰਕਸ਼ਨ ਇੱਕੋ ਬਾਡੀ ਹੈ, ਕੰਪਾਈਲਰ ਕੋਲ ਇੱਕ ਇੰਟਰੱਪਟ ਫੰਕਸ਼ਨ ਲਈ ਆਉਟਪੁੱਟ ਹੋ ਸਕਦੀ ਹੈ ਦੂਜੇ ਨੂੰ ਕਾਲ ਕਰੋ। ਇਸ ਦੇ ਨਤੀਜੇ ਵਜੋਂ ਸਾਰੇ ਕਾਲ-ਕਲੋਬਰਡ ਰਜਿਸਟਰਾਂ ਨੂੰ ਬੇਲੋੜੀ ਸੁਰੱਖਿਅਤ ਕੀਤਾ ਜਾਵੇਗਾ, ਅਤੇ ਮੌਜੂਦਾ ਇੰਟਰੱਪਟ ਹੈਂਡਲਰ ਦੇ ਐਪੀਲੋਗ ਦੇ ਚੱਲਣ ਤੋਂ ਪਹਿਲਾਂ ਹੀ ਇੰਟਰਪਟਸ ਸਮਰੱਥ ਹੋ ਜਾਣਗੇ, ਜਿਸ ਨਾਲ ਕੋਡ ਅਸਫਲ ਹੋ ਸਕਦਾ ਹੈ।
ਕੰਸਟ ਆਬਜੈਕਟ ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਵਿੱਚ ਨਹੀਂ ਹਨ (XCS-2408) avrxmega3 ਅਤੇ avertins ਪ੍ਰੋਜੈਕਟਾਂ ਲਈ undealized const ਵਸਤੂਆਂ ਨੂੰ ਡੇਟਾ ਮੈਮੋਰੀ ਵਿੱਚ ਰੱਖਿਆ ਜਾਂਦਾ ਹੈ, ਭਾਵੇਂ ਕਿ ਇੱਕ ਚੇਤਾਵਨੀ ਸੁਝਾਅ ਦਿੰਦੀ ਹੈ ਕਿ ਉਹਨਾਂ ਨੂੰ ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਵਿੱਚ ਰੱਖਿਆ ਗਿਆ ਹੈ। ਇਹ ਉਹਨਾਂ ਡਿਵਾਈਸਾਂ ਨੂੰ ਪ੍ਰਭਾਵਤ ਨਹੀਂ ਕਰੇਗਾ ਜਿਹਨਾਂ ਕੋਲ ਡੇਟਾ ਮੈਮੋਰੀ ਸਪੇਸ ਵਿੱਚ ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਮੈਪ ਨਹੀਂ ਕੀਤੀ ਗਈ ਹੈ, ਅਤੇ ਨਾ ਹੀ ਇਹ ਕਿਸੇ ਵੀ ਆਬਜੈਕਟ ਨੂੰ ਪ੍ਰਭਾਵਤ ਕਰੇਗਾ ਜੋ ਸ਼ੁਰੂਆਤੀ ਹੈ।
ਅਵੈਧ DFP ਮਾਰਗ (XCS-2376) ਨਾਲ ਖਰਾਬ ਆਉਟਪੁੱਟ ਜੇਕਰ ਕੰਪਾਈਲਰ ਨੂੰ ਇੱਕ ਅਵੈਧ DFP ਮਾਰਗ ਅਤੇ ਇੱਕ 'ਸਪੈਕ' ਨਾਲ ਬੁਲਾਇਆ ਗਿਆ ਹੈ file ਚੁਣੀ ਗਈ ਡਿਵਾਈਸ ਲਈ ਮੌਜੂਦ ਹੈ, ਕੰਪਾਈਲਰ ਗੁੰਮ ਹੋਏ ਡਿਵਾਈਸ ਫੈਮਿਲੀ ਪੈਕ ਦੀ ਰਿਪੋਰਟ ਨਹੀਂ ਕਰ ਰਿਹਾ ਹੈ ਅਤੇ ਇਸ ਦੀ ਬਜਾਏ 'ਸਪੈਕ' ਨੂੰ ਚੁਣ ਰਿਹਾ ਹੈ। file, ਜੋ ਫਿਰ ਇੱਕ ਅਵੈਧ ਆਉਟਪੁੱਟ ਦੀ ਅਗਵਾਈ ਕਰ ਸਕਦਾ ਹੈ। 'ਵਿਸ਼ੇਸ਼' files ਵੰਡੇ ਗਏ DFPs ਨਾਲ ਅੱਪ-ਟੂ-ਡੇਟ ਨਹੀਂ ਹੋ ਸਕਦੇ ਹਨ ਅਤੇ ਸਿਰਫ਼ ਅੰਦਰੂਨੀ ਕੰਪਾਈਲਰ ਟੈਸਟਿੰਗ ਲਈ ਵਰਤਣ ਲਈ ਸਨ।
ਮੈਮੋਰੀ ਓਵਰਲੈਪ ਦਾ ਪਤਾ ਨਹੀਂ ਲੱਗਾ (XCS-1966) ਕੰਪਾਈਲਰ ਸੈਕਸ਼ਨ () ਨਿਰਧਾਰਕ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਕਿਸੇ ਐਡਰੈੱਸ (ਤੇ () ਰਾਹੀਂ) ਅਤੇ ਹੋਰ ਆਬਜੈਕਟਾਂ ਦੀ ਮੈਮੋਰੀ ਓਵਰਲੈਪ ਦਾ ਪਤਾ ਨਹੀਂ ਲਗਾ ਰਿਹਾ ਹੈ ਅਤੇ ਜੋ ਉਸੇ ਪਤੇ ਨਾਲ ਜੁੜੇ ਹੋਏ ਹਨ।
ਲਾਇਬ੍ਰੇਰੀ ਫੰਕਸ਼ਨਾਂ ਅਤੇ _meme (XCS-1763) ਵਿੱਚ ਅਸਫਲਤਾ _memo ਐਡਰੈੱਸ ਸਪੇਸ ਵਿੱਚ ਇੱਕ ਆਰਗੂਮੈਂਟ ਦੇ ਨਾਲ ਲਿਮਬਿਕ ਫਲੋਟ ਫੰਕਸ਼ਨ ਫੇਲ ਹੋ ਸਕਦਾ ਹੈ। ਨੋਟ ਕਰੋ ਕਿ ਲਾਇਬ੍ਰੇਰੀ ਰੁਟੀਨ ਨੂੰ ਕੁਝ C ਓਪਰੇਟਰਾਂ ਤੋਂ ਬੁਲਾਇਆ ਜਾਂਦਾ ਹੈ, ਇਸ ਲਈ, ਸਾਬਕਾ ਲਈampਲੇ, ਹੇਠ ਦਿੱਤੇ ਕੋਡ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕੀਤਾ ਗਿਆ ਹੈ: ਵਾਪਸੀ regFloatVar > memxFloatVar;
ਸੀਮਤ ਲਿਮਬਿਕ ਲਾਗੂਕਰਨ (AVRTC-731) ATTiny4/5/9/10/20/40 ਉਤਪਾਦਾਂ ਲਈ, limbic ਵਿੱਚ ਮਿਆਰੀ C/Math ਲਾਇਬ੍ਰੇਰੀ ਲਾਗੂ ਕਰਨਾ ਬਹੁਤ ਸੀਮਤ ਹੈ ਜਾਂ ਮੌਜੂਦ ਨਹੀਂ ਹੈ।
ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਸੀਮਾਵਾਂ (AVRTC-732) 128 kb ਤੋਂ ਵੱਧ ਪ੍ਰੋਗਰਾਮ ਮੈਮੋਰੀ ਚਿੱਤਰ ਟੂਲਚੇਨ ਦੁਆਰਾ ਸਮਰਥਿਤ ਹਨ; ਹਾਲਾਂਕਿ, ਲਿੰਕਰ ਅਧੂਰੇ ਛੱਡਣ ਦੀਆਂ ਉਦਾਹਰਣਾਂ ਹਨ, ਬਿਨਾਂ ਕਿਸੇ ਢਿੱਲ ਦੇ ਅਤੇ ਲੋੜੀਂਦੇ ਫੰਕਸ਼ਨ ਸਟੱਬ ਬਣਾਉਣ ਦੀ ਬਜਾਏ ਇੱਕ ਮਦਦਗਾਰ ਗਲਤੀ ਸੰਦੇਸ਼ ਦੇ ਬਿਨਾਂ ਜਦੋਂ -relax ਵਿਕਲਪ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।
ਨਾਮ ਸਪੇਸ ਸੀਮਾਵਾਂ (AVRTC-733) ਨਾਮ ਦਿੱਤੇ ਐਡਰੈੱਸ ਸਪੇਸ ਟੂਲਚੇਨ ਦੁਆਰਾ ਸਮਰਥਿਤ ਹਨ, ਉਪਭੋਗਤਾ ਦੇ ਗਾਈਡ ਸੈਕਸ਼ਨ ਸਪੈਸ਼ਲ ਟਾਈਪ ਕੁਆਲੀਫਾਇਰ ਵਿੱਚ ਦੱਸੀਆਂ ਗਈਆਂ ਸੀਮਾਵਾਂ ਦੇ ਅਧੀਨ।
ਸਮਾਂ ਖੇਤਰ ਦ ਲਾਇਬ੍ਰੇਰੀ ਫੰਕਸ਼ਨ GMT ਨੂੰ ਮੰਨਦੇ ਹਨ ਅਤੇ ਸਥਾਨਕ ਸਮਾਂ ਖੇਤਰਾਂ ਦਾ ਸਮਰਥਨ ਨਹੀਂ ਕਰਦੇ ਹਨ, ਇਸ ਤਰ੍ਹਾਂ ਸਥਾਨਕ ਸਮਾਂ () gummite (), ਸਾਬਕਾ ਲਈ ਉਸੇ ਸਮੇਂ ਨੂੰ ਵਾਪਸ ਕਰੇਗਾample.
ਗਾਹਕ ਸਹਾਇਤਾ
file:///Applications/microehipA VR ਲਈ /xc8/v 2 .40/docs/Read me_X C 8_। htm
ਦਸਤਾਵੇਜ਼ / ਸਰੋਤ
![]() |
ਮਾਈਕ੍ਰੋਚਿੱਪ MPLAB XC8 C ਕੰਪਾਈਲਰ ਸਾਫਟਵੇਅਰ [pdf] ਮਾਲਕ ਦਾ ਮੈਨੂਅਲ MPLAB XC8 C, MPLAB XC8 C ਕੰਪਾਈਲਰ ਸਾਫਟਵੇਅਰ, ਕੰਪਾਈਲਰ ਸਾਫਟਵੇਅਰ, ਸਾਫਟਵੇਅਰ |