GCC는 switch를 비트셋, 점프 테이블, 비교 트리로 변환하며, 하나의 switch 안에서도 구간별로 서로 다른 전략을 조합함 점프 테이블이 유리한지는 단순한 case 개수가 아니라 필요한 비교 횟수 대비 테이블 크기로 판단하며, 속도 최적화와 크기 최적화에 서로 다른 기준을 적용함 같은 코드로 분기하는 연속된 case는 범위 비교로 합쳐지고, 불연속 값도 범위와 분기 목적지 수가 조건을 충족하면 비트 테스트로 처리할 수 있음 비트셋과 점프 테이블 후보는 동적 계획법으로 묶은 뒤 이득 여부를 검사하며, 변환하지 못한 부분은 비교 기반 이진 결정 트리로 처리함 분기 확률은 결정 트리 구성에 반영되지만, 희소 값 예제에서 입력을 8로 나누어 단순화하는 변환까지 GCC가 찾아내지는 못함 예제로 보는 변환 전략 분석은 GCC에 초점을 맞추며, 별도 표시가 없는 예제는 -O3로 컴파일함 비트셋 변환을 제외한 최적화는 Clang에도 적용됨 인용한 GCC 코드는 간결하게 보이도록 일부 수정하고 일부 단언문을 제거한 형태임 이전 글에서 살펴본 비교 결정 트리 외에도 여러 switch 구현 방식이 있음 서로 다른 함수를 호출하는 case 0부터 case 4까지는 점프 테이블로 변환됨 입력 범위를 검사한 뒤 테이블에 저장된 주소로 간접 점프함 case 97부터 case 101까지처럼 상수만큼 이동한 값도 입력에서 97을 빼는 방식으로 같은 구조를 사용함 값이 희소해질수록 점프 테이블의 이점이 줄어들며, 실험에서는 case당 약 8개 엔트리 부근에서 전략이 달라짐 0, 7, 14, 21, 34는 빈 위치를 기본 분기로 채운 점프 테이블로 변환됨 0, 8, 16, 24, 40은 비교 트리로 변환됨 두 번째 예제에서 입력을 8로 나누어 단순화하는 변환은 GCC가 찾아내지 못함 일부 구간과 공통 분기 목적지 처리 밀집된 부분집합만 점프 테이블로 만드는 것도 가능함 case 1부터 case 5까지와 case 100이 함께 있으면, 1~5는 점프 테이블로 처리하고 100은 별도 비교 분기로 처리함 같은 함수를 호출하는 연속된 case 는 범위로 묶어 비교 횟수를 줄임 0~3, 21~24, 42~45, 63~66, 84~87의 다섯 구간이 각각 같은 함수를 호출하는 예제에는 총 20개의 case가 있음 점프 테이블은 88개 엔트리가 필요하지만, 각 구간은 비교 두 번으로 처리할 수 있어 비교 횟수는 총 10회임 88 < 20 × ...
GCC가 switch를 저수준 코드로 변환하는 방법
4 days ago
13
Related
Show GN: 고등학생 700명이 Isaac Sim에서 로봇에게 걷는 법을 가르친 기록
2 hours ago
3
Lemmings CSS 애니메이션
3 hours ago
2
AI와 개발한 1년 — 사라진 건 없고, 달라진 건 많다
3 hours ago
2
Show GN: getdeck - 슬라이드 레이아웃을 내 템플릿으로 저장하고 웹에서 고치는 서비스
5 hours ago
7
Show HN: 10년간의 리버스 엔지니어링 끝에 DOS Wing Commander 협동 플레이 구현
5 hours ago
7
Show GN: 아파트 인사이트 - 주변 시설·가격·도보·일조를 살펴보는 3D 지도
6 hours ago
7
당신의 암호학 음모론은 틀렸다
6 hours ago
3
Tips
click
Trending
Popular
[ET특징주]펩트론, 일라이릴리 기술평가 종료 소식에 하락세
4 weeks ago
549
[美특징주]캠벨·제너럴밀스 등 강세…기술주 이탈해 소비재주로
2 weeks ago
546
[美특징주]레나, 버크셔해서웨이가 지분 매입 소식에 상승
4 weeks ago
402
나홍진 감독 ‘호프’ 5관왕…최우수작품상=‘세계의 주인’ (종합)[2026 부일영화상]
4 weeks ago
381
[美특징주]휴렛패커드, AI 서버 신제품 공개에 주가 3%↑…신고가 경신
4 weeks ago
379
박정수, 230억 건물주다운 노후 플랜?…보증금 22억·월 500만원에 “마음에 들어”
4 weeks ago
379
[美특징주]마이크론, 메모리 호황 기대에도 4%↓…오픈AI 우려에 낙폭 확대
3 weeks ago
372
[美특징주]오픈AI관련株, 매출 기대치 하회에 동반 급락…코어위브 8%↓
3 weeks ago
370
[마켓톡스]금리 상승·AI주 선호에 밀린 소형주…매수 기회 올까-BTIG
3 weeks ago
368
한가인 “연정훈과 결혼 이틀 전 ‘못 하겠다’ 선언”…촬영장까지 찾아왔다
4 weeks ago
367
© Clint's Theme Park 2026. All rights are reserved

![[ET특징주]펩트론, 일라이릴리 기술평가 종료 소식에 하락세](https://img.etnews.com/news/article/2026/10/08/news-p.v1.20261008.b94f10395e00410b8d2a494b9b836893_P1.gif)
![[美특징주]캠벨·제너럴밀스 등 강세…기술주 이탈해 소비재주로](https://image.edaily.co.kr/images/content/defaultimg.jpg)
![나홍진 감독 ‘호프’ 5관왕…최우수작품상=‘세계의 주인’ (종합)[2026 부일영화상]](https://dimg.donga.com/wps/SPORTS/IMAGE/2026/10/07/134805542.1.jpg)


English (US) ·