-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!fu-berlin.de!postnews.google.com!v8g200
0yqe.googlegroups.com!not-for-mail
From: shg <s...@g...com>
Newsgroups: pl.misc.elektronika
Subject: Re: winavr problemik
Date: Wed, 18 Aug 2010 23:19:33 -0700 (PDT)
Organization: http://groups.google.com
Lines: 40
Message-ID: <3...@v...googlegroups.com>
References: <i4i9si$bjb$1@opal.futuro.pl>
NNTP-Posting-Host: 157.158.182.53
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
X-Trace: posting.google.com 1282198773 18134 127.0.0.1 (19 Aug 2010 06:19:33 GMT)
X-Complaints-To: g...@g...com
NNTP-Posting-Date: Thu, 19 Aug 2010 06:19:33 +0000 (UTC)
Complaints-To: g...@g...com
Injection-Info: v8g2000yqe.googlegroups.com; posting-host=157.158.182.53;
posting-account=I-P_YQoAAAA5OYA-ULbU61NLL7UHiy4J
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.3) Gecko/20100401
Firefox/3.6.3,gzip(gfe)
Xref: news-archive.icm.edu.pl pl.misc.elektronika:593907
[ ukryj nagłówki ]On 19 Sie, 05:53, "newxmega" <m...@m...mm> wrote:
> Mam dużo "swich" -ów lub
> if
> elsif
> elsif
> ..
>
> tak po kilkadziesiąt.
>
> Co tu zrobić żeby winavr używał indirect jumpów zamiast zamieniał swich na
> if wlsif.
>
> To bez sensu żeby robić
> cpi stała
> cpi stał
>
> i tak 60 razy.
>
> Mam małe procedurki, a indirecty by mi przyspieszyły kod.
Tablice skoków są tworzone chyba tylko z bloków switch.
Do tego wartości przy case muszą spełniać odpowiednie warunki, tzn.
musi być ich dostatecznie dużo i muszą być ułożone po kolei (wartości
jako zbiór, w kodzie już kolejność występowania jest dowolna).
Jest gdzieś do tego jakaś reguła, ale nie jestem w stanie jej znaleźć.
O ile pamiętam (ale to mogło być akurat w innym kompilatorze) to
dopuszczalne są niewielkie dziury w wartościach, była na to jakaś
matematyczna formułka, typu ilość wartości w jednym ciągu / szerokość
zakresu > jakaś stała, do tego jeszcze musiała być odpowiednio duża
ilość przypadków, ale to akurat u Ciebie nie jest problemem, to było
raczej w okolicy 5. Jeżeli się zgadzało to switch był zamieniany na
tablicę skoków.
Coś znalazłem, może się przyda, nie za bardzo mam czas żeby
przeczytać: http://ivoras.sharanet.org/papers/switch-complexity.
pdf
Następne wpisy z tego wątku
- 19.08.10 18:30 newxmega
- 19.08.10 18:51 newxmega
- 19.08.10 19:11 Zbych
- 19.08.10 19:36 newxmega
- 19.08.10 19:53 newxmega
Najnowsze wątki z tej grupy
- ciekawy układ magnetofonu
- Mikroskop 3D
- Jak być bezpiecznym z Li-Ion?
- Szukam monitora HDMI ok. 4"
- Obcinaczki z łapaczem
- termostat do lodowki
- SEP 1 kV E
- Aku LiPo źródło dostaw - ktoś poleci ?
- starość nie radość
- Ataki hakerskie
- Akumulatorki Ni-MH AA i AAA Green Cell
- Dławik CM
- JDG i utylizacja sprzetu
- Identyfikacja układ SO8 w sterowniku migających światełek choinkowych
- DS1813-10 się psuje
Najnowsze wątki
- 2024-12-23 Riga => Specjalista ds. public relations <=
- 2024-12-23 Łódź => Specjalista ds. Sprzedaży <=
- 2024-12-23 Kraków => International Freight Forwarder <=
- 2024-12-23 Co nalezy do Cinkciarza, a co do Conotoxia ?
- 2024-12-23 Poznań => Key Account Manager <=
- 2024-12-23 Warszawa => Presales / Inżynier Wsparcia Technicznego IT <=
- 2024-12-23 Rzeszów => Spedytor Międzynarodowy <=
- 2024-12-23 Warszawa => Infrastructure Automation Engineer <=
- 2024-12-23 Białystok => Analityk w dziale Trade Development (doświadczenie z Po
- 2024-12-23 Warszawa => Site Reliability Engineer (SRE) <=
- 2024-12-23 Warszawa => DevOps Engineer <=
- 2024-12-23 Warszawa => Senior Account Manager <=
- 2024-12-23 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-12-23 Katowice => Administrator IT - Wirtualizacja i Konteneryzacja <=
- 2024-12-23 Mińsk Mazowiecki => Spedytor Międzynarodowy <=