[ CnUnix ] in KIDS 글 쓴 이(By): HellCat ((void*)0) 날 짜 (Date): 1994년02월09일(수) 03시09분06초 KST 제 목(Title): 참고 음..제목을 잘못 골랐네요. 근데. 어째서 제가 기분이 나쁘셨다고 생각했을까 신기.. 어쨌던..제가 옳다고 생각되는 룰은 ++x + ++y + ++z 좀더 clear 하게 (++x + ++y ) + ++z 의 경우 제가 가지고 있는 GNU gcc 나 또는 골통품이지만 SunOS 4.1.3 의 cc 는 ld [%fp-24],%o0 add %o0,1,%o1 mov %o1,%o0 st %o0,[%fp-24] ld [%fp-28],%o2 add %o2,1,%o1 mov %o1,%o2 st %o2,[%fp-28] add %o0,%o2,%o0 ld [%fp-32],%o2 add %o2,1,%o1 mov %o1,%o2 st %o2,[%fp-32] add %o0,%o2,%o0 st %o0,[%fp-20] 이런 형식...즉 제가 옳다고 생각하는 순서를 보여 주고 있어요. 그리고 참고로 하면 MSC 의 경우는 컴파일러겸 계산기라고 하면 되겠네요. 옵티마이즈 옵션 넣으면 파싱하면서 심플 익스프레션경우 아예 계산을 해나가면서 익스프레션을 줄여 나가는 작전 같은데.. 한가지 더하면...만약 제가 콤파일러 프로젝트를 내고 누가 파서 만들고 코드제너레이터 만들때 (++x + ++y) + ++z 가 ++x, ++y, ++z, x + y + z 로 파싱 이밸류에이트 된다면 (물론답은 같겠지만) 글쎄요..어떨지.. |